xadhoom created an issue (kamailio/kamailio#4252)

### Description

A kamailio cluster which replicates presentities and usrloc via dmq may incur 
into duplicated presentities and notifications depending on config.

The problematic setup, where each kamailio node has the following setup:
- presence enabled with dmq
- usrloc distributed with dmq
- pua_reginfo used to publish reginfo to self

Really is multiplicated by the numbers of nodes, so 4 nodes -> 4 times 
notifications and presentities.

### Troubleshooting
The problem arise because pua_reginfo hooks to usrloc and every time a "save()" 
is done a publish is sent, which is by design. Then the handled publish 
generates a presentity which is replicated via dmq from presence module.

Now, if also usrloc is replicated via DMQ, the handling of such message still 
trigger the hook, causing another publish with generates a different presentiy, 
since is new and the e-tag is different.

This causes subscribers to receive <number of nodes> notifications on every 
status change.

### Possible Solutions

The approach can be to optionally disable that hook (basically making 
pua_reginfo skipping publish) when handling a message via DMQ, so the usrloc 
replica is just saved.

In other modules, like pua_dialoginfo or pua_usrloc this can be already done, 
since publishing can be controlled from script.

### Additional Information

  * **Kamailio Version**

```
6.0.1
```


-- 
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4252
You are receiving this because you are subscribed to this thread.

Message ID: <kamailio/kamailio/issues/4...@github.com>
_______________________________________________
Kamailio - Development Mailing List -- sr-dev@lists.kamailio.org
To unsubscribe send an email to sr-dev-le...@lists.kamailio.org
Important: keep the mailing list in the recipients, do not reply only to the 
sender!

Reply via email to