<div dir="ltr">I am back to try to fight with the problem highlighted few years ago <a href="https://issues.asterisk.org/jira/browse/ASTERISK-18480">https://issues.asterisk.org/jira/browse/ASTERISK-18480</a><div><br></div><div>In short, when using realtime queue members, it is impossible to use ordered ringing method because it is impossible to define the ordering of agents and the alphabetical ordering is used.</div><div><br></div><div>I side stepped the problem by using custom member name like Local/AG-000-56 and Local/AG-001-23 and so on to make agent 56 to be ring before agent 23.</div><div><br></div><div>Unfortunately this solution has the nasty problem of letting wrapuptime to not work across multiple queues when using the shared_lastcall. Member 56 can be Local/AG-000-56 in one queue and Local/AG-002-56 in another queue.</div><div><br></div><div>A solution can be to change the way ast_load_realtime_multientry works, by providing the ordering field, maybe adding a second SENTINEL item defining it, so in </div><div><br></div><div>find_load_queue_rt_friendly(const char *queuename) </div><div><br></div><div>instead of </div><div><br></div><div>member_config = ast_load_realtime_multientry("queue_members", "interface LIKE", "%", "queue_name", queuename, SENTINEL);<br></div><div><br></div><div>we can use something like </div><div><br></div><div><div>member_config = ast_load_realtime_multientry("queue_members", "interface LIKE", "%", "queue_name", queuename, SENTINEL, member_order, SENTINEL);<br></div></div><div><br></div><div>with member_order to contain the ordering of the members</div><div><br></div><div>obviously all functions and subsequent structures need to be changed to accept the new format</div><div><br></div><div>Do you think it is doable? will such change be accepted? do you think there can be a better way?</div><div><br></div><div>Leandro</div><div><br></div><div><br></div><div><br></div></div>