[asterisk-users] Parallel dialoog with different Alert-Info headers

asterisk at phreaknet.org asterisk at phreaknet.org
Sat Jul 22 16:40:13 CDT 2023


On 7/22/2023 4:51 PM, Dirk-Willem van Gulik wrote:
> We have a couple of parallel ring settings (and this has worked well for eons).
>
> Either in the form of
>
> 	same => n,Dial(SIP/1001 & SIP/1002 & SIP/1003 …..)
>
> Or via a subroutine (below) that has a bit of extra logic:
>
> 	FOO = 1010 & 1019 & 1017 & 1033
> 	...
> 	same => n,gosub(sub-callout,s,1,(${FOO},”Ringing all class FOO telefons"))
>
> Now I have two types of phones (different) era’s that require slightly different Alert-Info headers.
>
> How can one introduce a layer of indirection at phone (extension) level that adds those headers ?
I'm assuming you mean at the device level, and that you want to send 
only the relevant header to each device?
Use pre-dial handlers; a unique handler runs on each destination 
channel. With PJSIP, you're forced to do this anyways, but SIPAddHeader 
adds these to the calling channel first, which explains the problem you 
have now.

How you determine the right header to send on each channel is something 
you still need to do. For example, you could detect the user agent in 
your pre-dial handler and add the appropriate header. This is a common 
enough scenario for things like setting the ring cadence that I wrote an 
application to handle this for me.



More information about the asterisk-users mailing list