diff --git a/libervia/backend/plugins/plugin_xep_0359.py b/libervia/backend/plugins/plugin_xep_0359.py
index 88356907..0670a105 100644
--- a/libervia/backend/plugins/plugin_xep_0359.py
+++ b/libervia/backend/plugins/plugin_xep_0359.py
@@ -65,7 +65,7 @@ class XEP_0359(object):
return True
def _send_message_data_trigger(self, client, mess_data):
- origin_id = mess_data["extra"].get("origin_id")
+ origin_id = mess_data["extra"].setdefault("origin_id", mess_data.get("uid"))
if not origin_id:
origin_id = str(uuid.uuid4())
mess_data["extra"]["origin_id"] = origin_id
@@ -116,18 +116,15 @@ class XEP_0359(object):
else:
return origin_elt.getAttribute("id")
- def add_origin_id(self, element, origin_id=None):
+ def add_origin_id(self, element: domish.Element, origin_id: str) -> None:
"""Add a to a stanza
@param element(domish.Element): stanza where the must be added
@param origin_id(str): id to use, None to automatically generate
@return (str): origin_id
"""
- if origin_id is None:
- origin_id = str(uuid.uuid4())
sid_elt = element.addElement((NS_SID, "origin-id"))
sid_elt["id"] = origin_id
- return origin_id
def get_handler(self, client):
return XEP_0359_handler()