diff options
| author | Rapptz <[email protected]> | 2015-11-16 21:00:39 -0500 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2015-11-16 21:02:23 -0500 |
| commit | cc596542161842dcd01f86c55cdbc23074edbf9d (patch) | |
| tree | f134fa29ad910fe68d6469b6572946be9e69748a | |
| parent | Documentation fixes for Client.logs_from (diff) | |
| download | discord.py-cc596542161842dcd01f86c55cdbc23074edbf9d.tar.xz discord.py-cc596542161842dcd01f86c55cdbc23074edbf9d.zip | |
Add Client.get_all_channels and Client.get_all_members
| -rw-r--r-- | discord/client.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/discord/client.py b/discord/client.py index 3b679f44..7b1dc6ac 100644 --- a/discord/client.py +++ b/discord/client.py @@ -816,6 +816,38 @@ class Client(object): self._is_logged_in = False log.debug(request_logging_format.format(response=response)) + def get_all_channels(self): + """Returns a generator with every :class:`Channel` the client can 'access'. + + This is equivalent to: :: + + for server in client.servers: + for channel in server.channels: + yield channel + + Note that just because you receive a :class:`Channel` does not mean that + you can communicate in said channel. :meth:`Channel.permissions_for` should + be used for that. + """ + + for server in self.servers: + for channel in server.channels: + yield channel + + def get_all_members(self): + """Returns a generator with every :class:`Member` the client can see. + + This is equivalent to: :: + + for server in client.servers: + for member in server.members: + yield member + + """ + for server in self.servers: + for member in server.members: + yield member + def logs_from(self, channel, limit=100, before=None, after=None): """A generator that obtains logs from a specified channel. |