[asterisk-users] detecting intl. CLI with +

Danny Nicholas danny at debsinc.com
Wed May 2 11:21:58 CDT 2012


I think you need to "escape" the + "\+"

 

From: asterisk-users-bounces at lists.digium.com
[mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Michael
Sent: Wednesday, May 02, 2012 11:20 AM
To: Asterisk Users Mailing List - Non-Commercial Discussion
Subject: [asterisk-users] detecting intl. CLI with +

 

Hello asterisk users,

I need to convert the CLI received according to national/international
format:

55-555-5555 to 055-555-5555 (add 0 in the beginning)
+55-55-555-5555 to +55-55-555-5555 (remains unchanged)

I put the following line in my dial plan:
exten => _X., n, Set(CALLERID(num)=${IF($[ ${CALLERID(num):0:1} =
"+"]?${CALLERID(num)}:0${CALLERID(num)})})

But I get these error messages:
[May  2 17:05:43] WARNING[1494]: ast_expr2.fl:468 ast_yyerror:
ast_yyerror():  syntax error: syntax error, unexpected '+', expecting $end;
Input:
 + = "+"
 ^
[May  2 17:05:43] WARNING[1494]: ast_expr2.fl:472 ast_yyerror: If you have
questions, please refer to
https://wiki.asterisk.org/wiki/display/AST/Channel+Variables
[May  2 17:05:43] WARNING[1494]: func_logic.c:192 acf_if: Syntax
IF(<expr>?[<true>][:<false>])  (expr must be non-null, and either <true> or
<false> must be non-null)
[May  2 17:05:43] WARNING[1494]: func_logic.c:193 acf_if:       In this
case, <expr>='', <true>='+55555555555', and <false>='0+55555555555'

Can anyone suggest the proper syntax? I tried the + with no quotes, single
quotes '+' and double quotes"+" and nothing worked.

Thanks

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20120502/7c680849/attachment.htm>


More information about the asterisk-users mailing list