aboutsummaryrefslogtreecommitdiff
path: root/discord/state.py
diff options
context:
space:
mode:
authorRapptz <[email protected]>2017-05-20 15:19:47 -0400
committerRapptz <[email protected]>2017-05-20 15:19:47 -0400
commit3436792614d6478e25e43a717c4f393a16dd43bb (patch)
tree652c249e83be6a43ecf50d17f8ea6906c3128b65 /discord/state.py
parentRewrite Client.run yet again. (diff)
downloaddiscord.py-3436792614d6478e25e43a717c4f393a16dd43bb.tar.xz
discord.py-3436792614d6478e25e43a717c4f393a16dd43bb.zip
Allow setting a presence upon logging in.
Diffstat (limited to 'discord/state.py')
-rw-r--r--discord/state.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/discord/state.py b/discord/state.py
index 0f41769b..1871055f 100644
--- a/discord/state.py
+++ b/discord/state.py
@@ -32,7 +32,7 @@ from .relationship import Relationship
from .channel import *
from .member import Member
from .role import Role
-from .enums import ChannelType, try_enum
+from .enums import ChannelType, try_enum, Status
from .calls import GroupCall
from . import utils, compat
@@ -64,6 +64,21 @@ class ConnectionState:
self._ready_task = None
self._fetch_offline = options.get('fetch_offline_members', True)
self._listeners = []
+
+ game = options.get('game', None)
+ if game:
+ game = dict(game)
+
+ status = options.get('status', None)
+ if status:
+ if status is Status.offline:
+ status = 'invisible'
+ else:
+ status = str(status)
+
+ self._game = game
+ self._status = status
+
self.clear()
def clear(self):