slidge 0.1.1__tar.gz → 0.1.2__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (95) hide show
  1. {slidge-0.1.1 → slidge-0.1.2}/PKG-INFO +5 -4
  2. {slidge-0.1.1 → slidge-0.1.2}/README.md +2 -3
  3. {slidge-0.1.1 → slidge-0.1.2}/pyproject.toml +3 -1
  4. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/base.py +1 -1
  5. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/session_dispatcher.py +6 -0
  6. {slidge-0.1.1 → slidge-0.1.2}/slidge/group/participant.py +2 -2
  7. {slidge-0.1.1 → slidge-0.1.2}/LICENSE +0 -0
  8. {slidge-0.1.1 → slidge-0.1.2}/slidge/__init__.py +0 -0
  9. {slidge-0.1.1 → slidge-0.1.2}/slidge/__main__.py +0 -0
  10. {slidge-0.1.1 → slidge-0.1.2}/slidge/command/__init__.py +0 -0
  11. {slidge-0.1.1 → slidge-0.1.2}/slidge/command/adhoc.py +0 -0
  12. {slidge-0.1.1 → slidge-0.1.2}/slidge/command/admin.py +0 -0
  13. {slidge-0.1.1 → slidge-0.1.2}/slidge/command/base.py +0 -0
  14. {slidge-0.1.1 → slidge-0.1.2}/slidge/command/categories.py +0 -0
  15. {slidge-0.1.1 → slidge-0.1.2}/slidge/command/chat_command.py +0 -0
  16. {slidge-0.1.1 → slidge-0.1.2}/slidge/command/register.py +0 -0
  17. {slidge-0.1.1 → slidge-0.1.2}/slidge/command/user.py +0 -0
  18. {slidge-0.1.1 → slidge-0.1.2}/slidge/contact/__init__.py +0 -0
  19. {slidge-0.1.1 → slidge-0.1.2}/slidge/contact/contact.py +0 -0
  20. {slidge-0.1.1 → slidge-0.1.2}/slidge/contact/roster.py +0 -0
  21. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/__init__.py +0 -0
  22. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/cache.py +0 -0
  23. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/config.py +0 -0
  24. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/__init__.py +0 -0
  25. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/caps.py +0 -0
  26. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/delivery_receipt.py +0 -0
  27. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/disco.py +0 -0
  28. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/mam.py +0 -0
  29. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/muc_admin.py +0 -0
  30. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/ping.py +0 -0
  31. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/presence.py +0 -0
  32. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/registration.py +0 -0
  33. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/search.py +0 -0
  34. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/gateway/vcard_temp.py +0 -0
  35. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/__init__.py +0 -0
  36. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/attachment.py +0 -0
  37. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/avatar.py +0 -0
  38. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/base.py +0 -0
  39. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/disco.py +0 -0
  40. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/lock.py +0 -0
  41. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/message.py +0 -0
  42. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/message_maker.py +0 -0
  43. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/presence.py +0 -0
  44. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/mixins/recipient.py +0 -0
  45. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/pubsub.py +0 -0
  46. {slidge-0.1.1 → slidge-0.1.2}/slidge/core/session.py +0 -0
  47. {slidge-0.1.1 → slidge-0.1.2}/slidge/group/__init__.py +0 -0
  48. {slidge-0.1.1 → slidge-0.1.2}/slidge/group/archive.py +0 -0
  49. {slidge-0.1.1 → slidge-0.1.2}/slidge/group/bookmarks.py +0 -0
  50. {slidge-0.1.1 → slidge-0.1.2}/slidge/group/room.py +0 -0
  51. {slidge-0.1.1 → slidge-0.1.2}/slidge/migration.py +0 -0
  52. {slidge-0.1.1 → slidge-0.1.2}/slidge/py.typed +0 -0
  53. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/__init__.py +0 -0
  54. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/link_preview/__init__.py +0 -0
  55. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/link_preview/link_preview.py +0 -0
  56. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/link_preview/stanza.py +0 -0
  57. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/roster.py +0 -0
  58. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0077/__init__.py +0 -0
  59. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0077/register.py +0 -0
  60. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0077/stanza.py +0 -0
  61. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0100/__init__.py +0 -0
  62. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0100/gateway.py +0 -0
  63. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0100/stanza.py +0 -0
  64. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0153/__init__.py +0 -0
  65. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0153/stanza.py +0 -0
  66. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0153/vcard_avatar.py +0 -0
  67. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0264/__init__.py +0 -0
  68. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0264/stanza.py +0 -0
  69. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0264/thumbnail.py +0 -0
  70. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0292/__init__.py +0 -0
  71. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0292/vcard4.py +0 -0
  72. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0313/__init__.py +0 -0
  73. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0313/mam.py +0 -0
  74. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0313/stanza.py +0 -0
  75. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0317/__init__.py +0 -0
  76. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0317/hats.py +0 -0
  77. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0317/stanza.py +0 -0
  78. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0356_old/__init__.py +0 -0
  79. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0356_old/privilege.py +0 -0
  80. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0356_old/stanza.py +0 -0
  81. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0424/__init__.py +0 -0
  82. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0424/retraction.py +0 -0
  83. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0424/stanza.py +0 -0
  84. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0490/__init__.py +0 -0
  85. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0490/mds.py +0 -0
  86. {slidge-0.1.1 → slidge-0.1.2}/slidge/slixfix/xep_0490/stanza.py +0 -0
  87. {slidge-0.1.1 → slidge-0.1.2}/slidge/util/__init__.py +0 -0
  88. {slidge-0.1.1 → slidge-0.1.2}/slidge/util/archive_msg.py +0 -0
  89. {slidge-0.1.1 → slidge-0.1.2}/slidge/util/conf.py +0 -0
  90. {slidge-0.1.1 → slidge-0.1.2}/slidge/util/db.py +0 -0
  91. {slidge-0.1.1 → slidge-0.1.2}/slidge/util/schema.sql +0 -0
  92. {slidge-0.1.1 → slidge-0.1.2}/slidge/util/sql.py +0 -0
  93. {slidge-0.1.1 → slidge-0.1.2}/slidge/util/test.py +0 -0
  94. {slidge-0.1.1 → slidge-0.1.2}/slidge/util/types.py +0 -0
  95. {slidge-0.1.1 → slidge-0.1.2}/slidge/util/util.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: slidge
3
- Version: 0.1.1
3
+ Version: 0.1.2
4
4
  Summary: XMPP bridging framework
5
5
  Home-page: https://sr.ht/~nicoco/slidge/
6
6
  License: AGPL-3.0-or-later
@@ -20,9 +20,11 @@ Requires-Dist: pickle-secure (>=0.99.9,<0.100.0)
20
20
  Requires-Dist: python-magic (>=0.4.27,<0.5.0)
21
21
  Requires-Dist: qrcode (>=7.4.1,<8.0.0)
22
22
  Requires-Dist: slixmpp (>=1.8.5,<2.0.0)
23
+ Project-URL: Documentation, https://slidge.im/
24
+ Project-URL: Repository, https://git.sr.ht/~nicoco/slidge/
23
25
  Description-Content-Type: text/markdown
24
26
 
25
- ![Slidge logo](./dev/assets/slidge-color-small.png)
27
+ ![Slidge logo](https://git.sr.ht/~nicoco/slidge/blob/master/dev/assets/slidge-color-small.png)
26
28
 
27
29
  [Home](https://sr.ht/~nicoco/slidge) |
28
30
  [Docs](https://slidge.im/core) |
@@ -66,8 +68,7 @@ bundle.
66
68
  Status
67
69
  ------
68
70
 
69
- Slidge is **beta**-grade software for 1:1 chats.
70
- Group chat support is **experimental**.
71
+ Slidge is **beta**-grade software. It support groups and 1:1 chats.
71
72
 
72
73
  Try slidge and give us some
73
74
  feedback, through the [MUC](xmpp:slidge@conference.nicoco.fr?join), the
@@ -1,4 +1,4 @@
1
- ![Slidge logo](./dev/assets/slidge-color-small.png)
1
+ ![Slidge logo](https://git.sr.ht/~nicoco/slidge/blob/master/dev/assets/slidge-color-small.png)
2
2
 
3
3
  [Home](https://sr.ht/~nicoco/slidge) |
4
4
  [Docs](https://slidge.im/core) |
@@ -42,8 +42,7 @@ bundle.
42
42
  Status
43
43
  ------
44
44
 
45
- Slidge is **beta**-grade software for 1:1 chats.
46
- Group chat support is **experimental**.
45
+ Slidge is **beta**-grade software. It support groups and 1:1 chats.
47
46
 
48
47
  Try slidge and give us some
49
48
  feedback, through the [MUC](xmpp:slidge@conference.nicoco.fr?join), the
@@ -1,11 +1,13 @@
1
1
  [tool.poetry]
2
2
  name = "slidge"
3
- version = "0.1.1"
3
+ version = "0.1.2"
4
4
  description = "XMPP bridging framework"
5
5
  authors = ["Nicolas Cedilnik <nicoco@nicoco.fr>"]
6
6
  readme = "README.md"
7
7
  license = "AGPL-3.0-or-later"
8
8
  homepage = "https://sr.ht/~nicoco/slidge/"
9
+ repository = "https://git.sr.ht/~nicoco/slidge/"
10
+ documentation = "https://slidge.im/"
9
11
  include = ["slidge/util/schema.sql"]
10
12
 
11
13
  [tool.poetry.dependencies]
@@ -521,7 +521,7 @@ class BaseGateway(
521
521
  self.send_message(
522
522
  mto=jid,
523
523
  mbody=f"{iq.get_from()} has registered",
524
- mtype="headline",
524
+ mtype="chat",
525
525
  mfrom=self.boundjid.bare,
526
526
  )
527
527
  session.send_gateway_message(self.WELCOME_MESSAGE)
@@ -473,6 +473,12 @@ class SessionDispatcher:
473
473
  if muc is None or p.get_from().resource not in muc.user_resources:
474
474
  return
475
475
 
476
+ if pto.resource == muc.user_nick:
477
+ # Ignore presence stanzas with the valid nick.
478
+ # even if joined to the group, we might receive those from clients,
479
+ # when setting a status message, or going away, etc.
480
+ return
481
+
476
482
  # We can't use XMPPError here because from must be room@slidge/VALID-USER-NICK
477
483
 
478
484
  error_from = JID(muc.jid)
@@ -108,7 +108,7 @@ class LegacyParticipant(
108
108
  msg = self._make_message()
109
109
  msg["muc"]["affiliation"] = self._affiliation
110
110
  msg["type"] = "normal"
111
- if not self.muc.is_anonymous:
111
+ if not self.muc.is_anonymous and not self.is_system:
112
112
  if self.contact:
113
113
  msg["muc"]["jid"] = self.contact.jid
114
114
  else:
@@ -235,7 +235,7 @@ class LegacyParticipant(
235
235
  codes = status_codes or set()
236
236
  if self.is_user:
237
237
  codes.add(110)
238
- if not self.muc.is_anonymous:
238
+ if not self.muc.is_anonymous and not self.is_system:
239
239
  if self.is_user:
240
240
  if user_full_jid:
241
241
  p["muc"]["jid"] = user_full_jid
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes