FAForever / FAForever/server

Add Discord voice chat autoconnection

オープン
#308 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Python
スター
72
フォーク
84
平均マージ
5時間 11分
マージ済み PR(30日)
1

説明

Hi,
I think autoconnection can be done with Discord API (using discord.py)

What can be used:
[create_channel](https://discordpy.readthedocs.io/en/latest/api.html?highlight=voice_channel#discord.Client.create_channel)
[Permissions.connect](https://discordpy.readthedocs.io/en/latest/api.html?highlight=voice_channel#discord.Permissions.connect)
[move_member](https://discordpy.readthedocs.io/en/latest/api.html?highlight=move_member#discord.Client.move_member)
[delete_channel](https://discordpy.readthedocs.io/en/latest/api.html?highlight=voice_channel#discord.Client.delete_channel)

so it's basically something like this (i'm not good at python)

```python

everyone_perms = discord.PermissionOverwrite(connect=False)
player_perms = discord.PermissionOverwrite(connect=True)

everyone = discord.ChannelPermissions(target=server.default_role, overwrite=everyone_perms)
player1 = discord.ChannelPermissions(target=server.player1id, overwrite=player_perms)
# ... all players are from one team
player6 = discord.ChannelPermissions(target=server.player6id, overwrite=player_perms)
channel = await client.create_channel(server, 'game_number', everyone, player1, ... , player6)

move_member(server.player1id, channel);
# ...
move_member(server.player6id, channel);

# after the game have ended
delete_channel(channel)

```

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。