242 Commits

Author SHA1 Message Date
mathieui
c63e9a32b9 XEP-0359: Unique and Stable Stanza IDs
(was partially supported in places before)
2020-12-04 19:14:30 +01:00
mathieui
58c3579f74 XEP-0422: Message Fastening 2020-12-04 19:13:55 +01:00
mathieui
6c52843d71 XEP-0363: Add 0363 to the extension list 2020-12-04 18:55:55 +01:00
mathieui
70cf35e9bf XEP-0444: Fix session_bind()
wrong method called: remove_feature instead of del_feature
2020-12-04 18:34:27 +01:00
Emmanuel Gil Peyrot
203628d707 XEP-0353: Jingle Message Initiation 2020-12-04 12:38:59 +01:00
mathieui
4da1c8573e XEP-0045: Register the missing invite/decline element 2020-12-04 00:22:22 +01:00
mathieui
fa7e33110f XEP-0045: Misc small fixes. 2020-12-03 23:28:27 +01:00
mathieui
7033bc0061 XEP-0045: Better invitation handling 2020-12-03 23:28:27 +01:00
mathieui
98b9a6f9e3 XEP-0045: Remove "self" returns from stanza methods 2020-12-03 23:28:27 +01:00
mathieui
de548fbcce XEP-0045: Add status_codes interface to the MUC element 2020-12-03 23:28:27 +01:00
mathieui
350f85a8d1 XEP-0403: MIX-Presence 2020-12-02 19:17:33 +01:00
mathieui
b62ea49de3 XEP-0404: MIX-Anon: JID hidden channels
(not found)
2020-12-02 19:17:33 +01:00
mathieui
bdc12c00c6 XEP-0405: MIX-PAM 2020-12-02 19:17:33 +01:00
mathieui
51cc459bd0 XEP-0369: MIX-Core 2020-12-02 19:17:33 +01:00
mathieui
b27510f05b XEP-0047: Fix the max sequence number
The max seq allowed according to the XEP is 65535, therefore we must
modulo using 65536 to allow that value.
2020-12-01 20:13:34 +01:00
mathieui
c3a6352a6b Merge branch 'fix-xep_0115-disco-component' into 'master'
Fix 'from' attribute missing for ComponentXMPP Disco IQ

Closes #3455

See merge request poezio/slixmpp!60
2020-11-27 20:06:53 +01:00
mathieui
a245ba54bd Remove protoxep_occupantid
And fix some minor details in 0421 plugin.
2020-11-27 20:02:03 +01:00
mathieui
ddc3974d1b Update protoxep_reactions to XEP-0444 2020-11-27 19:44:13 +01:00
mathieui
a9a7bdc6c3 XEP-0045: update methods for asyncio & stanza, typing
- This rewrites most of the stuff in the plugin by using the newly added
  elements instead of raw ElementTree stuff with hardcoded namespaces.
- Adds methods for affiliation/roles
- Adds some type hints
- Fix many cases where the call would simply not work since slixmpp
  exists (and break the API but it was already broken ¯\_(ツ)_/¯)
2020-11-26 20:47:21 +01:00
mathieui
fe68d19f91 XEP-0045: register the new elements & reformat init 2020-11-22 18:11:18 +01:00
mathieui
fe46643f2f XEP-0045: add more stanza elements 2020-11-22 18:11:18 +01:00
Maxime Buquet
0b38eeaa4a Merge branch 'xep-0363-callback-fix' into 'master'
XEP-0363 fix: call callback when receiving the upload slot.

See merge request poezio/slixmpp!58
2020-10-01 13:52:28 +02:00
aearil
f90713cb9e Fix 'from' attribute missing for ComponentXMPP Disco IQ
Fixes #3455

This reuses the 'to' attribute of the received presence as a 'from' for
the Disco IQ. I don't know if this is the best way to do it, but in
testing with a simple component it fixed the error.

Also I'm not sure whether pres['to'] would also be valid when
is_component is False.
2020-08-05 20:35:30 -04:00
cnngimenez
9c7f3d59d8 XEP-363 fix: call callback when receiving the upload slot. 2020-06-28 21:01:40 -03:00
Maxime “pep” Buquet
67fb5fe4c3 XEP-0045: register_stanza_plgin(Message, MUCMessage)
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
605a58a864 XEP-0045: Split __init__
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
a3d343b253 XEP-0045: Add MUCMessage
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
d58f59980f XEP-0045: Remove unused MUCPresence attributes
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
9e8ac6b769 XEP-0045: Add some types in stanza
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
3b3eed544e
XEP-0045: Add stanza.NS* consts
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-29 17:27:51 +02:00
Maxime “pep” Buquet
03ee9bc4cc
XEP-0045: Split stanza into sub-module
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-29 17:25:18 +02:00
Maxime “pep” Buquet
4fad5c62ce
XEP-0045: Remove useless Python2-ness
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-29 14:15:28 +02:00
Maxime “pep” Buquet
5ccae3ce2a
XEP-0045: Change to a package module
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-29 14:15:04 +02:00
Maxime “pep” Buquet
a29ce4b547
XEP-0421: Add shorthand to namespace
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-27 23:45:41 +02:00
Maxime “pep” Buquet
07b1a4c1cd XEP-0421: add has_feature helper
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-27 22:39:52 +02:00
Maxime “pep” Buquet
cec34686fc New XEP: 0421 Occupant-id
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-27 22:39:52 +02:00
mathieui
28123083f7 Add stanza tests for 0377 2020-05-24 15:00:20 +02:00
mathieui
ef961392be Enforce <spam/> and <abuse/> quantity constraints 2020-05-24 13:46:47 +02:00
mathieui
2e31de3f45 Add a plugin for XEP-0377: spam reporting 2020-05-24 13:33:51 +02:00
Maxime “pep” Buquet
b62f0e90c1
xep_0045: don't create empty item
Only create an item if an attribute is set. Don't create it when reading
if it wasn't already present.

Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-20 00:37:46 +02:00
Maxime “pep” Buquet
c7cd2fcf33
xep_0363: pass more information to FileTooBig exception
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-12 01:49:56 +02:00
Maxime “pep” Buquet
4aa35c11ab
xep_0363: Ensure every form in disco#info is read
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-05-12 01:03:50 +02:00
Maxime “pep” Buquet
c3fbc6cb80 xep_0196: Use correct tag local name (thanks ivucica)
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-06 12:57:12 +02:00
Karthikeyan Singaravelan
5fc757f200 Fix deprecation warning regarding invalid escape sequences. 2020-04-04 16:08:44 +00:00
mathieui
98108d0445 Merge branch 'fix-celementtree-import' into 'master'
cElementTree has been deprecated since Python 3.3 and removed in Python 3.9.

See merge request poezio/slixmpp!38
2020-04-04 17:55:11 +02:00
Georg Lukas
6c28b49e7f XEP-0198: unset end_session_on_disconnect on resume/enable 2020-03-29 14:21:40 +02:00
Georg Lukas
85c9967b9c XEP-0198: fix race conditions on enable/resume
This code splits out the `enabled` property into `enabled_in` and
`enabled_out` to reflect that client and server enable 0198
asynchronously.

This also moves the actual enabling code into the stanza processing
logic, because apparently, `enable.send()` was just added into the end
of the send queue, but `enable` got enabled immediately, so that poezio
requested ACKs for whatever happened to be in the queue before.

Async is hard, let's go get fishing.
2020-03-28 21:49:18 +01:00
Georg Lukas
deb6d4f176 XEP-0198: properly disable on disconnect, fix reconnect-loop
When the connection is disconnected (but the session didn't "end",
because 0198 resumption is enabled), poezio will reconnect and try to
send an <r/> element because the 0198 plugin doesn't realize that SM
wasn't re-enabled yet.
2020-03-28 20:50:55 +01:00
Karthikeyan Singaravelan
7218bb4499 cElementTree has been deprecated since Python 3.3 and removed in Python 3.9. 2020-03-28 04:42:23 +00:00
Maxime “pep” Buquet
9b3874b5df
xep_0048: Ensure Conference jid is of type str when given a JID
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-11-11 14:00:19 +01:00