Hi!
I would like to normalize the number in P-Preferred-Identity and then set it as CALLERID(num).
exten => _.,4,Set(PPISIPURI=${PJSIP_HEADER(read,P-preferred-identity):5})
(I know “_.” is bad, on my TODO)
P-Preferred-Identity holds something like this:
<sip:0123456789@8.8.8.8>
What I need is 0123456789, which can also be +1123456789 (wich then results in bad numbers because of the -5 “cut”).
Kind regards
Kevin
How can I get the first match of pattern matching?
NoOp(${REGEX("\+?[0-9]+" ${PJSIP_HEADER(read,P-preferred-identity)})})
This only returns true or false, not the match.
I tried it:
The regular expression is anchored to the beginning of the string with an implicit `^`
My regex matches strings somewhere in the string, not necessarily at the beginning (^):
\+?[0-9]+
exten => _.,5,Set(regex="\+?[0-9]+")
exten => _.,6,Set(CIDFROMPPI=$["${PPISIPURI}" : ${regex}])
Also not working (match is garbage):
exten => _.,5,Set(regex="\+?[0-9]+")
exten => _.,6,Set(CIDFROMPPI=$["${PPISIPURI}" =~ ${regex}])
Ok, thanks, found the correct expression:
(\+?[0-9]+)
This time it works!
Thanks!
1 Like
would be nice to see the full answer here