RabbitMQ "messaging" exchange with multiple Jasmin Gateways

135 views
Skip to first unread message

Dylan Gartland

unread,
Oct 27, 2023, 12:05:40 PM10/27/23
to Jasmin SMS Gateway
Hi,

I'm currently working on setting up two Jasmin instances on separate servers, both connected to a clustered RabbitMQ instance. Each Jasmin instance has its own dedicated connector, labeled as CONNECTOR_1 and CONNECTOR_2.

So far, everything is functioning as expected, except for Delivery Receipts (DLRs). While I can send messages successfully and route them to the appropriate connector based on which server processes the message first, there's an issue with the shared "messaging" exchange.

Since both Jasmin instances are utilizing the same "messaging" exchange, DLRs can sometimes get directed to the wrong Jasmin server. This leads to a "DLRMapNotFound: Got a DLR for an unknown message id" error. Although there are occasional retries that eventually reach the correct server, this isn't an ideal situation.

I've tried setting the dlrlookupd.cfg:pid to dlrlookupd-server1 and dlrlookup-server2 respectively but because the routing key for both is "dlr.*", the DLR can end up on either queue. 

Is there any way I can tell the two Jasmin instances to use separate exchanges? E.g. "messaging1" and "messaging2". I haven't found anything in the docs or config files that allows this.

Any help would be appreciated.

Cheers,

Dylan
Reply all
Reply to author
Forward
0 new messages