Re: [asterisk-users] PJSIP add header on forwarded call

2018-11-27 Thread Administrator TOOTAI

Le 27/11/2018 à 13:18, Joshua C. Colp a écrit :

On Tue, Nov 27, 2018, at 8:13 AM, Administrator TOOTAI wrote:

Le 27/11/2018 à 12:13, Joshua C. Colp a écrit :

On Tue, Nov 27, 2018, at 5:49 AM, Administrator TOOTAI wrote:[...]


[TOOTAiAudio]
;
; Call our gateway

exten = s,1,Set(PJSIP_HEADER(add,X-TOOTAiAudio-CALLED)=${ARG1})
    same = n,Dial(PJSIP/${ARG1}@TOOTAiAudio,,T)
    same = n,Return

exten = h,1,NoOp()
    same = n,NoOp(Hangup Cause: ${HANGUPCAUSE})
    same = n,NoOp(Dial status : ${DIALSTATUS})
    same = n,NoOp(X-TOOTAiAudio=${PJSIP_HEADER(read,X-TOOTAiAudio-CALLED)})
    same = n,Return

[...]


Why can't be PJSIP extra headers setted in this case ?


As documented on the wiki[1] the PJSIP_HEADER dialplan function has to be 
executed on the PJSIP channel itself, not the calling channel. You need to use 
a pre-dial handler and invoke it there.

[1] https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Function_PJSIP_HEADER



Thanks Joshua, that worked. As you see above I want to have the value of
headers when call is ended. Problem is that on h extension the channel
already gone.

Is there a solution to archieve this ?


Is there a reason you can't use a normal dialplan variable instead?


That's what I do at this time. I thought I could bypass this by 
retriving the output of headers


 Otherwise I don't believe PJSIP_HEADER will retrieve such information 
regardless, it's for querying headers on an incoming INVITE.




Ok, thanks for your help.

--
Daniel

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Astricon is coming up October 9-11!  Signup is available at: 
https://www.asterisk.org/community/astricon-user-conference

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
 https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] PJSIP add header on forwarded call

2018-11-27 Thread Joshua C. Colp
On Tue, Nov 27, 2018, at 8:13 AM, Administrator TOOTAI wrote:
> Le 27/11/2018 à 12:13, Joshua C. Colp a écrit :
> > On Tue, Nov 27, 2018, at 5:49 AM, Administrator TOOTAI wrote:[...]
> >>
> >> [TOOTAiAudio]
> >> ;
> >> ; Call our gateway
> >>
> >> exten = s,1,Set(PJSIP_HEADER(add,X-TOOTAiAudio-CALLED)=${ARG1})
> >>    same = n,Dial(PJSIP/${ARG1}@TOOTAiAudio,,T)
> >>    same = n,Return
> >>
> >> exten = h,1,NoOp()
> >>    same = n,NoOp(Hangup Cause: ${HANGUPCAUSE})
> >>    same = n,NoOp(Dial status : ${DIALSTATUS})
> >>    same = n,NoOp(X-TOOTAiAudio=${PJSIP_HEADER(read,X-TOOTAiAudio-CALLED)})
> >>    same = n,Return
> [...]
> >>
> >> Why can't be PJSIP extra headers setted in this case ?
> > 
> > As documented on the wiki[1] the PJSIP_HEADER dialplan function has to be 
> > executed on the PJSIP channel itself, not the calling channel. You need to 
> > use a pre-dial handler and invoke it there.
> > 
> > [1] 
> > https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Function_PJSIP_HEADER
> > 
> 
> Thanks Joshua, that worked. As you see above I want to have the value of 
> headers when call is ended. Problem is that on h extension the channel 
> already gone.
> 
> Is there a solution to archieve this ?

Is there a reason you can't use a normal dialplan variable instead? Otherwise I 
don't believe PJSIP_HEADER will retrieve such information regardless, it's for 
querying headers on an incoming INVITE.

-- 
Joshua C. Colp
Digium - A Sangoma Company | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: www.digium.com & www.asterisk.org

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Astricon is coming up October 9-11!  Signup is available at: 
https://www.asterisk.org/community/astricon-user-conference

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] PJSIP add header on forwarded call

2018-11-27 Thread Administrator TOOTAI

Le 27/11/2018 à 12:13, Joshua C. Colp a écrit :

On Tue, Nov 27, 2018, at 5:49 AM, Administrator TOOTAI wrote:[...]


[TOOTAiAudio]
;
; Call our gateway

exten = s,1,Set(PJSIP_HEADER(add,X-TOOTAiAudio-CALLED)=${ARG1})
   same = n,Dial(PJSIP/${ARG1}@TOOTAiAudio,,T)
   same = n,Return

exten = h,1,NoOp()
   same = n,NoOp(Hangup Cause: ${HANGUPCAUSE})
   same = n,NoOp(Dial status : ${DIALSTATUS})
   same = n,NoOp(X-TOOTAiAudio=${PJSIP_HEADER(read,X-TOOTAiAudio-CALLED)})
   same = n,Return

[...]


Why can't be PJSIP extra headers setted in this case ?


As documented on the wiki[1] the PJSIP_HEADER dialplan function has to be 
executed on the PJSIP channel itself, not the calling channel. You need to use 
a pre-dial handler and invoke it there.

[1] https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Function_PJSIP_HEADER



Thanks Joshua, that worked. As you see above I want to have the value of 
headers when call is ended. Problem is that on h extension the channel 
already gone.


Is there a solution to archieve this ?

--
Daniel

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Astricon is coming up October 9-11!  Signup is available at: 
https://www.asterisk.org/community/astricon-user-conference

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
 https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] PJSIP add header on forwarded call

2018-11-27 Thread Joshua C. Colp
On Tue, Nov 27, 2018, at 5:49 AM, Administrator TOOTAI wrote:
> Hi list,
> 
> to manage an external queue agent the only solution I found is to 
> connect a local account and redirect calls to this account using forward 
> features from the phone (SNOM). The problem I face is that before 
> calling the agent I would like to set extra header. Dialplan to call 
> external agent is this one with (Gosub):
> 
> [TOOTAiAudio]
> ;
> ; Call our gateway
> 
> exten = s,1,Set(PJSIP_HEADER(add,X-TOOTAiAudio-CALLED)=${ARG1})
>   same = n,Dial(PJSIP/${ARG1}@TOOTAiAudio,,T)
>   same = n,Return
> 
> exten = h,1,NoOp()
>   same = n,NoOp(Hangup Cause: ${HANGUPCAUSE})
>   same = n,NoOp(Dial status : ${DIALSTATUS})
>   same = n,NoOp(X-TOOTAiAudio=${PJSIP_HEADER(read,X-TOOTAiAudio-CALLED)})
>   same = n,Return
> 
> When a local phone call extension 115 (the one where calls to external 
> agent are forwarded), everything is working well. But if I call the 
> account from a queue I get
> 
> 
> [Nov 27 09:54:08] ERROR[12758][C-005f]: res_pjsip_header_funcs.c:513 
> func_write_header: This function requires a PJSIP channel
> 
> Output of queue is
> 
> deblix9*CLI> queue show q301
> q301 has 0 calls (max unlimited) in 'ringall' strategy (6s holdtime, 47s 
> talktime), W:0, C:25, A:3, SL:100.0%, SL2:100.0% within 60s
>     Members:
>    PJSIP/PPermis115 (ringinuse disabled) (dynamic) (Not in use) has 
> taken 8 calls (last was 706 secs ago)
>     No Callers
> 
> where PPermis115 is the local account on a phone who forward calls to 
> extension 115.
> 
> Why can't be PJSIP extra headers setted in this case ?

As documented on the wiki[1] the PJSIP_HEADER dialplan function has to be 
executed on the PJSIP channel itself, not the calling channel. You need to use 
a pre-dial handler and invoke it there.

[1] https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Function_PJSIP_HEADER

-- 
Joshua C. Colp
Digium - A Sangoma Company | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: www.digium.com & www.asterisk.org

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Astricon is coming up October 9-11!  Signup is available at: 
https://www.asterisk.org/community/astricon-user-conference

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

[asterisk-users] PJSIP add header on forwarded call

2018-11-27 Thread Administrator TOOTAI

Hi list,

to manage an external queue agent the only solution I found is to 
connect a local account and redirect calls to this account using forward 
features from the phone (SNOM). The problem I face is that before 
calling the agent I would like to set extra header. Dialplan to call 
external agent is this one with (Gosub):


[TOOTAiAudio]
;
; Call our gateway

exten = s,1,Set(PJSIP_HEADER(add,X-TOOTAiAudio-CALLED)=${ARG1})
 same = n,Dial(PJSIP/${ARG1}@TOOTAiAudio,,T)
 same = n,Return

exten = h,1,NoOp()
 same = n,NoOp(Hangup Cause: ${HANGUPCAUSE})
 same = n,NoOp(Dial status : ${DIALSTATUS})
 same = n,NoOp(X-TOOTAiAudio=${PJSIP_HEADER(read,X-TOOTAiAudio-CALLED)})
 same = n,Return

When a local phone call extension 115 (the one where calls to external 
agent are forwarded), everything is working well. But if I call the 
account from a queue I get



[Nov 27 09:54:08] ERROR[12758][C-005f]: res_pjsip_header_funcs.c:513 
func_write_header: This function requires a PJSIP channel


Output of queue is

deblix9*CLI> queue show q301
q301 has 0 calls (max unlimited) in 'ringall' strategy (6s holdtime, 47s 
talktime), W:0, C:25, A:3, SL:100.0%, SL2:100.0% within 60s

   Members:
  PJSIP/PPermis115 (ringinuse disabled) (dynamic) (Not in use) has 
taken 8 calls (last was 706 secs ago)

   No Callers

where PPermis115 is the local account on a phone who forward calls to 
extension 115.


Why can't be PJSIP extra headers setted in this case ?

Thanks for any hint

Reagrds

--
Daniel

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Astricon is coming up October 9-11!  Signup is available at: 
https://www.asterisk.org/community/astricon-user-conference

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
 https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users