0
Fixed

Doorbird error when answering call

Wouter van der Post 3 years ago in Bugs and problems updated 3 years ago 10

Hi,

I'm testing a Doorbird intercom with i3 Pro and run into some issues when answering the call.

I'm using the sample project (https://dev.iridi.com/DoorBird/en) and a FreePBX SIP server. 

The Doorbird has extension number 200, i3 Pro has 111.

When I press the call button on the Doorbird, the call shows up in the emulator. As soon as I press "answer" the log shows these lines (as long as the call is active, the 'error' lines keep flowing in):

Image 47079

Also there is no sound, not from the laptop to the intercom and not from the intercom microphone to the laptop.

This is what shows up in the FreePBX logs, I make the call from the intercom and press hangup in the i3 Pro emulator:

10975    [2021-04-08 15:40:02] VERBOSE[32706][C-0000000a] app_stack.c: PJSIP/111-00000012 Internal Gosub(func-apply-sipheaders,s,1) complete GOSUB_RETVAL=    
10976    [2021-04-08 15:40:02] VERBOSE[21756] netsock2.c: Using SIP RTP Audio TOS bits 184    
10977    [2021-04-08 15:40:02] VERBOSE[21756] netsock2.c: Using SIP RTP Audio TOS bits 184 in TCLASS field.    
10978    [2021-04-08 15:40:02] VERBOSE[21756] netsock2.c: Using SIP RTP Audio CoS mark 5    
10979    [2021-04-08 15:40:02] VERBOSE[21756] netsock2.c: Using SIP RTP Video TOS bits 136    
10980    [2021-04-08 15:40:02] VERBOSE[21756] netsock2.c: Using SIP RTP Video TOS bits 136 in TCLASS field.    
10981    [2021-04-08 15:40:02] VERBOSE[21756] netsock2.c: Using SIP RTP Video CoS mark 4    
10982    [2021-04-08 15:40:02] VERBOSE[32706][C-0000000a] app_dial.c: Called PJSIP/111/sip:111@192.168.5.89:59818;rinstance=J6CbMx7MQpJwbGGr    
10983    [2021-04-08 15:40:02] VERBOSE[32706][C-0000000a] app_dial.c: PJSIP/111-00000012 is ringing    
10984    [2021-04-08 15:40:02] VERBOSE[32706][C-0000000a] app_dial.c: PJSIP/111-00000012 is ringing    
10985    [2021-04-08 15:40:04] VERBOSE[32706][C-0000000a] app_dial.c: PJSIP/111-00000012 answered PJSIP/200-00000011    
10986    [2021-04-08 15:40:04] VERBOSE[303][C-0000000a] bridge_channel.c: Channel PJSIP/111-00000012 joined 'simple_bridge' basic-bridge <36bfc303-9f59-413f-a46b-7a0174f70718>    
10987    [2021-04-08 15:40:04] VERBOSE[32706][C-0000000a] bridge_channel.c: Channel PJSIP/200-00000011 joined 'simple_bridge' basic-bridge <36bfc303-9f59-413f-a46b-7a0174f70718>    
10988    [2021-04-08 15:40:07] VERBOSE[303][C-0000000a] bridge_channel.c: Channel PJSIP/111-00000012 left 'simple_bridge' basic-bridge <36bfc303-9f59-413f-a46b-7a0174f70718>    
10989    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] bridge_channel.c: Channel PJSIP/200-00000011 left 'simple_bridge' basic-bridge <36bfc303-9f59-413f-a46b-7a0174f70718>    
10990    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] app_macro.c: Spawn extension (macro-dial-one, s, 55) exited non-zero on 'PJSIP/200-00000011' in macro 'dial-one'    
10991    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] app_macro.c: Spawn extension (macro-exten-vm, s, 14) exited non-zero on 'PJSIP/200-00000011' in macro 'exten-vm'    
10992    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx.c: Spawn extension (from-internal, 111, 3) exited non-zero on 'PJSIP/200-00000011'    
10993    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx.c: Executing [h@from-internal:1] Macro("PJSIP/200-00000011", "hangupcall") in new stack    
10994    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx.c: Executing [s@macro-hangupcall:1] GotoIf("PJSIP/200-00000011", "1?theend") in new stack    
10995    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx_builtins.c: Goto (macro-hangupcall,s,3)    
10996    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx.c: Executing [s@macro-hangupcall:3] ExecIf("PJSIP/200-00000011", "0?Set(CDR(recordingfile)=)") in new stack    
10997    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx.c: Executing [s@macro-hangupcall:4] NoOp("PJSIP/200-00000011", "PJSIP/111-00000012 montior file= ") in new stack    
10998    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx.c: Executing [s@macro-hangupcall:5] GotoIf("PJSIP/200-00000011", "1?skipagi") in new stack    
10999    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx_builtins.c: Goto (macro-hangupcall,s,7)    
11000    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx.c: Executing [s@macro-hangupcall:7] Hangup("PJSIP/200-00000011", "") in new stack    
11001    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] app_macro.c: Spawn extension (macro-hangupcall, s, 7) exited non-zero on 'PJSIP/200-00000011' in macro 'hangupcall'    
11002    [2021-04-08 15:40:07] VERBOSE[32706][C-0000000a] pbx.c: Spawn extension (from-internal, h, 1) exited non-zero on 'PJSIP/200-00000011'

Audio Codecs in FreePBX are configured as follows:

Image 47078

Do you have any idea what the problem could be?

Under review

Hello.

Make sure that the RTP ports match in FreePBX and the i3 pro project. Make sure that RTP packets can travel between the panel and the intercom. Check the call not over the Internet, but in the local network. If the sound does not work in the local network, then leave only the 722 codec on FreePBX and in the i3 pro project and check it. If it doesn't help, disable 722 and enable 711 (alaw or ulaw).

Thanks for the help.

The RTP ports already match:

It's all in the local network.

I tried with 722 only, then when I press the call button nothing happens in iRidium, in the FreePBX log it shows:

[2021-04-09 13:32:46] NOTICE[21756] res_pjsip_sdp_rtp.c: No joint capabilities for 'audio' media stream between our configuration((g722)) and incoming SDP((ulaw|alaw))


I then tried only PCMU/ulaw and then only PCMA/alaw, both have the same result. No sound and constant errors in the log.

You are apparently using PJSIP. PJSIP support is only planned in i3 pro and we don't know when it will be in the release. In your case, we recommend using SIP instead of PJSIP.

I created a 'regular' SIP extension, then had to change the port in iRidium to 5160 and start the emulator 2 times. The first time it got stuck on "Registering...", the second time it says "On hook" and I can place a call with sound.

Thanks for the help!

Fixed

Hello.

Happy to help.

Closing the ticket. If you have any more questions, please contact us.

Hi,

There is one question, when I call from the intercom to i3 Pro and answer the call after 30 seconds it is terminated. 

The last log line is shown when the call gets disconnected:

I already increased the RTP timeout in FreePBX to 60 seconds, this does not make a difference.

The attached panel log has nothing to do with this error. What is the status of the SIP driver in i3 pro? I.e. "On hook"," Registration", etc.

The error is very similar to the action of the rtptimeout parameter in Asterisk (FreePBX).

The status is "Talking..." and after 30 seconds becomes "On Hook...".

I can call again after that and talk for 30 seconds again.

It looks like the SIP server is working. You need to examine the logs of the SIP server.

I managed to get it working. Changed the Doorbird extension from PJSIP to generic SIP and changed port numbers in FreePBX so that generic SIP is on 5060 since you can't change SIP server port number in Doorbird.

Now the call is not disconnected after 30 seconds.