Chan_sip Registry from Plivo stuck at Request Sent


#1

Hi,

Yesterday I’ve installed and have been configuring FreePBX.

Has anyone gotten a SIP trunk to work from Plivo?

They have a tutorial, however, after doing what is said in the documentation (the forum won’t let me post a link to it), the SIP does not show up under registered.
When I fill in the registration flag in the format of username:password@uri, it does show up as a registration but it is stuck at Request Sent.

Any ideas?


(Matt Brooks) #2

Not sure about Plivo specifically, but I can tell you that 90% of SIP issues tend to be network issues. I’m not sure which documentation you followed, but please take a look at this one and see if you can at least eliminate the network side of things: https://wiki.freepbx.org/display/FPG/NAT+Configuration+FreePBX+12


#3

Hi,

I followed the topic and everything was set up correctly. I do have NAT set to no though, as the FreePBX server has a public IP on it directly.


(Matt Brooks) #4

I’m not sure what to tell you then. Your best bet is to reach out to Plivo support and see if they can help you. Other than that, you can try to read the SIP header requests and responses to see if everything is following the SIP registration flow. That will require a deeper understanding of how the SIP protocol works.


#5

Does your FreePBX have 2 network cards? If so, you probably need a static route for the public network card to reach your provider.


#6

It does not, it only has one network card, but I did find a different issue, please see the other comment. (I don’t want to post it twice, that would clutter things up)


#7

Hi,

Thanks for the tip. It seems like they don’t need registration. I wasn’t able to place inbound or outbound calls, which is why I checked that.

I seem to be getting this error:

[2020-05-08 21:59:38] VERBOSE[29805][C-0000000b] pbx.c: Executing [316XXXXXXXX@from-internal:1] ResetCDR(“SIP/2000-00000009”, “”) in new stack
[2020-05-08 21:59:38] VERBOSE[29805][C-0000000b] pbx.c: Executing [316XXXXXXXX@from-internal:2] NoCDR(“SIP/2000-00000009”, “”) in new stack
[2020-05-08 21:59:38] VERBOSE[29805][C-0000000b] pbx.c: Executing [316XXXXXXXX@from-internal:3] Progress(“SIP/2000-00000009”, “”) in new stack
[2020-05-08 21:59:38] VERBOSE[29805][C-0000000b] pbx.c: Executing [316XXXXXXXX@from-internal:4] Wait(“SIP/2000-00000009”, “1”) in new stack
[2020-05-08 21:59:39] VERBOSE[29805][C-0000000b] pbx.c: Executing [316XXXXXXXX@from-internal:5] Playback(“SIP/2000-00000009”, “silence/1&cannot-complete-as-dialed&check-number-dial-again,noanswer”) in new stack
[2020-05-08 21:59:39] VERBOSE[29805][C-0000000b] file.c: <SIP/2000-00000009> Playing ‘silence/1.ulaw’ (language ‘en’)
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] file.c: <SIP/2000-00000009> Playing ‘cannot-complete-as-dialed.ulaw’ (language ‘en’)
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] file.c: <SIP/2000-00000009> Playing ‘check-number-dial-again.ulaw’ (language ‘en’)
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] pbx.c: Executing [h@from-internal:1] Macro(“SIP/2000-00000009”, “hangupcall”) in new stack
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] pbx.c: Executing [s@macro-hangupcall:1] GotoIf(“SIP/2000-00000009”, “1?theend”) in new stack
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] pbx_builtins.c: Goto (macro-hangupcall,s,3)
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] pbx.c: Executing [s@macro-hangupcall:3] ExecIf(“SIP/2000-00000009”, “0?Set(CDR(recordingfile)=)”) in new stack
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] pbx.c: Executing [s@macro-hangupcall:4] NoOp(“SIP/2000-00000009”, " montior file= ") in new stack
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] pbx.c: Executing [s@macro-hangupcall:5] GotoIf(“SIP/2000-00000009”, “1?skipagi”) in new stack
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] pbx_builtins.c: Goto (macro-hangupcall,s,7)
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] pbx.c: Executing [s@macro-hangupcall:7] Hangup(“SIP/2000-00000009”, “”) in new stack
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] app_macro.c: Spawn extension (macro-hangupcall, s, 7) exited non-zero on ‘SIP/2000-00000009’ in macro ‘hangupcall’
[2020-05-08 21:59:40] VERBOSE[29805][C-0000000b] pbx.c: Spawn extension (from-internal, h, 1) exited non-zero on ‘SIP/2000-00000009’
[2020-05-08 21:59:45] VERBOSE[14910][C-0000000c] netsock2.c: Using SIP RTP TOS bits 184
[2020-05-08 21:59:45] VERBOSE[14910][C-0000000c] netsock2.c: Using SIP RTP CoS mark 5
[2020-05-08 21:59:45] NOTICE[14910][C-0000000c] chan_sip.c: Call from ‘2000’ (x.x.x.x:61970) to extension ‘+316XXXXXXXX’ rejected because extension not found in context ‘from-internal’.


#8

Your Outbound Route does not have a pattern that matches 316XXXXXXX. Possibly, it is expecting 1316XXXXXXX, or it may just be incorrect. I believe that Plivo expects an initial 1 on US calls, so if you want to dial 316XXXXXXX you need to rewrite the number in the Outbound Route or Trunk.


#9

The 316 number is meant to be +316XXXXXXXX (as in a mobile (6) number from The Netherlands (31)).
I fixed the outgoing by changing the rule to all 11x X.

However, for incoming, I hear nothing on the phone. I also don’t see anything in the logs of an incoming call.


(Dave Burgess) #10

If you don’t see the incoming call in /var/log/asterisk/full, then you are either getting blocked by a firewall (possibly the Integrate Firewall in FreePBX) or your provider is not sending the call to the PBX in a way you can receive it (wrong address, wrong port).

First thing to check would be the inbound redirection from your border router.to the PBX. The specifics may vary slightly, but you need (at least) UDP 5060, UDP 5160, and UDP 10000-20000 redirected to your PBX from the border router.