Door phone video not working on PJSIP

Long story but I had a working system until the hard drive crashed.
Tried restoring from a backup to a clean install but that didn’t work. So this is a clean install of v16. I only mention the above because I had the Video door phones working so I know for a fact that it worked and this is some kind of config issue with v16 and pjsip.

On the old system,v14 upgraded to v15, everything worked but the Door Phone was on Chan_Sip rather than pjsip. Looking at version v16 it looks like chan_sip is going away so I’m attempting to set everything up as pjsip since it doesn’t even give me an option
Now for the oddity. If the door phone calls my extension, Grandstream GXV3380, I heard the audio but no video. If I let it go to voicemail for my extension and then playback the voicemail the video will start playing as part of the voicemail after about 3 seconds.

Any suggestions? I’ve enable h264 in video codec “Asterisk Sip Setting” which is all it took last time but this time it doesn’t work. I’ve also attempted to manual allow h264 in the extension “Allowed codecs” but it didn’t make any difference.

Any suggestions would be appreciated.
FreePBX novice so detail instructions or where to look would be appreciated. I’ve tried search but everything is for pervious version and this only cropped up with v16 and the removal of chan_sip.

Thanks

You’d need to provide a full SIP trace (pjsip set logger on) to see what works and what not.

jgttgns,
I’m not back at work until Monday but will see what I can do.
Any recommendations for a noob to get a basic understanding of sip trace and logging in FreePbx.
I’ve looked at the asterisk logs and have some basic understanding via the GUI but assume this is going to be via the CLI.
Willing to do the work to get a better understanding but would appreciate a good starting point.
Thanks

I think the Wikipedia article is sufficient to get a feeling of what this is all about: Session Initiation Protocol - Wikipedia. Of course, you could also study all the RFCs that are mentioned…

Yes, we are talking about the console here: asterisk -rvv, so Asterisk is not overly blathering. We will be looking at the SIP layer, so this will not really be about Asterisk and FreePBX which operate at a higher level. Depending on what door station you have, you could also enable logging for it additionally.

jgttgns,

Here is the output from a door phone to extension call.
Let me know if you see anything and thank you.
Angelica

== Using SIP RTP Audio TOS bits 184
== Using SIP RTP Audio TOS bits 184 in TCLASS field.
== Using SIP RTP Audio CoS mark 5
== Using SIP RTP Video TOS bits 136
== Using SIP RTP Video TOS bits 136 in TCLASS field.
== Using SIP RTP Video CoS mark 4
– Executing [801@from-internal:1] GotoIf(“PJSIP/691-00000050”, “0?cid”) in new stack
– Executing [801@from-internal:2] PlayTones(“PJSIP/691-00000050”, “ring”) in new stack
– Executing [801@from-internal:3] Progress(“PJSIP/691-00000050”, “”) in new stack
– Executing [801@from-internal:4] Macro(“PJSIP/691-00000050”, “user-callerid,”) in new stack
– Executing [s@macro-user-callerid:1] Set(“PJSIP/691-00000050”, “TOUCH_MONITOR=1650304716.83”) in new stack
– Executing [s@macro-user-callerid:2] Set(“PJSIP/691-00000050”, “CHANCONTEXT=”) in new stack
– Executing [s@macro-user-callerid:3] Set(“PJSIP/691-00000050”, “CHANCONTEXT=”) in new stack
– Executing [s@macro-user-callerid:4] Set(“PJSIP/691-00000050”, “CHANEXTENCONTEXT=691-00000050”) in new stack
– Executing [s@macro-user-callerid:5] Set(“PJSIP/691-00000050”, “CHANEXTEN=691-00000050”) in new stack
– Executing [s@macro-user-callerid:6] Set(“PJSIP/691-00000050”, “CALLERID(number)=691”) in new stack
– Executing [s@macro-user-callerid:7] Set(“PJSIP/691-00000050”, “AMPUSER=691”) in new stack
– Executing [s@macro-user-callerid:8] Set(“PJSIP/691-00000050”, “HOTDESCKCHAN=691-00000050”) in new stack
– Executing [s@macro-user-callerid:9] Set(“PJSIP/691-00000050”, “HOTDESKEXTEN=691”) in new stack
– Executing [s@macro-user-callerid:10] Set(“PJSIP/691-00000050”, “HOTDESKCALL=0”) in new stack
– Executing [s@macro-user-callerid:11] ExecIf(“PJSIP/691-00000050”, “0?Set(HOTDESKCALL=1)”) in new stack
– Executing [s@macro-user-callerid:12] ExecIf(“PJSIP/691-00000050”, “0?Set(CALLERID(name)=)”) in new stack
– Executing [s@macro-user-callerid:13] GotoIf(“PJSIP/691-00000050”, “0?report”) in new stack
– Executing [s@macro-user-callerid:14] ExecIf(“PJSIP/691-00000050”, “1?Set(REALCALLERIDNUM=691)”) in new stack
– Executing [s@macro-user-callerid:15] Set(“PJSIP/691-00000050”, “AMPUSER=691”) in new stack
– Executing [s@macro-user-callerid:16] GotoIf(“PJSIP/691-00000050”, “0?limit”) in new stack
– Executing [s@macro-user-callerid:17] Set(“PJSIP/691-00000050”, “AMPUSERCIDNAME=Front Door”) in new stack
– Executing [s@macro-user-callerid:18] ExecIf(“PJSIP/691-00000050”, “0?Set(__CIDMASQUERADING=TRUE)”) in new stack
– Executing [s@macro-user-callerid:19] GotoIf(“PJSIP/691-00000050”, “0?report”) in new stack
– Executing [s@macro-user-callerid:20] Set(“PJSIP/691-00000050”, “AMPUSERCID=691”) in new stack
– Executing [s@macro-user-callerid:21] Set(“PJSIP/691-00000050”, “__DIAL_OPTIONS=HhTtr”) in new stack
– Executing [s@macro-user-callerid:22] Set(“PJSIP/691-00000050”, “CALLERID(all)=“Front Door” <691>”) in new stack
– Executing [s@macro-user-callerid:23] ExecIf(“PJSIP/691-00000050”, “0?Set(CUSDIAL=)”) in new stack
– Executing [s@macro-user-callerid:24] ExecIf(“PJSIP/691-00000050”, “0?Set(CALLERID(all)=“Front Door” <691>)”) in new stack
– Executing [s@macro-user-callerid:25] GotoIf(“PJSIP/691-00000050”, “0?limit”) in new stack
– Executing [s@macro-user-callerid:26] ExecIf(“PJSIP/691-00000050”, “0?Set(GROUP(concurrency_limit)=691)”) in new stack
– Executing [s@macro-user-callerid:27] ExecIf(“PJSIP/691-00000050”, “0?Set(CHANNEL(language)=)”) in new stack
– Executing [s@macro-user-callerid:28] NoOp(“PJSIP/691-00000050”, “Macro Depth is 1”) in new stack
– Executing [s@macro-user-callerid:29] GotoIf(“PJSIP/691-00000050”, “1?report2:macroerror”) in new stack
– Goto (macro-user-callerid,s,30)
– Executing [s@macro-user-callerid:30] GotoIf(“PJSIP/691-00000050”, “0?continue”) in new stack
– Executing [s@macro-user-callerid:31] ExecIf(“PJSIP/691-00000050”, “1?Set(__CALLEE_ACCOUNCODE=)”) in new stack
– Executing [s@macro-user-callerid:32] Set(“PJSIP/691-00000050”, “__TTL=64”) in new stack
– Executing [s@macro-user-callerid:33] GotoIf(“PJSIP/691-00000050”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,49)
– Executing [s@macro-user-callerid:49] Set(“PJSIP/691-00000050”, “CALLERID(number)=691”) in new stack
– Executing [s@macro-user-callerid:50] Set(“PJSIP/691-00000050”, “CALLERID(name)=Front Door”) in new stack
– Executing [s@macro-user-callerid:51] GotoIf(“PJSIP/691-00000050”, “0?cnum”) in new stack
– Executing [s@macro-user-callerid:52] Set(“PJSIP/691-00000050”, “CDR(cnam)=Front Door”) in new stack
– Executing [s@macro-user-callerid:53] Set(“PJSIP/691-00000050”, “CDR(cnum)=691”) in new stack
– Executing [s@macro-user-callerid:54] Set(“PJSIP/691-00000050”, “CHANNEL(language)=en”) in new stack
– Executing [801@from-internal:5] Macro(“PJSIP/691-00000050”, “blkvm-setifempty,”) in new stack
– Executing [s@macro-blkvm-setifempty:1] GotoIf(“PJSIP/691-00000050”, “1?init”) in new stack
– Goto (macro-blkvm-setifempty,s,4)
– Executing [s@macro-blkvm-setifempty:4] Set(“PJSIP/691-00000050”, “__BLKVM_CHANNEL=PJSIP/691-00000050”) in new stack
– Executing [s@macro-blkvm-setifempty:5] Set(“PJSIP/691-00000050”, “SHARED(BLKVM,PJSIP/691-00000050)=TRUE”) in new stack
– Executing [s@macro-blkvm-setifempty:6] Set(“PJSIP/691-00000050”, “GOSUB_RETVAL=TRUE”) in new stack
– Executing [s@macro-blkvm-setifempty:7] MacroExit(“PJSIP/691-00000050”, “”) in new stack
– Executing [801@from-internal:6] GotoIf(“PJSIP/691-00000050”, “1?skipov”) in new stack
– Goto (from-internal,801,9)
– Executing [801@from-internal:9] Set(“PJSIP/691-00000050”, “RRNODEST=”) in new stack
– Executing [801@from-internal:10] Set(“PJSIP/691-00000050”, “__NODEST=801”) in new stack
– Executing [801@from-internal:11] GosubIf(“PJSIP/691-00000050”, “0?sub-rgsetcid,s,1()”) in new stack
– Executing [801@from-internal:12] Gosub(“PJSIP/691-00000050”, “sub-record-check,s,1(rg,801,dontcare)”) in new stack
– Executing [s@sub-record-check:1] GotoIf(“PJSIP/691-00000050”, “0?initialized”) in new stack
– Executing [s@sub-record-check:2] Set(“PJSIP/691-00000050”, “__REC_STATUS=INITIALIZED”) in new stack
– Executing [s@sub-record-check:3] Set(“PJSIP/691-00000050”, “NOW=1650304716”) in new stack
– Executing [s@sub-record-check:4] Set(“PJSIP/691-00000050”, “__DAY=18”) in new stack
– Executing [s@sub-record-check:5] Set(“PJSIP/691-00000050”, “__MONTH=04”) in new stack
– Executing [s@sub-record-check:6] Set(“PJSIP/691-00000050”, “__YEAR=2022”) in new stack
– Executing [s@sub-record-check:7] Set(“PJSIP/691-00000050”, “__TIMESTR=20220418-115836”) in new stack
– Executing [s@sub-record-check:8] Set(“PJSIP/691-00000050”, “__FROMEXTEN=691”) in new stack
– Executing [s@sub-record-check:9] Set(“PJSIP/691-00000050”, “__MON_FMT=wav”) in new stack
– Executing [s@sub-record-check:10] NoOp(“PJSIP/691-00000050”, “Recordings initialized”) in new stack
– Executing [s@sub-record-check:11] ExecIf(“PJSIP/691-00000050”, “0?Set(ARG3=dontcare)”) in new stack
– Executing [s@sub-record-check:12] Set(“PJSIP/691-00000050”, “REC_POLICY_MODE_SAVE=”) in new stack
– Executing [s@sub-record-check:13] ExecIf(“PJSIP/691-00000050”, “0?Set(REC_STATUS=NO)”) in new stack
– Executing [s@sub-record-check:14] GotoIf(“PJSIP/691-00000050”, “2?checkaction”) in new stack
– Goto (sub-record-check,s,17)
– Executing [s@sub-record-check:17] GotoIf(“PJSIP/691-00000050”, “0?sub-record-check,rg,1”) in new stack
– Executing [s@sub-record-check:18] NoOp(“PJSIP/691-00000050”, “Generic rg Recording Check - 691 801”) in new stack
– Executing [s@sub-record-check:19] Gosub(“PJSIP/691-00000050”, “recordcheck,1(dontcare,rg,801)”) in new stack
– Executing [recordcheck@sub-record-check:1] NoOp(“PJSIP/691-00000050”, “Starting recording check against dontcare”) in new stack
– Executing [recordcheck@sub-record-check:2] Goto(“PJSIP/691-00000050”, “dontcare”) in new stack
– Goto (sub-record-check,recordcheck,3)
– Executing [recordcheck@sub-record-check:3] Return(“PJSIP/691-00000050”, “”) in new stack
– Executing [s@sub-record-check:20] Return(“PJSIP/691-00000050”, “”) in new stack
– Executing [801@from-internal:13] Set(“PJSIP/691-00000050”, “RingGroupMethod=ringall”) in new stack
– Executing [801@from-internal:14] GotoIf(“PJSIP/691-00000050”, “0?DIALGRP”) in new stack
– Executing [801@from-internal:15] Answer(“PJSIP/691-00000050”, “”) in new stack
– Executing [801@from-internal:16] Wait(“PJSIP/691-00000050”, “1”) in new stack
– Executing [801@from-internal:17] Playback(“PJSIP/691-00000050”, “custom/Door_Phone_announcement_1”) in new stack
– <PJSIP/691-00000050> Playing ‘custom/Door_Phone_announcement_1.slin’ (language ‘en’)
– Executing [801@from-internal:18] Set(“PJSIP/691-00000050”, “__ALT_CONFIRM_MSG=”) in new stack
– Executing [801@from-internal:19] GotoIf(“PJSIP/691-00000050”, “0?RGVQANNOUNCE:NORGVQANNOUNCE”) in new stack
– Goto (from-internal,801,22)
– Executing [801@from-internal:22] Macro(“PJSIP/691-00000050”, “dial,30,HhTtrQ(NO_ANSWER),602-603-605”) in new stack
– Executing [s@macro-dial:1] NoOp(“PJSIP/691-00000050”, "Blind Transfer: , Attended Transfer: , User: 691, Alert Info: ") in new stack
– Executing [s@macro-dial:2] Set(“PJSIP/691-00000050”, “__CRM_SOURCE=691”) in new stack
– Executing [s@macro-dial:3] ExecIf(“PJSIP/691-00000050”, “1?Set(ALERT_INFO=)”) in new stack
– Executing [s@macro-dial:4] ExecIf(“PJSIP/691-00000050”, “0?Set(ALERT_INFO=)”) in new stack
– Executing [s@macro-dial:5] ExecIf(“PJSIP/691-00000050”, “0?Set(ALERT_INFO=)”) in new stack
– Executing [s@macro-dial:6] ExecIf(“PJSIP/691-00000050”, “0?Set(CHANNEL(musicclass)=)”) in new stack
– Executing [s@macro-dial:7] AGI(“PJSIP/691-00000050”, “agi://127.0.0.1/dialparties.agi”) in new stack
agi://127.0.0.1/dialparties.agi: Starting New Dialparties.agi
agi://127.0.0.1/dialparties.agi: Caller ID name is ‘Front Door’ number is ‘691’
agi://127.0.0.1/dialparties.agi: CW Ignore is:
agi://127.0.0.1/dialparties.agi: CF Ignore is:
agi://127.0.0.1/dialparties.agi: CW IN_USE/BUSY is: 1
agi://127.0.0.1/dialparties.agi: Ringgroup confirm is :
agi://127.0.0.1/dialparties.agi: Methodology of ring is ‘ringall’
– agi://127.0.0.1/dialparties.agi: Added extension 602 to extension map
– agi://127.0.0.1/dialparties.agi: Added extension 603 to extension map
– agi://127.0.0.1/dialparties.agi: Added extension 605 to extension map
– agi://127.0.0.1/dialparties.agi: Extension 602 cf is disabled
– agi://127.0.0.1/dialparties.agi: Extension 603 cf is disabled
– agi://127.0.0.1/dialparties.agi: Extension 605 cf is disabled
– agi://127.0.0.1/dialparties.agi: Extension 602 do not disturb is disabled
– agi://127.0.0.1/dialparties.agi: Extension 603 do not disturb is disabled
– agi://127.0.0.1/dialparties.agi: Extension 605 do not disturb is disabled
== agi://127.0.0.1/dialparties.agi: Discovered PJSIP Endpoint PJSIP/602
– agi://127.0.0.1/dialparties.agi: Ended up with real PJSIP Dial string PJSIP/602/sip:[email protected]:5060
– agi://127.0.0.1/dialparties.agi: dbset CALLTRACE/602 to 691
== agi://127.0.0.1/dialparties.agi: Discovered PJSIP Endpoint PJSIP/603
– agi://127.0.0.1/dialparties.agi: Ended up with real PJSIP Dial string PJSIP/603/sip:[email protected]:5060
– agi://127.0.0.1/dialparties.agi: dbset CALLTRACE/603 to 691
== agi://127.0.0.1/dialparties.agi: Discovered PJSIP Endpoint PJSIP/605
– agi://127.0.0.1/dialparties.agi: Ended up with real PJSIP Dial string PJSIP/605/sip:[email protected]:5160&PJSIP/605/sip:[email protected]:5060
– agi://127.0.0.1/dialparties.agi: dbset CALLTRACE/605 to 691
– agi://127.0.0.1/dialparties.agi: Filtered ARG3: 602-603-605
agi://127.0.0.1/dialparties.agi: RVOL_MODE ‘’
agi://127.0.0.1/dialparties.agi: RVOL is:
agi://127.0.0.1/dialparties.agi: RVOLPARENT is:
– <PJSIP/691-00000050>AGI Script agi://127.0.0.1/dialparties.agi completed, returning 0
– Executing [s@macro-dial:8] GotoIf(“PJSIP/691-00000050”, “1?normdial”) in new stack
– Goto (macro-dial,s,11)
– Executing [s@macro-dial:11] NoOp(“PJSIP/691-00000050”, “Returned from dialparties with groups to dial”) in new stack
– Executing [s@macro-dial:12] NoOp(“PJSIP/691-00000050”, "ringall array ") in new stack
– Executing [s@macro-dial:13] NoOp(“PJSIP/691-00000050”, "ds= PJSIP/602/sip:[email protected]:5060&PJSIP/603/sip:[email protected]:5060&PJSIP/605/sip:[email protected]:5160&PJSIP/605/sip:[email protected]:5060,30,HhTtrQ(NO_ANSWER)M(auto-blkvm) ") in new stack
– Executing [s@macro-dial:14] NoOp(“PJSIP/691-00000050”, "dsextra= ") in new stack
– Executing [s@macro-dial:15] Set(“PJSIP/691-00000050”, “ds=PJSIP/602/sip:[email protected]:5060&PJSIP/603/sip:[email protected]:5060&PJSIP/605/sip:[email protected]:5160&PJSIP/605/sip:[email protected]:5060,30,HhTtrQ(NO_ANSWER)M(auto-blkvm)”) in new stack
– Executing [s@macro-dial:16] NoOp(“PJSIP/691-00000050”, “ds= PJSIP/602/sip:[email protected]:5060&PJSIP/603/sip:[email protected]:5060&PJSIP/605/sip:[email protected]:5160&PJSIP/605/sip:[email protected]:5060,30,HhTtrQ(NO_ANSWER)M(auto-blkvm)”) in new stack
– Executing [s@macro-dial:17] Set(“PJSIP/691-00000050”, “__FMGL_DIAL=”) in new stack
– Executing [s@macro-dial:18] Set(“PJSIP/691-00000050”, “LOOPCNT=3”) in new stack
– Executing [s@macro-dial:19] Set(“PJSIP/691-00000050”, “ITER=1”) in new stack
– Executing [s@macro-dial:20] Set(“PJSIP/691-00000050”, “__EXTTOCALL=602”) in new stack
– Executing [s@macro-dial:21] NoOp(“PJSIP/691-00000050”, “Working with 602”) in new stack
– Executing [s@macro-dial:22] ExecIf(“PJSIP/691-00000050”, “0?Set(HASH(__SIPHEADERS,Alert-Info)=Normal;volume=)”) in new stack
– Executing [s@macro-dial:23] ExecIf(“PJSIP/691-00000050”, “0?Set(HASH(__SIPHEADERS,Alert-Info)=Normal;volume=)”) in new stack
– Executing [s@macro-dial:24] Set(“PJSIP/691-00000050”, “ITER=2”) in new stack
– Executing [s@macro-dial:25] GotoIf(“PJSIP/691-00000050”, “1?ndloopbegin”) in new stack
– Goto (macro-dial,s,20)
– Executing [s@macro-dial:20] Set(“PJSIP/691-00000050”, “__EXTTOCALL=603”) in new stack
– Executing [s@macro-dial:21] NoOp(“PJSIP/691-00000050”, “Working with 603”) in new stack
– Executing [s@macro-dial:22] ExecIf(“PJSIP/691-00000050”, “0?Set(HASH(__SIPHEADERS,Alert-Info)=Normal;volume=)”) in new stack
– Executing [s@macro-dial:23] ExecIf(“PJSIP/691-00000050”, “0?Set(HASH(__SIPHEADERS,Alert-Info)=Normal;volume=)”) in new stack
– Executing [s@macro-dial:24] Set(“PJSIP/691-00000050”, “ITER=3”) in new stack
– Executing [s@macro-dial:25] GotoIf(“PJSIP/691-00000050”, “1?ndloopbegin”) in new stack
– Goto (macro-dial,s,20)
– Executing [s@macro-dial:20] Set(“PJSIP/691-00000050”, “__EXTTOCALL=605”) in new stack
– Executing [s@macro-dial:21] NoOp(“PJSIP/691-00000050”, “Working with 605”) in new stack
– Executing [s@macro-dial:22] ExecIf(“PJSIP/691-00000050”, “0?Set(HASH(__SIPHEADERS,Alert-Info)=Normal;volume=)”) in new stack
– Executing [s@macro-dial:23] ExecIf(“PJSIP/691-00000050”, “0?Set(HASH(__SIPHEADERS,Alert-Info)=Normal;volume=)”) in new stack
– Executing [s@macro-dial:24] Set(“PJSIP/691-00000050”, “ITER=4”) in new stack
– Executing [s@macro-dial:25] GotoIf(“PJSIP/691-00000050”, “0?ndloopbegin”) in new stack
– Executing [s@macro-dial:26] Macro(“PJSIP/691-00000050”, “dial-ringall-predial-hook,”) in new stack
– Executing [s@macro-dial-ringall-predial-hook:1] MacroExit(“PJSIP/691-00000050”, “”) in new stack
– Executing [s@macro-dial:27] ExecIf(“PJSIP/691-00000050”, “0?Set(CWRING=r(callwaiting)):Set(CWRING=)”) in new stack
– Executing [s@macro-dial:28] ExecIf(“PJSIP/691-00000050”, “0?Set(ds=PJSIP/602/sip:[email protected]:5060&PJSIP/603/sip:[email protected]:5060&PJSIP/605/sip:[email protected]:5160&PJSIP/605/sip:[email protected]:5060,30,HhTtrQ(NO_ANSWER)M(auto-blkvm)g)”) in new stack
– Executing [s@macro-dial:29] Dial(“PJSIP/691-00000050”, “PJSIP/602/sip:[email protected]:5060&PJSIP/603/sip:[email protected]:5060&PJSIP/605/sip:[email protected]:5160&PJSIP/605/sip:[email protected]:5060,30,HhTtrQ(NO_ANSWER)M(auto-blkvm)b(func-apply-sipheaders^s^1),”) in new stack
– PJSIP/602-00000051 Internal Gosub(func-apply-sipheaders,s,1) start
– Executing [s@func-apply-sipheaders:1] ExecIf(“PJSIP/602-00000051”, “0?Set(CHANNEL(hangup_handler_push)=crm-hangup,s,1)”) in new stack
– Executing [s@func-apply-sipheaders:2] NoOp(“PJSIP/602-00000051”, “Applying SIP Headers to channel PJSIP/602-00000051”) in new stack
– Executing [s@func-apply-sipheaders:3] Set(“PJSIP/602-00000051”, “TECH=PJSIP”) in new stack
– Executing [s@func-apply-sipheaders:4] Set(“PJSIP/602-00000051”, “SIPHEADERKEYS=”) in new stack
– Executing [s@func-apply-sipheaders:5] While(“PJSIP/602-00000051”, “0”) in new stack
– Jumping to priority 11
– Executing [s@func-apply-sipheaders:12] Return(“PJSIP/602-00000051”, “”) in new stack
== Spawn extension (from-internal, 801, 1) exited non-zero on ‘PJSIP/602-00000051’
– PJSIP/602-00000051 Internal Gosub(func-apply-sipheaders,s,1) complete GOSUB_RETVAL=
– PJSIP/603-00000052 Internal Gosub(func-apply-sipheaders,s,1) start
– Executing [s@func-apply-sipheaders:1] ExecIf(“PJSIP/603-00000052”, “0?Set(CHANNEL(hangup_handler_push)=crm-hangup,s,1)”) in new stack
– Executing [s@func-apply-sipheaders:2] NoOp(“PJSIP/603-00000052”, “Applying SIP Headers to channel PJSIP/603-00000052”) in new stack
– Executing [s@func-apply-sipheaders:3] Set(“PJSIP/603-00000052”, “TECH=PJSIP”) in new stack
– Executing [s@func-apply-sipheaders:4] Set(“PJSIP/603-00000052”, “SIPHEADERKEYS=”) in new stack
– Executing [s@func-apply-sipheaders:5] While(“PJSIP/603-00000052”, “0”) in new stack
– Jumping to priority 11
– Executing [s@func-apply-sipheaders:12] Return(“PJSIP/603-00000052”, “”) in new stack
== Spawn extension (from-internal, 801, 1) exited non-zero on ‘PJSIP/603-00000052’
– PJSIP/603-00000052 Internal Gosub(func-apply-sipheaders,s,1) complete GOSUB_RETVAL=
– PJSIP/605-00000053 Internal Gosub(func-apply-sipheaders,s,1) start
– Executing [s@func-apply-sipheaders:1] ExecIf(“PJSIP/605-00000053”, “0?Set(CHANNEL(hangup_handler_push)=crm-hangup,s,1)”) in new stack
– Executing [s@func-apply-sipheaders:2] NoOp(“PJSIP/605-00000053”, “Applying SIP Headers to channel PJSIP/605-00000053”) in new stack
– Executing [s@func-apply-sipheaders:3] Set(“PJSIP/605-00000053”, “TECH=PJSIP”) in new stack
– Executing [s@func-apply-sipheaders:4] Set(“PJSIP/605-00000053”, “SIPHEADERKEYS=”) in new stack
– Executing [s@func-apply-sipheaders:5] While(“PJSIP/605-00000053”, “0”) in new stack
– Jumping to priority 11
– Executing [s@func-apply-sipheaders:12] Return(“PJSIP/605-00000053”, “”) in new stack
== Spawn extension (from-internal, 801, 1) exited non-zero on ‘PJSIP/605-00000053’
– PJSIP/605-00000053 Internal Gosub(func-apply-sipheaders,s,1) complete GOSUB_RETVAL=
– PJSIP/605-00000054 Internal Gosub(func-apply-sipheaders,s,1) start
– Executing [s@func-apply-sipheaders:1] ExecIf(“PJSIP/605-00000054”, “0?Set(CHANNEL(hangup_handler_push)=crm-hangup,s,1)”) in new stack
– Executing [s@func-apply-sipheaders:2] NoOp(“PJSIP/605-00000054”, “Applying SIP Headers to channel PJSIP/605-00000054”) in new stack
– Executing [s@func-apply-sipheaders:3] Set(“PJSIP/605-00000054”, “TECH=PJSIP”) in new stack
– Executing [s@func-apply-sipheaders:4] Set(“PJSIP/605-00000054”, “SIPHEADERKEYS=”) in new stack
– Executing [s@func-apply-sipheaders:5] While(“PJSIP/605-00000054”, “0”) in new stack
– Jumping to priority 11
– Executing [s@func-apply-sipheaders:12] Return(“PJSIP/605-00000054”, “”) in new stack
== Spawn extension (from-internal, 801, 1) exited non-zero on ‘PJSIP/605-00000054’
– PJSIP/605-00000054 Internal Gosub(func-apply-sipheaders,s,1) complete GOSUB_RETVAL=
– Called PJSIP/602/sip:[email protected]:5060
– Called PJSIP/603/sip:[email protected]:5060
– Called PJSIP/605/sip:[email protected]:5160
– Called PJSIP/605/sip:[email protected]:5060
== Using SIP RTP Audio TOS bits 184
== Using SIP RTP Audio TOS bits 184 in TCLASS field.
== Using SIP RTP Audio CoS mark 5
== Using SIP RTP Video TOS bits 136
== Using SIP RTP Video TOS bits 136 in TCLASS field.
== Using SIP RTP Video CoS mark 4
== Using SIP RTP Audio TOS bits 184
== Using SIP RTP Audio TOS bits 184 in TCLASS field.
== Using SIP RTP Audio CoS mark 5
== Using SIP RTP Video TOS bits 136
== Using SIP RTP Video TOS bits 136 in TCLASS field.
== Using SIP RTP Video CoS mark 4
== Using SIP RTP Audio TOS bits 184
== Using SIP RTP Audio TOS bits 184 in TCLASS field.
== Using SIP RTP Audio CoS mark 5
== Using SIP RTP Video TOS bits 136
== Using SIP RTP Video TOS bits 136 in TCLASS field.
== Using SIP RTP Video CoS mark 4
== Using SIP RTP Audio TOS bits 184
== Using SIP RTP Audio TOS bits 184 in TCLASS field.
== Using SIP RTP Audio CoS mark 5
== Using SIP RTP Video TOS bits 136
== Using SIP RTP Video TOS bits 136 in TCLASS field.
== Using SIP RTP Video CoS mark 4
– PJSIP/605-00000054 connected line has changed. Saving it until answer for PJSIP/691-00000050
– PJSIP/605-00000053 connected line has changed. Saving it until answer for PJSIP/691-00000050
– PJSIP/603-00000052 connected line has changed. Saving it until answer for PJSIP/691-00000050
– PJSIP/602-00000051 connected line has changed. Saving it until answer for PJSIP/691-00000050
– PJSIP/602-00000051 is ringing
– PJSIP/605-00000053 is ringing
– PJSIP/605-00000054 is ringing
– PJSIP/603-00000052 is ringing
– PJSIP/602-00000051 answered PJSIP/691-00000050
– Executing [s@macro-auto-blkvm:1] Set(“PJSIP/602-00000051”, “__MACRO_RESULT=”) in new stack
– Executing [s@macro-auto-blkvm:2] Set(“PJSIP/602-00000051”, “CFIGNORE=”) in new stack
– Executing [s@macro-auto-blkvm:3] Set(“PJSIP/602-00000051”, “MASTER_CHANNEL(CFIGNORE)=”) in new stack
– Executing [s@macro-auto-blkvm:4] Set(“PJSIP/602-00000051”, “FORWARD_CONTEXT=from-internal”) in new stack
– Executing [s@macro-auto-blkvm:5] Set(“PJSIP/602-00000051”, “MASTER_CHANNEL(FORWARD_CONTEXT)=from-internal”) in new stack
– Executing [s@macro-auto-blkvm:6] Macro(“PJSIP/602-00000051”, “blkvm-clr,”) in new stack
– Executing [s@macro-blkvm-clr:1] Set(“PJSIP/602-00000051”, “SHARED(BLKVM,PJSIP/691-00000050)=”) in new stack
– Executing [s@macro-blkvm-clr:2] Set(“PJSIP/602-00000051”, “GOSUB_RETVAL=”) in new stack
– Executing [s@macro-blkvm-clr:3] MacroExit(“PJSIP/602-00000051”, “”) in new stack
– Executing [s@macro-auto-blkvm:7] ExecIf(“PJSIP/602-00000051”, “0?Set(MASTER_CHANNEL(CONNECTEDLINE(num))=602/sip:[email protected]:5060)”) in new stack
– Executing [s@macro-auto-blkvm:8] ExecIf(“PJSIP/602-00000051”, “0?Set(MASTER_CHANNEL(CONNECTEDLINE(name))=)”) in new stack
– Channel PJSIP/602-00000051 joined ‘simple_bridge’ basic-bridge
– Channel PJSIP/691-00000050 joined ‘simple_bridge’ basic-bridge
– Channel PJSIP/602-00000051 left ‘simple_bridge’ basic-bridge
– Channel PJSIP/691-00000050 left ‘simple_bridge’ basic-bridge
== Spawn extension (macro-dial, s, 29) exited non-zero on ‘PJSIP/691-00000050’ in macro ‘dial’
== Spawn extension (from-internal, 801, 22) exited non-zero on ‘PJSIP/691-00000050’
– Executing [h@from-internal:1] Macro(“PJSIP/691-00000050”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“PJSIP/691-00000050”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,3)
– Executing [s@macro-hangupcall:3] ExecIf(“PJSIP/691-00000050”, “0?Set(CDR(recordingfile)=)”) in new stack
– Executing [s@macro-hangupcall:4] Hangup(“PJSIP/691-00000050”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 4) exited non-zero on ‘PJSIP/691-00000050’ in macro ‘hangupcall’
== Spawn extension (from-internal, h, 1) exited non-zero on ‘PJSIP/691-00000050’
freepbx*CLI>

You haven’t turned on pjsip logging, and you seem to have screen scraped, rather than using the log files, so there are no timestamps, but this call looks to be successful.

hi @Angelica ,

We had a similar issue on 2N… fixed it by enabling “Use sendrecv” Attribute for Video on the door phone settings.

1 Like

dotcom,
That seems to have fixed it as the call I just tried connected with both audio and video.
Thanks you so very much. I’ve been bang my head against a wall trying to figure this out.
Angelica

P.S. Does anyone know a good tutorial on debugging pjsip? I’ve been fighting trying to figure that out as well and I can find stuff on chan_sip debugging but not so much on pjsip.
I found some very basics “pjsip set logger host xx.xx.xx.xx/255.255.255.255” but I’m not seeing anything that will let me log the output to a file instead of the console and google isn’t really bring up anything that was really helpful.

Isn’t that the default setting?

on 2N… it’s not enabled by default if I’m not mistaken.

Regards to the logger: If you execute:

pjsip set logger host X.X.X.X/255.255.255.0

… you should see the output in /var/log/asterisk/full

Thank you everyone for all of the help getting this working.

Why anybody here to debug use:

sngrep -O recordtofile

?

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