Realtime queue members mechanism philosophy

I have two boxes with Asterisk 16.3.0 installed on them. Configuration of queues and queue members is in realtime mode.

I ran into several strange things:

  1. Unable to add member to queue dynamically to one server with automatically distribution to others. Okay, I desided to insert data right into database. It is easy,
  2. Okay, I added info about member into table queue_members. After that I sent AMI-Action QueueStatus. Member is not in queue, until I ran 'queue show ’ through CLI. After that THAT box, where I ran ‘queue show’, will realise, that in that queue new member appered. And after that AMI-action QueueStatus works correctly, but only for that member,
  3. Another interesting thing. I decided to pause member in particular queue. I ran in CLI ‘queue pause …’. After that AMI-action QueueStatus show member in pause. But only if I sent action to that box, where I executed command. On the other box member is not in pause in the AMI-Action response, right before I execute ‘queue show’ again,
  4. And ‘queue show’ always show that realtime member is paused for 0 seconds ago.

Is it possible to fully clusterize asterisk queues? Is there a some sort of best practice about that? Or maybe something is not turned on?

My configuration:
Two boxes:
Ubuntu 16.04, asterisk 16.3.0, realtime pjsip, realtime queues and members, realtime cdr and queue_log.
Corosync for syncing device states, static LUA-based dialplan.
MariaDB

My modules list is here: https://pastebin.com/mS5iNqvc

BTW, LastPause field in QueueMember event of Action ‘QueueStatus’ response with data about paused member is always contains timestamp of the LAST run of ‘queue show’ on that box, where action was received.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.