[solved] ChanSpy Queue Agents with SIP hotseating

ChanSpy(chanprefix,options)
reference: wiki.asterisk.org/wiki/display/ … on_ChanSpy

With the old static agent way (1.2-1.4) (agentcallbacklogin), channel names of the agent showed up as:

Agent/300
Agent/205

This allowed the chanspy syntax to catch them:

chanspy(agent,b)

Now with sip hot seating, the channel names changed for queue calls:

SIP/300
SIP/205

chanspy(sip,b)


Test Results

A) The chanprefix variable could previously be used to differentiate regular SIP channel calls, vs queue Agent channel marked calls. Now the channel prefix is all “SIP”, which prevents the chanprefix scanning feature from making that distinction.

B) The ${SPYGROUP} variable can be attached to both inbound and outbound calls, making it a viable option in those scenarios. However, AppQueue() makes the call to queue agents, thus not presenting a chance to attach the channel variable. Please correct me if it is possible to attach this arbitrarily. When attaching it to an incoming queue call, it does not have an extension variable to read back to the listener so that they know who they are spying on.

C) Updated Asterisk versions may use the “enforce” feature to restrict the spied extensions, keeping it to a predefined range.

One Solution

example CSR range of 100-102.

The manager must look up to see which agent is at which extension, and then spy by sip extension. This however appears to be the closest possible way to achieve the previous functionality.