def _ws_loop(self, gateway):
self._status = Status.CONNECTING
self._ws = create_connection(gateway)
self._seq = 0
self._send(PacketBuilder.identify(self._client.api_client.token))
initial_packet = self._recv()
self._on_initial_packet(initial_packet)
self._on_packet(initial_packet)
try:
while True:
packet = self._recv()
self._on_packet(packet)
finally:
if self._heartbeat_greenlet:
self._heartbeat_greenlet.kill()
self._ws_greenlet = None
评论列表
文章目录