Cisco DX-80 and SIP URI Dialing issue

I know nothing about the DX-80, but if it will work with SCCP, you might want to get into the Discussion forums on the GitHub repo for Chan-SCCP-B and ask Dietrich if this is supported there.

If the phone doesn’t support Skinny, then never mind obviously, but this sounds like something right up their alley.

Here is the data sheet I posted earlier. It’s a newer device and does not implement SCCP.

Well…here is the news!

I was suspicious of Zoiper and a codec issue. Zoiper wants you to pay for H.264 otherwise it will only use VP8. FreePBX/Asterisk does support VP8, I made sure it was enabled and at the top of the codec list. Still nothing worked. I put down the iPhone and installed Linphone on my PC with the H.264 codec.

Two things happened:

  1. A call from the DX-80 to the PC resulted in two way audio/video(BOOM!)
  2. A call from Linphone resulted in the PC receiving video from the DX-80 but the DX-80 displayed no video from the PC. Place the call on hold on the DX-80, pick it back up and poof. Bidirectional audio and video. Every time. That’s a problem I will chase down later. At least it works!

Thank you everyone for trying to help me figure this out.

Now back to the original question that got us here. If you saw my original post, how can I add URI dialing to my dial?

When I try to dial "[email protected]" or "[email protected]" etc. it fails. I could paste the whole log here but I think this is a problem someone knows the answer to…ultimately the ending errors are:
[2021-01-07 18:33:37] NOTICE [9956]: res_pjsip_session.c : 4007 new_invite : 2100: Call (TCP:192.168.1.12:42659) to extension ‘wbdemo’ rejected because extension not found in context ‘from-internal’.

[2021-01-07 18:33:37] DEBUG [9956]: res_pjsip_session.c : 4007 new_invite : 2100: Call (TCP:192.168.1.12:42659) to extension ‘wbdemo’ rejected because extension not found in context ‘from-internal’.

[2021-01-07 18:33:37] DEBUG [9956]: res_pjsip_session.c : 4479 handle_outgoing_response : 2100: Method is INVITE, Response is 404 Not Found

So the INVITE fails with the 404 Not Found error.

@Stewart1 - I could live with the dedicated extension as previously suggested If I had to. When setting the extension to “SIP/[email protected]” I get audio only. I don’t know if there is supposed to be video.

@billsimon If I paste “SIP/[email protected]” into the dial field, I get the screen and audio that you showed above. If I try to use “PJSIP/anonymous/sip:[email protected]” as you have it typed, it fails and doesn’t even show up in my sngrep list.

There is a fairly old article on how to accomplish this task and it is for a much earlier version of Asterisk. Here is the article https://www.voip-info.org/asterisk-tips-sip-uri-dial so i would think there still has to be a way to make it work.

I am using FreePBX so you’ll have to scroll half way through the article where the author says what to do if you’re using FreePBX. I tried it(i think correctly) but it’s beyond my understanding of asterisk.

Thank you again to everyone who is chiming in to help!
Glen

SIP/ tells asterisk to use the chan_sip driver; PJSIP/ tells it to use PJSIP. I standardized on PJSIP and disabled chan_sip altogether, though there’s nothing wrong with using both except that it makes your configuration more complicated.

To be able to call out to a URI using the “PJSIP/anonymous” endpoint you have to have the endpoint enabled by going to Asterisk SIP Settings and turning on Allow SIP Guest.

What does the asterisk full log show when you do this?

BTW all the articles on voip-info.org are outdated and probably shouldn’t be used. The forum is current and active though.

@billsimon - me too. My entire setup(extensions/trunks) are PJSIP. Chan_sip is installed but just not disabled. That’s where my confusion comes in. Why wouldn’t PJSIP sucessfully dial but chan_sip did?
pcaps.tgz (5.6 KB)

I could definitely tell the information on voip-info.org was old - my hope that was since there was a way to do it in an old version, something similar existed in this one.

Like I said, I can live with the dedicated extension, but would love the flexibility of jus typing in the address instead of having to edit the extension every time. Plus it’s an interesting exercise and I’m learning a ton as I go!
Glen

1 Like

Please confirm / post asterisk logs.

I have no idea if this is helpful to you. The SIP logs are in the previous message under pcaps.tgz. This is the asterisk log with the debug level at 2 so you didn’t get those ridiculously large logs as before. I hope it’s enough!

SIP/xxxxx continues to work fine.
PJSIP/xxxxx continues to fail.

This is a log of extension 2100 call 2200. Extension 2200 has PJSIP/anonymous/sip:[email protected] in the dial field.

Glen

I’m sorry - forget to include that I do already have Allow SIP Guest turned on.

Lines 1225/1226 of your Asterisk log show that the call is sent to Zoom and responded to. We can also see why it does not appear in sngrep: it’s using TLS to call out.

Try adding \;transport=TCP to the end of your dial string to force it to use TCP instead of TLS. Then you should be able to see the signaling in sngrep.

I suspect Zoom is rejecting the call because video is not offered through the anonymous endpoint. I added the following to my /etc/asterisk/pjsip.endpoint_custom_post.conf file to have it handle NAT situations and video on SIP URI calls:

[anonymous](+)
rtp_symmetric=yes
force_rport=yes
rewrite_contact=yes
direct_media=no
disallow=all
allow=ulaw,h264

after you add that block, do a fwconsole reload from ssh to ingest the new settings.

Thank you Bill. I will have to try that and I’ll report back.

Hey Bill,

Sorry for the long delay getting back to you.

I’ve worked through everything - changed some configurations - fixed some problems - created some new ones :slight_smile:

As of now, I have the DX80, CP-9951 and Linphone all able to successfully create video conferences with each other. I have also fixed the PJSIP problem that we were last discussing.

So…back to the original reason I created this post: URI dialing. I understand what you and others have said. I have setup an extension that I can edit and use…for now…because I’m also one stubborn(I prefer persistent) son of a gun.

The information on http://nerdvittles.com/?p=27781 is slightly newer than Voip-info but seems to target the same kind of approach. I know nothing of dialplans and the syntax used but thought I’d toss it out there and hope that you see or understand something better than I do.

Either way, I guess understanding the dialplan command syntax and flow is next on my list.

Glen

Hi Glen, I was looking at the documentation for the DX80 and noticed it can take up to four different SIP proxies. One of them is already configured for your FreePBX server and you are able to use that to make internal calls on your PBX. Why not configure another one of the SIP proxy slots for your URI dialing?

The SIP proxy service at linphone.org (https://www.linphone.org/freesip/home) lets you dial by full URI. So does CallCentric’s free account (https://www.callcentric.com/rate/plans/ip_freedom/) If you just want to freely dial a URI without having to pre-program it into FreePBX, you need to use a proxy like that (or install your own locally).

So far as I understand it, those 4 proxy servers are fallback servers as there is only fields for 1 set of credentials.

Ah, got it. I misunderstood.

I wrote something simple that may interest you. This dialplan piece lets you send a SIP URI to FreePBX slightly encoded–you replace the @ sign with an = sign–and it will dial the URI. I picked = sign because I have never seen it used as part of an Asterisk extension or a SIP URI.

In /etc/asterisk/extensions_custom.conf:

[from-internal-custom]
; examines everything dialed internally but only acts on strings with = sign
exten => _.,1,GotoIf(${REGEX("=" ${EXTEN})}?uridial,${EXTEN},1)

[uridial]
; matches extens with 2 or more characters so that we don't act on e.g. 'h' exten
exten => _[a-zA-Z0-9].,1,Set(URI=${REPLACE(EXTEN,=,@)})
; replace the following with Dial(SIP/${URI}) if you are using chan_sip
same => n,Dial(PJSIP/anonymous/sip:${URI})
same => n,Hangup()

It worked in my brief, non-rigorous testing where I dialed music=iptel.org from a softphone. Hope it helps you toward your goal.

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.