aboutsummaryrefslogtreecommitdiff
path: root/discord
diff options
context:
space:
mode:
authorSteven Berler <[email protected]>2015-12-27 01:14:16 -0800
committerSteven Berler <[email protected]>2015-12-27 01:16:52 -0800
commit57c3363119670e84d719d0703b672cb0743b252a (patch)
tree3630192f32081c0a57e45056e2eefcc98040b3d2 /discord
parentAdd missing argument in _rate_limit_helper (diff)
downloaddiscord.py-57c3363119670e84d719d0703b672cb0743b252a.tar.xz
discord.py-57c3363119670e84d719d0703b672cb0743b252a.zip
fix broken ip and port in voice client
Also added debug logging to make it easier to debug errors in how the initial packet is parsed.
Diffstat (limited to 'discord')
-rw-r--r--discord/voice_client.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/discord/voice_client.py b/discord/voice_client.py
index ecbc4ee4..f2444130 100644
--- a/discord/voice_client.py
+++ b/discord/voice_client.py
@@ -210,16 +210,18 @@ class VoiceClient:
struct.pack_into('>I', packet, 0, self.ssrc)
self.socket.sendto(packet, (self.endpoint_ip, self.voice_port))
recv = yield from self.loop.sock_recv(self.socket, 70)
- self.ip = []
+ log.debug('received packet in initial_connection: {}'.format(recv))
+ ip = []
for x in range(4, len(recv)):
val = recv[x]
if val == 0:
break
- self.ip.append(str(val))
+ ip.append(chr(val))
- self.ip = '.'.join(self.ip)
- self.port = recv[len(recv) - 2] << 0 | recv[len(recv) - 1] << 1
+ self.ip = ''.join(ip)
+ self.port = recv[len(recv) - 2] | recv[len(recv) - 1] << 8
+ log.debug('detected ip: {} port: {}'.format(self.ip, self.port))
payload = {
'op': 1,