[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