I am trying to make IP calls through Voipo. The format of the call is sip:987654@sip.blah.com. In other words, if I set up a speed dial 25 on Voipo portal to be sip:987654@sip.blah.com and dial 25, the call goes through.
Now, I am trying to make this call without Voipo speed dial. Let's say, IP address of sip.blah.com is 10.20.30.40. I have no problem calling 987654@10.20.30.40, but Voipo doesn't like it (it connects, but there are no received packets). Is there a way to set up a digit map so it prepends "sip:" to what I dialed? I see in ipd custom rule there is <*::> (before port) - so processor is somehow smart enough to distinguish between first : (separator) and second (substitution literal). However, if I put {(<:sip:>(Mipd)):sp1} it gets confused...
Any ideas?
Felix,
I tried your config and the call history shows it worked, but my provider never received the call. Maybe you should open a service request.
Edit:
I first tried it on a Voice Gateway and the OBi really got confused.
The call history showed the following:
sip:123@192.168.1.100@192.168.1.100
Then I tried SP2 and got this:
sip:123@192.168.1.100
Both cases the provider didn't receive the call.
Apologies to anyone who read my first attempt at this. It was wrong and misleading, so I deleted it! Here is my second attempt:
There is some guess work here as we do not have all your digit maps.
Assuming that Mipd exisits in one of your MspX digit maps, then if you dial 987654*10*20*30*40 Mipd in the Phone Port DigitMap will transform it to 987654@10.20.30.40 This no longer matches Mipd, which is looking for the xx*xx* etc format. Therefore this rule in your Phone Port OutboundCallRoute {(<:sip:>(Mipd)):sp1} will not apply. I guess a rule such as [^*#]@@. Is matching it and sending it out without the "sip:" prepended.
You could try something like this in your Phone Port OutboundCallRoute {(<:sip:>([^*#]@@.'@'@@.)):sp1} but that will match any sip uri.
An alternative way to achieve this is to create another digit map:
User Settings > User Defined Digit Maps > User Defined Digit MapX >
Label: ipz
DigitMap: (<:sip:>xx.@xx?x?.xx?x?.xx?x?.xx?x?|<:sip:>xx.@xx?x?.xx?x?.xx?x?.xx?x?:xx?x?x?x?)
Use {(Mipz):sp1} In your Phone Port OutboundCallRoute. Now what should happen is that in your Phone Port DigitMap Mipd will allow ip dialling, then in your Phone Port OutboundCall route Mipz will prepend the "sip:"
Let us know if any of this works, it could be useful for prepending other things.
@azrobert – what does Call History show under phone and under sp1? Also, do you have an Mipd in any of your ITSP digit maps? There are a lot of variables here :-\
Quote from: ianobi on March 05, 2013, 08:21:33 AM
@azrobert – what does Call History show under phone and under sp1? Also, do you have an Mipd in any of your ITSP digit maps? There are a lot of variables here
I added "@@." to the Phone DigitMap and "{(<:sip:>(Mipd)):sp2}" to the call route.
Phone1 call history shows:
123*192*168*1*100
SP2 call history shows:
sip:123@192.168.1.100
Edit:
I do not have "(Mipd)" in any other DigitMap.
That's a clever way of testing the config. "@@." accepts anything with no transformation in the DigitMap, then "{(<:sip:>(Mipd)):sp2}" does the transformation, prepends the "sip:" and sends it out to sp2.
Felix has a few choices to make now depending on his setup. At least now he can see what works and how to get there :)
ianobi,
Please read my reply#1.
The transformation is correct, but the provider never received the call. I tried it with another provider and it also didn't receive the call. I don't know if it's my providers or the OBi that's at fault.
azrobert,
This looks like you are calling an internal ip address on your own network:
Phone1 call history shows:
123*192*168*1*100
SP2 call history shows:
sip:123@192.168.1.100
The test needs to be made to the external address of your voip provider.
Thank you so much!
First, I realized that I goofed... I put the rule in the wrong place - In Phone OutboundCallRoute instead of Profile DigitMap. So, azrobert correctly noted, sip: was appended and no longer managed SP1 Digitmap.
Once I put {(Mipd):sp1} in Phone, and <:sip:>(Mipd) in Profile DigitMap, I see To SP1(sip:987654@10.20.30.40)
- just what I expect. Unfortunately, I get 404 from provider; but obviously, this is not OBI issue any more. I'll try a few other things and report the results
Turns out that Voipo doesn't support sip addresses coming from devices. The only way to make a SIP call is to set up speed dial (Voipo calls them "outbound routing") on their portal.