FAForever / FAForever/server

Add Discord voice chat autoconnection

Offen
#308 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
72
Forks
84
Ø Merge
5 Std. 11 Min.
Gemergte PRs (30 T.)
1

Beschreibung

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)

```

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.