Queue Application is not sending URL to the connected member after queue call answered

I am using asterisk 16.3.0 and queue member is PJSIP endpoints.
When i add a caller to the queue i send a url using this dialplan

exten => _X.,n,Queue(queue_name,t,http://trc.html?limit=25)

According to documentation of Queue Application

Queue(queuename,[options,[URL,[announceoverride,[timeout,[AGI,[macro,[gosub,[rule,[position]]]]]]]]])

URL - URL will be sent to the called party if the channel supports it.

But url is not sending after a queue member answer that call.
So how to make PJSIP channel support this url sending?

Code would have to be written in chan_pjsip to do so, specifically a send_html callback.

All of my endpoints and trunk are configured in realtime using res_pjsip module.
Here is my code in sorcery.conf

[res_pjsip]
endpoint=realtime,ps_endpoints
auth=realtime,ps_auths
aor=realtime,ps_aors
domain_alias=realtime,ps_domain_aliases
contact=realtime,ps_contacts

[res_pjsip_endpoint_identifier_ip]
identify=realtime,ps_endpoint_id_ips

[res_pjsip_outbound_registration]
registration=realtime,ps_registrations

And module show like chan_pjsip return chan_pjsip.so PJSIP Channel Driver Running.

So it is using chan_pjsip driver wright?

For your information, i have another server where Asterisk 1.8 installed and using this dialplan

exten => _X.,n,Queue(queue_name,t,http://trc.html?limit=25)

asterisk is sending the url in SIP HEADER using re-invite after call is answered by a queue member .
I am hoping that chan_pjsip will show the same behaviour.

The chan_pjsip module does not have such functionality written into it. There is no configuration or anything that would alter that, except for writing the code in chan_pjsip to do it.

@jcolp what it is the url parameter supposed to do on the queue app, just trigger an url ?

@ambiorixg12 It’s up to the channel driver what it actually does. I don’t know what chan_sip really does with it.

Thanks for the reply, because usually people want to trigger a remote API in queue, usually we do this using gobusb() option, but dont know if this is the case here. But in this case I dont have idea what would do a channel with this url

Based on rather old code, chan_sip forces a response or re-INVITE, with an Access-URL header.

	if (!ast_strlen_zero(p->url)) {
		add_header(resp, "Access-URL", p->url);

There are suggestions that this header never became official and only appeared in draft RFCs.

1 Like

@jcolp many thanks for your info. I was stack there and debugging as i thought it should work!!
@ambiorixg12 Thanks for Showing me the way but i am stuck again. Can you help with this scenerio. Any suggestion will be helpful.
I can use b ( context^exten^priority ) option in queue to execute this context in newly created channel and get the URL in this channel through Variable Inheritance but how to send that URL to my softphone?

Use the SendURL dialplan application, but you will still need a channel driver that supports it, as well as peer that supports Access-URL headers.

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