diff options
author | Philipp Hörist <philipp@hoerist.com> | 2019-12-21 13:35:51 +0300 |
---|---|---|
committer | Philipp Hörist <philipp@hoerist.com> | 2019-12-21 13:35:51 +0300 |
commit | c328063fa1a40884bac7b71f1ba08e4f49741a16 (patch) | |
tree | b50d2b1e67eada2f7196576573cced275ab6be1c /nbxmpp/structs.py | |
parent | 0f2fa095283bd467ecfc54877fc27f7cefb65db8 (diff) |
DiscoInfo: Add propertys for http upload
Diffstat (limited to 'nbxmpp/structs.py')
-rw-r--r-- | nbxmpp/structs.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/nbxmpp/structs.py b/nbxmpp/structs.py index 252ef3f..63ad950 100644 --- a/nbxmpp/structs.py +++ b/nbxmpp/structs.py @@ -27,6 +27,7 @@ from nbxmpp.protocol import NS_MUC from nbxmpp.protocol import NS_MUC_INFO from nbxmpp.protocol import NS_CLIENT from nbxmpp.protocol import NS_XHTML +from nbxmpp.protocol import NS_HTTPUPLOAD_0 from nbxmpp.protocol import Protocol from nbxmpp.const import MessageType from nbxmpp.const import AvatarState @@ -225,6 +226,10 @@ class DiscoInfo(namedtuple('DiscoInfo', 'stanza identities features dataforms ti return self.has_mam_1 or self.has_mam_2 @property + def has_httpupload(self): + return NS_HTTPUPLOAD_0 in self.features + + @property def is_muc(self): for identity in self.identities: if identity.category == 'conference': @@ -332,6 +337,14 @@ class DiscoInfo(namedtuple('DiscoInfo', 'stanza identities features dataforms ti def muc_is_unsecured(self): return 'muc_unsecured' in self.features + @property + def httpupload_max_file_size(self): + size = self.get_field_value(NS_HTTPUPLOAD_0, 'max-file-size') + try: + return float(size) + except Exception: + return None + class DiscoIdentity(namedtuple('DiscoIdentity', 'category type name lang')): |