Dahua IP Video Door phone

Discussion in 'Alarm & Security Systems' started by k0ral, Apr 1, 2016.

Share This Page

  1. k0ral

    k0ral n3wb

    Joined:
    Feb 10, 2016
    Messages:
    4
    Likes Received:
    0
  2. bp2008

    bp2008 Staff Member

    Joined:
    Mar 10, 2014
    Messages:
    4,112
    Likes Received:
    1,364
    I would just hope they have the latency down compared to their other IP cameras if it would be used for two way communication with someone. Nobody has anything like this where I live :)
     
  3. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    my latest Dahua 4MP IVS camera has two-way talk, and something very interesting in the configuration.. a bunch of SIP Settings, clearly the translations are very poor and Ive not found any documentation..

    but if if you can hook up its mic/speaker to a VoIP SIP server; the latency for voice would be extremely low.. Kinda curious to play with it since I have an asterisk server.. would be cool to have an extension to call from my phones to talk to someone at the front door.
     

    Attached Files:

  4. ruppmeister

    ruppmeister Getting the hang of it

    Joined:
    Apr 15, 2015
    Messages:
    669
    Likes Received:
    96
    Or better even, have the camera motion/line cross/face detect trigger the VoIP call to you so you know when someone is there and can pickup quickly :)
     
  5. k0ral

    k0ral n3wb

    Joined:
    Feb 10, 2016
    Messages:
    4
    Likes Received:
    0
    I talked with the technician of the online store and he told me that the internal unit has a VoIP server.
    I wanted to know if I can use my own VoIP server but he couldn't answer me. I wanted to try not buying the internal unit and use only the external unit with an Android tablet or something else.
    By the way, I am not an expert of VoIP SIP server...I bought even the internal unit because my father needs a video door phone :)
    I am waiting to receive it. If someone (VoIP SIP expert) wants to do some tests with me I am available and curious :)
     
  6. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    Hi there,

    Anyone got video working over SIP? I have one of these VTO2000A intercoms. I am able to initiate SIP calls when the button is pressed, but no idea if it's possible to get video in the call.

    Thanks!
     
  7. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    can you get a sip trace? should be able to see if its advertising video capabilities and what they are.
     
  8. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    I will give it a go. Is that a matter of turning on verbose debugging in Asterisk?
     
  9. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    sip debugging should do it
     
  10. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    Hi again,

    I will paste my asterisk debug info here. Excuse me if it's a bit too verbose.

    This first post shows a successful call when I configured my VTO2000A (extension 8001) to directly call my laptop which has X-Lite installed (extension 8002). When the VTO button was pressed, it called my laptop. I then answered and was able to keep the call active without issue. This scenario works fine.

    VTO calling other extension directly

    Asterisk 13.11.2, Copyright (C) 1999 - 2014, Digium, Inc. and others.
    Created by Mark Spencer <markster@digium.com>
    Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
    This is free software, with components licensed under the GNU General Public
    License version 2 and other licenses; you are welcome to redistribute it under
    certain conditions. Type 'core show license' for details.
    =========================================================================
    Connected to Asterisk 13.11.2 currently running on raspbx (pid = 1809)
    == Using SIP VIDEO TOS bits 136
    == Using SIP VIDEO CoS mark 6
    == Using SIP RTP TOS bits 184
    == Using SIP RTP CoS mark 5
    -- Executing [8002@from-internal:1] Set("SIP/8001-00000002", "__RINGTIMER=15") in new stack
    -- Executing [8002@from-internal:2] Macro("SIP/8001-00000002", "exten-vm,novm,8002,0,0,0") in new stack
    -- Executing [s@macro-exten-vm:1] Macro("SIP/8001-00000002", "user-callerid,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("SIP/8001-00000002", "TOUCH_MONITOR=1475821418.2") in new stack
    -- Executing [s@macro-user-callerid:2] Set("SIP/8001-00000002", "AMPUSER=8001") in new stack
    -- Executing [s@macro-user-callerid:3] GotoIf("SIP/8001-00000002", "0?report") in new stack
    -- Executing [s@macro-user-callerid:4] ExecIf("SIP/8001-00000002", "1?Set(REALCALLERIDNUM=8001)") in new stack
    -- Executing [s@macro-user-callerid:5] Set("SIP/8001-00000002", "AMPUSER=8001") in new stack
    -- Executing [s@macro-user-callerid:6] GotoIf("SIP/8001-00000002", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:7] Set("SIP/8001-00000002", "AMPUSERCIDNAME=Doorbell") in new stack
    -- Executing [s@macro-user-callerid:8] GotoIf("SIP/8001-00000002", "0?report") in new stack
    -- Executing [s@macro-user-callerid:9] Set("SIP/8001-00000002", "AMPUSERCID=8001") in new stack
    -- Executing [s@macro-user-callerid:10] Set("SIP/8001-00000002", "__DIAL_OPTIONS=Ttr") in new stack
    -- Executing [s@macro-user-callerid:11] Set("SIP/8001-00000002", "CALLERID(all)="Doorbell" <8001>") in new stack
    -- Executing [s@macro-user-callerid:12] GotoIf("SIP/8001-00000002", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:13] ExecIf("SIP/8001-00000002", "0?Set(GROUP(concurrency_limit)=8001)") in new stack
    -- Executing [s@macro-user-callerid:14] GotoIf("SIP/8001-00000002", "0?continue") in new stack
    -- Executing [s@macro-user-callerid:15] Set("SIP/8001-00000002", "__TTL=64") in new stack
    -- Executing [s@macro-user-callerid:16] GotoIf("SIP/8001-00000002", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,27)
    -- Executing [s@macro-user-callerid:27] Set("SIP/8001-00000002", "CALLERID(number)=8001") in new stack
    -- Executing [s@macro-user-callerid:28] Set("SIP/8001-00000002", "CALLERID(name)=Doorbell") in new stack
    -- Executing [s@macro-user-callerid:29] GotoIf("SIP/8001-00000002", "0?cnum") in new stack
    -- Executing [s@macro-user-callerid:30] Set("SIP/8001-00000002", "CDR(cnam)=Doorbell") in new stack
    -- Executing [s@macro-user-callerid:31] Set("SIP/8001-00000002", "CDR(cnum)=8001") in new stack
    -- Executing [s@macro-user-callerid:32] Set("SIP/8001-00000002", "CHANNEL(language)=en") in new stack
    -- Executing [s@macro-exten-vm:2] Set("SIP/8001-00000002", "RingGroupMethod=none") in new stack
    -- Executing [s@macro-exten-vm:3] Set("SIP/8001-00000002", "__EXTTOCALL=8002") in new stack
    -- Executing [s@macro-exten-vm:4] Set("SIP/8001-00000002", "__PICKUPMARK=8002") in new stack
    -- Executing [s@macro-exten-vm:5] Set("SIP/8001-00000002", "RT=") in new stack
    -- Executing [s@macro-exten-vm:6] Gosub("SIP/8001-00000002", "sub-record-check,s,1(exten,8002,dontcare)") in new stack
    -- Executing [s@sub-record-check:1] GotoIf("SIP/8001-00000002", "0?initialized") in new stack
    -- Executing [s@sub-record-check:2] Set("SIP/8001-00000002", "__REC_STATUS=INITIALIZED") in new stack
    -- Executing [s@sub-record-check:3] Set("SIP/8001-00000002", "NOW=1475821418") in new stack
    -- Executing [s@sub-record-check:4] Set("SIP/8001-00000002", "__DAY=07") in new stack
    -- Executing [s@sub-record-check:5] Set("SIP/8001-00000002", "__MONTH=10") in new stack
    -- Executing [s@sub-record-check:6] Set("SIP/8001-00000002", "__YEAR=2016") in new stack
    -- Executing [s@sub-record-check:7] Set("SIP/8001-00000002", "__TIMESTR=20161007-172338") in new stack
    -- Executing [s@sub-record-check:8] Set("SIP/8001-00000002", "__FROMEXTEN=8001") in new stack
    -- Executing [s@sub-record-check:9] Set("SIP/8001-00000002", "__MON_FMT=wav") in new stack
    -- Executing [s@sub-record-check:10] NoOp("SIP/8001-00000002", "Recordings initialized") in new stack
    -- Executing [s@sub-record-check:11] ExecIf("SIP/8001-00000002", "0?Set(ARG3=dontcare)") in new stack
    -- Executing [s@sub-record-check:12] Set("SIP/8001-00000002", "REC_POLICY_MODE_SAVE=") in new stack
    -- Executing [s@sub-record-check:13] ExecIf("SIP/8001-00000002", "0?Set(REC_STATUS=NO)") in new stack
    -- Executing [s@sub-record-check:14] GotoIf("SIP/8001-00000002", "5?checkaction") in new stack
    -- Goto (sub-record-check,s,17)
    -- Executing [s@sub-record-check:17] GotoIf("SIP/8001-00000002", "1?sub-record-check,exten,1") in new stack
    -- Goto (sub-record-check,exten,1)
    -- Executing [exten@sub-record-check:1] NoOp("SIP/8001-00000002", "Exten Recording Check between 8001 and 8002") in new stack
    -- Executing [exten@sub-record-check:2] Set("SIP/8001-00000002", "CALLTYPE=internal") in new stack
    -- Executing [exten@sub-record-check:3] ExecIf("SIP/8001-00000002", "0?Set(CALLTYPE=)") in new stack
    -- Executing [exten@sub-record-check:4] Set("SIP/8001-00000002", "CALLEE=dontcare") in new stack
    -- Executing [exten@sub-record-check:5] ExecIf("SIP/8001-00000002", "0?Set(CALLEE=dontcare)") in new stack
    -- Executing [exten@sub-record-check:6] GotoIf("SIP/8001-00000002", "0?callee") in new stack
    -- Executing [exten@sub-record-check:7] GotoIf("SIP/8001-00000002", "1?caller") in new stack
    -- Goto (sub-record-check,exten,13)
    -- Executing [exten@sub-record-check:13] Set("SIP/8001-00000002", "RECMODE=dontcare") in new stack
    -- Executing [exten@sub-record-check:14] ExecIf("SIP/8001-00000002", "0?Set(RECMODE=dontcare)") in new stack
    -- Executing [exten@sub-record-check:15] ExecIf("SIP/8001-00000002", "1?Set(RECMODE=dontcare)") in new stack
    -- Executing [exten@sub-record-check:16] Gosub("SIP/8001-00000002", "recordcheck,1(dontcare,internal,8002)") in new stack
    -- Executing [recordcheck@sub-record-check:1] NoOp("SIP/8001-00000002", "Starting recording check against dontcare") in new stack
    -- Executing [recordcheck@sub-record-check:2] Goto("SIP/8001-00000002", "dontcare") in new stack
    -- Goto (sub-record-check,recordcheck,3)
    -- Executing [recordcheck@sub-record-check:3] Return("SIP/8001-00000002", "") in new stack
    -- Executing [exten@sub-record-check:17] Return("SIP/8001-00000002", "") in new stack
    -- Executing [s@macro-exten-vm:7] GotoIf("SIP/8001-00000002", "1?macrodial") in new stack
    -- Goto (macro-exten-vm,s,13)
    -- Executing [s@macro-exten-vm:13] GosubIf("SIP/8001-00000002", "0?clrheader,1()") in new stack
    -- Executing [s@macro-exten-vm:14] Macro("SIP/8001-00000002", "dial-one,,Ttr,8002") in new stack
    -- Executing [s@macro-dial-one:1] Set("SIP/8001-00000002", "DEXTEN=8002") in new stack
    -- Executing [s@macro-dial-one:2] Set("SIP/8001-00000002", "DIALSTATUS_CW=") in new stack
    -- Executing [s@macro-dial-one:3] GosubIf("SIP/8001-00000002", "0?screen,1()") in new stack
    -- Executing [s@macro-dial-one:4] GosubIf("SIP/8001-00000002", "0?cf,1()") in new stack
    -- Executing [s@macro-dial-one:5] GotoIf("SIP/8001-00000002", "1?skip1") in new stack
    -- Goto (macro-dial-one,s,8)
    -- Executing [s@macro-dial-one:8] GotoIf("SIP/8001-00000002", "0?nodial") in new stack
    -- Executing [s@macro-dial-one:9] GotoIf("SIP/8001-00000002", "0?continue") in new stack
    -- Executing [s@macro-dial-one:10] Set("SIP/8001-00000002", "EXTHASCW=ENABLED") in new stack
    -- Executing [s@macro-dial-one:11] GotoIf("SIP/8001-00000002", "0?next1:cwinusebusy") in new stack
    -- Goto (macro-dial-one,s,23)
    -- Executing [s@macro-dial-one:23] GotoIf("SIP/8001-00000002", "0?next3:continue") in new stack
    -- Goto (macro-dial-one,s,25)
    -- Executing [s@macro-dial-one:25] GotoIf("SIP/8001-00000002", "0?nodial") in new stack
    -- Executing [s@macro-dial-one:26] GosubIf("SIP/8001-00000002", "1?dstring,1():dlocal,1()") in new stack
    -- Executing [dstring@macro-dial-one:1] Set("SIP/8001-00000002", "DSTRING=") in new stack
    -- Executing [dstring@macro-dial-one:2] Set("SIP/8001-00000002", "DEVICES=8002") in new stack
    -- Executing [dstring@macro-dial-one:3] ExecIf("SIP/8001-00000002", "0?Return()") in new stack
    -- Executing [dstring@macro-dial-one:4] ExecIf("SIP/8001-00000002", "0?Set(DEVICES=002)") in new stack
    -- Executing [dstring@macro-dial-one:5] Set("SIP/8001-00000002", "LOOPCNT=1") in new stack
    -- Executing [dstring@macro-dial-one:6] Set("SIP/8001-00000002", "ITER=1") in new stack
    -- Executing [dstring@macro-dial-one:7] Set("SIP/8001-00000002", "THISDIAL=SIP/8002") in new stack
    -- Executing [dstring@macro-dial-one:8] GosubIf("SIP/8001-00000002", "1?zap2dahdi,1()") in new stack
    -- Executing [zap2dahdi@macro-dial-one:1] ExecIf("SIP/8001-00000002", "0?Return()") in new stack
    -- Executing [zap2dahdi@macro-dial-one:2] Set("SIP/8001-00000002", "NEWDIAL=") in new stack
    -- Executing [zap2dahdi@macro-dial-one:3] Set("SIP/8001-00000002", "LOOPCNT2=1") in new stack
    -- Executing [zap2dahdi@macro-dial-one:4] Set("SIP/8001-00000002", "ITER2=1") in new stack
    -- Executing [zap2dahdi@macro-dial-one:5] Set("SIP/8001-00000002", "THISPART2=SIP/8002") in new stack
    -- Executing [zap2dahdi@macro-dial-one:6] ExecIf("SIP/8001-00000002", "0?Set(THISPART2=DAHDI/8002)") in new stack
    -- Executing [zap2dahdi@macro-dial-one:7] Set("SIP/8001-00000002", "NEWDIAL=SIP/8002&") in new stack
    -- Executing [zap2dahdi@macro-dial-one:8] Set("SIP/8001-00000002", "ITER2=2") in new stack
    -- Executing [zap2dahdi@macro-dial-one:9] GotoIf("SIP/8001-00000002", "0?begin2") in new stack
    -- Executing [zap2dahdi@macro-dial-one:10] Set("SIP/8001-00000002", "THISDIAL=SIP/8002") in new stack
    -- Executing [zap2dahdi@macro-dial-one:11] Return("SIP/8001-00000002", "") in new stack
    -- Executing [dstring@macro-dial-one:9] GotoIf("SIP/8001-00000002", "1?docheck") in new stack
    -- Goto (macro-dial-one,dstring,12)
    -- Executing [dstring@macro-dial-one:12] GotoIf("SIP/8001-00000002", "0?skipset") in new stack
    -- Executing [dstring@macro-dial-one:13] Set("SIP/8001-00000002", "DSTRING=SIP/8002&") in new stack
    -- Executing [dstring@macro-dial-one:14] Set("SIP/8001-00000002", "ITER=2") in new stack
    -- Executing [dstring@macro-dial-one:15] GotoIf("SIP/8001-00000002", "0?begin") in new stack
    -- Executing [dstring@macro-dial-one:16] ExecIf("SIP/8001-00000002", "0?Return()") in new stack
    -- Executing [dstring@macro-dial-one:17] Set("SIP/8001-00000002", "DSTRING=SIP/8002") in new stack
    -- Executing [dstring@macro-dial-one:18] Return("SIP/8001-00000002", "") in new stack
    -- Executing [s@macro-dial-one:27] GotoIf("SIP/8001-00000002", "0?nodial") in new stack
    -- Executing [s@macro-dial-one:28] GotoIf("SIP/8001-00000002", "0?skiptrace") in new stack
    -- Executing [s@macro-dial-one:29] GosubIf("SIP/8001-00000002", "1?ctset,1():ctclear,1()") in new stack
    -- Executing [ctset@macro-dial-one:1] Set("SIP/8001-00000002", "DB(CALLTRACE/8002)=8001") in new stack
    -- Executing [ctset@macro-dial-one:2] Return("SIP/8001-00000002", "") in new stack
    -- Executing [s@macro-dial-one:30] Set("SIP/8001-00000002", "D_OPTIONS=Ttr") in new stack
    -- Executing [s@macro-dial-one:31] NoOp("SIP/8001-00000002", "Blind Transfer: , Attended Transfer: , User: 8001, Alert Info: ") in new stack
    -- Executing [s@macro-dial-one:32] ExecIf("SIP/8001-00000002", "1?Set(ALERT_INFO=)") in new stack
    -- Executing [s@macro-dial-one:33] ExecIf("SIP/8001-00000002", "0?Set(ALERT_INFO=)") in new stack
    -- Executing [s@macro-dial-one:34] ExecIf("SIP/8001-00000002", "0?Set(ALERT_INFO=)") in new stack
    -- Executing [s@macro-dial-one:35] GosubIf("SIP/8001-00000002", "0?func-set-sipheader,s,1(Alert-Info,)") in new stack
    -- Executing [s@macro-dial-one:36] ExecIf("SIP/8001-00000002", "0?Set(CHANNEL(musicclass)=)") in new stack
    -- Executing [s@macro-dial-one:37] GosubIf("SIP/8001-00000002", "0?qwait,1()") in new stack
    -- Executing [s@macro-dial-one:38] Set("SIP/8001-00000002", "__CWIGNORE=") in new stack
    -- Executing [s@macro-dial-one:39] Set("SIP/8001-00000002", "__KEEPCID=TRUE") in new stack
    -- Executing [s@macro-dial-one:40] GotoIf("SIP/8001-00000002", "0?usegoto,1") in new stack
    -- Executing [s@macro-dial-one:41] GotoIf("SIP/8001-00000002", "0?godial") in new stack
    -- Executing [s@macro-dial-one:42] Gosub("SIP/8001-00000002", "sub-presencestate-display,s,1(8002)") in new stack
    -- Executing [s@sub-presencestate-display:1] Goto("SIP/8001-00000002", "state-not_set,1") in new stack
    -- Goto (sub-presencestate-display,state-not_set,1)
    -- Executing [state-not_set@sub-presencestate-display:1] Set("SIP/8001-00000002", "PRESENCESTATE_DISPLAY=") in new stack
    -- Executing [state-not_set@sub-presencestate-display:2] Return("SIP/8001-00000002", "") in new stack
    -- Executing [s@macro-dial-one:43] Set("SIP/8001-00000002", "CONNECTEDLINE(name,i)=Petar") in new stack
    -- Executing [s@macro-dial-one:44] Set("SIP/8001-00000002", "CONNECTEDLINE(num)=8002") in new stack
    -- Executing [s@macro-dial-one:45] Set("SIP/8001-00000002", "D_OPTIONS=TtrI") in new stack
    -- Executing [s@macro-dial-one:46] Macro("SIP/8001-00000002", "dialout-one-predial-hook,") in new stack
    -- Executing [s@macro-dialout-one-predial-hook:1] MacroExit("SIP/8001-00000002", "") in new stack
    -- Executing [s@macro-dial-one:47] ExecIf("SIP/8001-00000002", "0?Set(D_OPTIONS=trII)") in new stack
    -- Executing [s@macro-dial-one:48] Dial("SIP/8001-00000002", "SIP/8002,,TtrIb(func-apply-sipheaders^s^1)") in new stack
    == Using SIP VIDEO TOS bits 136
    == Using SIP VIDEO CoS mark 6
    == Using SIP RTP TOS bits 184
    == Using SIP RTP CoS mark 5
    -- SIP/8002-00000003 Internal Gosub(func-apply-sipheaders,s,1) start
    -- Executing [s@func-apply-sipheaders:1] NoOp("SIP/8002-00000003", "Applying SIP Headers to channel") in new stack
    -- Executing [s@func-apply-sipheaders:2] Set("SIP/8002-00000003", "SIPHEADERKEYS=") in new stack
    -- Executing [s@func-apply-sipheaders:3] While("SIP/8002-00000003", "0") in new stack
    -- Jumping to priority 6
    -- Executing [s@func-apply-sipheaders:7] Return("SIP/8002-00000003", "") in new stack
    == Spawn extension (from-internal, 8002, 1) exited non-zero on 'SIP/8002-00000003'
    -- SIP/8002-00000003 Internal Gosub(func-apply-sipheaders,s,1) complete GOSUB_RETVAL=
    -- Called SIP/8002
    -- Connected line update to SIP/8001-00000002 prevented.
    -- SIP/8002-00000003 is ringing
    > 0x76309258 -- Probation passed - setting RTP source address to 192.168.1.181:50916
    -- Connected line update to SIP/8001-00000002 prevented.
    -- SIP/8002-00000003 answered SIP/8001-00000002
    -- Channel SIP/8002-00000003 joined 'simple_bridge' basic-bridge <9c551526-23f7-4817-8ce9-b625136aeade>
    -- Channel SIP/8001-00000002 joined 'simple_bridge' basic-bridge <9c551526-23f7-4817-8ce9-b625136aeade>
    > 0x76309258 -- Probation passed - setting RTP source address to 192.168.1.181:50916
    > 0x7630bbb0 -- Probation passed - setting RTP source address to 192.168.1.181:52242
    > 0x75f09c10 -- Probation passed - setting RTP source address to 192.168.1.110:20000
    > 0x75f069d0 -- Probation passed - setting RTP source address to 192.168.1.110:20001
    -- Channel SIP/8002-00000003 left 'simple_bridge' basic-bridge <9c551526-23f7-4817-8ce9-b625136aeade>
    -- Channel SIP/8001-00000002 left 'simple_bridge' basic-bridge <9c551526-23f7-4817-8ce9-b625136aeade>
    == Spawn extension (macro-dial-one, s, 48) exited non-zero on 'SIP/8001-00000002' in macro 'dial-one'
    == Spawn extension (macro-exten-vm, s, 14) exited non-zero on 'SIP/8001-00000002' in macro 'exten-vm'
    == Spawn extension (from-internal, 8002, 2) exited non-zero on 'SIP/8001-00000002'
    -- Executing [h@from-internal:1] Macro("SIP/8001-00000002", "hangupcall") in new stack
    -- Executing [s@macro-hangupcall:1] GotoIf("SIP/8001-00000002", "1?theend") in new stack
    -- Goto (macro-hangupcall,s,3)
    -- Executing [s@macro-hangupcall:3] ExecIf("SIP/8001-00000002", "0?Set(CDR(recordingfile)=)") in new stack
    -- Executing [s@macro-hangupcall:4] Hangup("SIP/8001-00000002", "") in new stack
    == Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'SIP/8001-00000002' in macro 'hangupcall'
    == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/8001-00000002'
     
  11. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    This second post shows an unsuccessful call when I configured my VTO2000A (extension 8001) to call a group (extension 5000). When the VTO button was pressed, it called several extensions in the group, including my laptop. I then answered but the call was dropped after about 5 seconds. Any ideas why the call keeps getting dropped? The only difference is the VTO calling a direct extensions vs. calling a group.

    Thanks!

    VTO calling a group (multiple extensions)

    Asterisk 13.11.2, Copyright (C) 1999 - 2014, Digium, Inc. and others.
    Created by Mark Spencer <markster@digium.com>
    Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
    This is free software, with components licensed under the GNU General Public
    License version 2 and other licenses; you are welcome to redistribute it under
    certain conditions. Type 'core show license' for details.
    =========================================================================
    Connected to Asterisk 13.11.2 currently running on raspbx (pid = 1809)
    == Using SIP VIDEO TOS bits 136
    == Using SIP VIDEO CoS mark 6
    == Using SIP RTP TOS bits 184
    == Using SIP RTP CoS mark 5
    -- Executing [5000@from-internal:1] GotoIf("SIP/8001-00000004", "0?cid") in new stack
    -- Executing [5000@from-internal:2] PlayTones("SIP/8001-00000004", "ring") in new stack
    -- Executing [5000@from-internal:3] Progress("SIP/8001-00000004", "") in new stack
    -- Executing [5000@from-internal:4] Macro("SIP/8001-00000004", "user-callerid,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("SIP/8001-00000004", "TOUCH_MONITOR=1475821493.4") in new stack
    -- Executing [s@macro-user-callerid:2] Set("SIP/8001-00000004", "AMPUSER=8001") in new stack
    -- Executing [s@macro-user-callerid:3] GotoIf("SIP/8001-00000004", "0?report") in new stack
    -- Executing [s@macro-user-callerid:4] ExecIf("SIP/8001-00000004", "1?Set(REALCALLERIDNUM=8001)") in new stack
    -- Executing [s@macro-user-callerid:5] Set("SIP/8001-00000004", "AMPUSER=8001") in new stack
    -- Executing [s@macro-user-callerid:6] GotoIf("SIP/8001-00000004", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:7] Set("SIP/8001-00000004", "AMPUSERCIDNAME=Doorbell") in new stack
    -- Executing [s@macro-user-callerid:8] GotoIf("SIP/8001-00000004", "0?report") in new stack
    -- Executing [s@macro-user-callerid:9] Set("SIP/8001-00000004", "AMPUSERCID=8001") in new stack
    -- Executing [s@macro-user-callerid:10] Set("SIP/8001-00000004", "__DIAL_OPTIONS=Ttr") in new stack
    -- Executing [s@macro-user-callerid:11] Set("SIP/8001-00000004", "CALLERID(all)="Doorbell" <8001>") in new stack
    -- Executing [s@macro-user-callerid:12] GotoIf("SIP/8001-00000004", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:13] ExecIf("SIP/8001-00000004", "0?Set(GROUP(concurrency_limit)=8001)") in new stack
    -- Executing [s@macro-user-callerid:14] GotoIf("SIP/8001-00000004", "0?continue") in new stack
    -- Executing [s@macro-user-callerid:15] Set("SIP/8001-00000004", "__TTL=64") in new stack
    -- Executing [s@macro-user-callerid:16] GotoIf("SIP/8001-00000004", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,27)
    -- Executing [s@macro-user-callerid:27] Set("SIP/8001-00000004", "CALLERID(number)=8001") in new stack
    -- Executing [s@macro-user-callerid:28] Set("SIP/8001-00000004", "CALLERID(name)=Doorbell") in new stack
    -- Executing [s@macro-user-callerid:29] GotoIf("SIP/8001-00000004", "0?cnum") in new stack
    -- Executing [s@macro-user-callerid:30] Set("SIP/8001-00000004", "CDR(cnam)=Doorbell") in new stack
    -- Executing [s@macro-user-callerid:31] Set("SIP/8001-00000004", "CDR(cnum)=8001") in new stack
    -- Executing [s@macro-user-callerid:32] Set("SIP/8001-00000004", "CHANNEL(language)=en") in new stack
    -- Executing [5000@from-internal:5] Macro("SIP/8001-00000004", "blkvm-setifempty,") in new stack
    -- Executing [s@macro-blkvm-setifempty:1] GotoIf("SIP/8001-00000004", "1?init") in new stack
    -- Goto (macro-blkvm-setifempty,s,4)
    -- Executing [s@macro-blkvm-setifempty:4] Set("SIP/8001-00000004", "__BLKVM_CHANNEL=SIP/8001-00000004") in new stack
    -- Executing [s@macro-blkvm-setifempty:5] Set("SIP/8001-00000004", "SHARED(BLKVM,SIP/8001-00000004)=TRUE") in new stack
    -- Executing [s@macro-blkvm-setifempty:6] Set("SIP/8001-00000004", "GOSUB_RETVAL=TRUE") in new stack
    -- Executing [s@macro-blkvm-setifempty:7] MacroExit("SIP/8001-00000004", "") in new stack
    -- Executing [5000@from-internal:6] GotoIf("SIP/8001-00000004", "1?skipov") in new stack
    -- Goto (from-internal,5000,9)
    -- Executing [5000@from-internal:9] Set("SIP/8001-00000004", "RRNODEST=") in new stack
    -- Executing [5000@from-internal:10] Set("SIP/8001-00000004", "__NODEST=5000") in new stack
    -- Executing [5000@from-internal:11] GosubIf("SIP/8001-00000004", "0?sub-rgsetcid,s,1()") in new stack
    -- Executing [5000@from-internal:12] Gosub("SIP/8001-00000004", "sub-record-check,s,1(rg,5000,dontcare)") in new stack
    -- Executing [s@sub-record-check:1] GotoIf("SIP/8001-00000004", "0?initialized") in new stack
    -- Executing [s@sub-record-check:2] Set("SIP/8001-00000004", "__REC_STATUS=INITIALIZED") in new stack
    -- Executing [s@sub-record-check:3] Set("SIP/8001-00000004", "NOW=1475821493") in new stack
    -- Executing [s@sub-record-check:4] Set("SIP/8001-00000004", "__DAY=07") in new stack
    -- Executing [s@sub-record-check:5] Set("SIP/8001-00000004", "__MONTH=10") in new stack
    -- Executing [s@sub-record-check:6] Set("SIP/8001-00000004", "__YEAR=2016") in new stack
    -- Executing [s@sub-record-check:7] Set("SIP/8001-00000004", "__TIMESTR=20161007-172453") in new stack
    -- Executing [s@sub-record-check:8] Set("SIP/8001-00000004", "__FROMEXTEN=8001") in new stack
    -- Executing [s@sub-record-check:9] Set("SIP/8001-00000004", "__MON_FMT=wav") in new stack
    -- Executing [s@sub-record-check:10] NoOp("SIP/8001-00000004", "Recordings initialized") in new stack
    -- Executing [s@sub-record-check:11] ExecIf("SIP/8001-00000004", "0?Set(ARG3=dontcare)") in new stack
    -- Executing [s@sub-record-check:12] Set("SIP/8001-00000004", "REC_POLICY_MODE_SAVE=") in new stack
    -- Executing [s@sub-record-check:13] ExecIf("SIP/8001-00000004", "0?Set(REC_STATUS=NO)") in new stack
    -- Executing [s@sub-record-check:14] GotoIf("SIP/8001-00000004", "2?checkaction") in new stack
    -- Goto (sub-record-check,s,17)
    -- Executing [s@sub-record-check:17] GotoIf("SIP/8001-00000004", "0?sub-record-check,rg,1") in new stack
    -- Executing [s@sub-record-check:18] NoOp("SIP/8001-00000004", "Generic rg Recording Check - 8001 5000") in new stack
    -- Executing [s@sub-record-check:19] Gosub("SIP/8001-00000004", "recordcheck,1(dontcare,rg,5000)") in new stack
    -- Executing [recordcheck@sub-record-check:1] NoOp("SIP/8001-00000004", "Starting recording check against dontcare") in new stack
    -- Executing [recordcheck@sub-record-check:2] Goto("SIP/8001-00000004", "dontcare") in new stack
    -- Goto (sub-record-check,recordcheck,3)
    -- Executing [recordcheck@sub-record-check:3] Return("SIP/8001-00000004", "") in new stack
    -- Executing [s@sub-record-check:20] Return("SIP/8001-00000004", "") in new stack
    -- Executing [5000@from-internal:13] Set("SIP/8001-00000004", "RingGroupMethod=ringall") in new stack
    -- Executing [5000@from-internal:14] Macro("SIP/8001-00000004", "dial,200,Ttr,8002-8003") in new stack
    -- Executing [s@macro-dial:1] NoOp("SIP/8001-00000004", "Blind Transfer: , Attended Transfer: , User: 8001, Alert Info: ") in new stack
    -- Executing [s@macro-dial:2] ExecIf("SIP/8001-00000004", "1?Set(ALERT_INFO=)") in new stack
    -- Executing [s@macro-dial:3] ExecIf("SIP/8001-00000004", "0?Set(ALERT_INFO=)") in new stack
    -- Executing [s@macro-dial:4] ExecIf("SIP/8001-00000004", "0?Set(ALERT_INFO=)") in new stack
    -- Executing [s@macro-dial:5] ExecIf("SIP/8001-00000004", "0?Set(CHANNEL(musicclass)=)") in new stack
    -- Executing [s@macro-dial:6] AGI("SIP/8001-00000004", "dialparties.agi") in new stack
    -- Launched AGI Script /var/lib/asterisk/agi-bin/dialparties.agi
    dialparties.agi: Starting New Dialparties.agi
    dialparties.agi: Caller ID name is 'Doorbell' number is '8001'
    > dialparties.agi: USE_CONFIRMATION: 'FALSE'
    > dialparties.agi: RINGGROUP_INDEX: ''
    dialparties.agi: Methodology of ring is 'ringall'
    -- dialparties.agi: Added extension 8002 to extension map
    -- dialparties.agi: Added extension 8003 to extension map
    -- dialparties.agi: Extension 8002 cf is disabled
    -- dialparties.agi: Extension 8003 cf is disabled
    -- dialparties.agi: Extension 8002 do not disturb is disabled
    -- dialparties.agi: Extension 8003 do not disturb is disabled
    > dialparties.agi: extnum 8002 has: cw: 1; hascfb: 0 [] hascfu: 0 []
    -- dialparties.agi: dbset CALLTRACE/8002 to 8001
    > dialparties.agi: extnum 8003 has: cw: 1; hascfb: 0 [] hascfu: 0 []
    -- dialparties.agi: dbset CALLTRACE/8003 to 8001
    -- dialparties.agi: Filtered ARG3: 8002-8003
    > dialparties.agi: NODEST: 5000 adding M(auto-blkvm) to dialopts: TtrM(auto-blkvm)
    > dialparties.agi: NODEST: 5000 blkvm enabled macro already in dialopts: TtrM(auto-blkvm)
    -- <SIP/8001-00000004>AGI Script dialparties.agi completed, returning 0
    -- Executing [s@macro-dial:9] NoOp("SIP/8001-00000004", "Returned from dialparties with groups to dial") in new stack
    -- Executing [s@macro-dial:10] Set("SIP/8001-00000004", "LOOPCNT=2") in new stack
    -- Executing [s@macro-dial:11] Set("SIP/8001-00000004", "ITER=1") in new stack
    -- Executing [s@macro-dial:12] Set("SIP/8001-00000004", "EXTTOCALL=8002") in new stack
    -- Executing [s@macro-dial:13] NoOp("SIP/8001-00000004", "Working with 8002") in new stack
    -- Executing [s@macro-dial:14] Set("SIP/8001-00000004", "ITER=2") in new stack
    -- Executing [s@macro-dial:15] GotoIf("SIP/8001-00000004", "1?ndloopbegin") in new stack
    -- Goto (macro-dial,s,12)
    -- Executing [s@macro-dial:12] Set("SIP/8001-00000004", "EXTTOCALL=8003") in new stack
    -- Executing [s@macro-dial:13] NoOp("SIP/8001-00000004", "Working with 8003") in new stack
    -- Executing [s@macro-dial:14] Set("SIP/8001-00000004", "ITER=3") in new stack
    -- Executing [s@macro-dial:15] GotoIf("SIP/8001-00000004", "0?ndloopbegin") in new stack
    -- Executing [s@macro-dial:16] Macro("SIP/8001-00000004", "dial-ringall-predial-hook,") in new stack
    -- Executing [s@macro-dial-ringall-predial-hook:1] MacroExit("SIP/8001-00000004", "") in new stack
    -- Executing [s@macro-dial:17] Dial("SIP/8001-00000004", "SIP/8002&SIP/8003,200,TtrM(auto-blkvm)b(func-apply-sipheaders^s^1),") in new stack
    == Using SIP VIDEO TOS bits 136
    == Using SIP VIDEO CoS mark 6
    == Using SIP RTP TOS bits 184
    == Using SIP RTP CoS mark 5
    [2016-10-07 17:24:53] WARNING[1826][C-00000002]: app_dial.c:2432 dial_exec_full: Unable to create channel of type 'SIP' (cause 20 - Subscriber absent)
    -- SIP/8002-00000005 Internal Gosub(func-apply-sipheaders,s,1) start
    -- Executing [s@func-apply-sipheaders:1] NoOp("SIP/8002-00000005", "Applying SIP Headers to channel") in new stack
    -- Executing [s@func-apply-sipheaders:2] Set("SIP/8002-00000005", "SIPHEADERKEYS=") in new stack
    -- Executing [s@func-apply-sipheaders:3] While("SIP/8002-00000005", "0") in new stack
    -- Jumping to priority 6
    -- Executing [s@func-apply-sipheaders:7] Return("SIP/8002-00000005", "") in new stack
    == Spawn extension (from-internal, 5000, 1) exited non-zero on 'SIP/8002-00000005'
    -- SIP/8002-00000005 Internal Gosub(func-apply-sipheaders,s,1) complete GOSUB_RETVAL=
    -- Called SIP/8002
    -- SIP/8002-00000005 is ringing
    > 0x75f19558 -- Probation passed - setting RTP source address to 192.168.1.181:64844
    -- SIP/8002-00000005 answered SIP/8001-00000004
    -- Executing [s@macro-auto-blkvm:1] Set("SIP/8002-00000005", "__MACRO_RESULT=") in new stack
    -- Executing [s@macro-auto-blkvm:2] Set("SIP/8002-00000005", "CFIGNORE=") in new stack
    -- Executing [s@macro-auto-blkvm:3] Set("SIP/8002-00000005", "MASTER_CHANNEL(CFIGNORE)=") in new stack
    -- Executing [s@macro-auto-blkvm:4] Set("SIP/8002-00000005", "FORWARD_CONTEXT=from-internal") in new stack
    -- Executing [s@macro-auto-blkvm:5] Set("SIP/8002-00000005", "MASTER_CHANNEL(FORWARD_CONTEXT)=from-internal") in new stack
    -- Executing [s@macro-auto-blkvm:6] Macro("SIP/8002-00000005", "blkvm-clr,") in new stack
    -- Executing [s@macro-blkvm-clr:1] Set("SIP/8002-00000005", "SHARED(BLKVM,SIP/8001-00000004)=") in new stack
    -- Executing [s@macro-blkvm-clr:2] Set("SIP/8002-00000005", "GOSUB_RETVAL=") in new stack
    -- Executing [s@macro-blkvm-clr:3] MacroExit("SIP/8002-00000005", "") in new stack
    -- Executing [s@macro-auto-blkvm:7] ExecIf("SIP/8002-00000005", "0?Set(MASTER_CHANNEL(CONNECTEDLINE(num))=8002)") in new stack
    -- Executing [s@macro-auto-blkvm:8] ExecIf("SIP/8002-00000005", "0?Set(MASTER_CHANNEL(CONNECTEDLINE(name))=Petar)") in new stack
    -- Channel SIP/8002-00000005 joined 'simple_bridge' basic-bridge <12a8742d-2e99-44b3-82f0-865c5d505e3c>
    -- Channel SIP/8001-00000004 joined 'simple_bridge' basic-bridge <12a8742d-2e99-44b3-82f0-865c5d505e3c>
    > 0x75f19558 -- Probation passed - setting RTP source address to 192.168.1.181:64844
    > 0x75f1ec20 -- Probation passed - setting RTP source address to 192.168.1.181:60418
    [2016-10-07 17:25:11] WARNING[1727]: chan_sip.c:4059 retrans_pkt: Retransmission timeout reached on transmission 201610071724521050843812@192.168.1.110 for seqno 21 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions
    Packet timed out after 6400ms with no response
    [2016-10-07 17:25:11] WARNING[1727]: chan_sip.c:4083 retrans_pkt: Hanging up call 201610071724521050843812@192.168.1.110 - no reply to our critical packet (see https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions).
    -- Channel SIP/8001-00000004 left 'simple_bridge' basic-bridge <12a8742d-2e99-44b3-82f0-865c5d505e3c>
    -- Channel SIP/8002-00000005 left 'simple_bridge' basic-bridge <12a8742d-2e99-44b3-82f0-865c5d505e3c>
    == Spawn extension (macro-dial, s, 17) exited non-zero on 'SIP/8001-00000004' in macro 'dial'
    == Spawn extension (from-internal, 5000, 14) exited non-zero on 'SIP/8001-00000004'
    -- Executing [h@from-internal:1] Macro("SIP/8001-00000004", "hangupcall") in new stack
    -- Executing [s@macro-hangupcall:1] GotoIf("SIP/8001-00000004", "1?theend") in new stack
    -- Goto (macro-hangupcall,s,3)
    -- Executing [s@macro-hangupcall:3] ExecIf("SIP/8001-00000004", "0?Set(CDR(recordingfile)=)") in new stack
    -- Executing [s@macro-hangupcall:4] Hangup("SIP/8001-00000004", "") in new stack
    == Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'SIP/8001-00000004' in macro 'hangupcall'
    == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/8001-00000004'
     
  12. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    need to see the actual sip traffic, not the dialplan logging.

    should look something like:
    Code:
    [COLOR=#000000]SIP/2.0 200 OK[/COLOR]   Via: SIP/2.0/TLS client.biloxi.example.com:5061;branch=z9hG4bKnashd92
        ;received=192.0.2.201
       From: Bob <sips:bob@biloxi.example.com>;tag=ja743ks76zlflH
       To: Bob <sips:bob@biloxi.example.com>;tag=37GkEhwl6
       Call-ID: 1j9FpLxk3uxtm8tn@biloxi.example.com
       CSeq: 2 REGISTER
       Contact: <sips:bob@client.biloxi.example.com>;expires=3600
       Content-Length: 0
    
    somewhere in there we'll see it advertise the RTSP stream if it does do the video, or flags like: m=video 0 RTP/AVP 31

    I have to imagine it does do video, have you tried setting up a client?
     
  13. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    Hi again,

    I have attached the SIP log. Let me know if it contains enough info.

    It should have logged the initial registration of the VTO, all the way through to the actual call to the group, and also the hang up which happens after 5 seconds.

    IN terms of setting up a client, not sure what you mean? The VTO2000A successfully makes the SIP call when calling an extension directly. I assume you mean the SIP client on that? Otherwise. my laptop and mobile have SIP client software installed on them.

    Even if I can get just the audio working, it would be OK for now. I'd like to use a call group to make sure that all phones are called whenever someone presses the button on the intercom at the front door. The video would be nice to have, but for now, I guess the issue is around the call being hung up after 5 seconds.

    Cheers,
    Pete
     

    Attached Files:

  14. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    yeah its sending a video stream:

    Code:
    Sending to 192.168.1.110:5060 (no NAT)Using INVITE request as basis request - 20161008101923157436665@192.168.1.110
    Found peer '8001' for '8001' from 192.168.1.110:5060
    Found RTP video format 96
    Found video description format H264 for ID 96
    Found RTP audio format 97
    Found RTP audio format 0
    Found unknown media description format PCM for ID 97
    Found audio description format PCMU for ID 0
    Capabilities: us - (ulaw|alaw|gsm|g726|h264|mpeg4|vp8|h263p|h261|h263), peer - audio=(ulaw)/video=(h264)/text=(nothing), combined - (ulaw|h264)
    Non-codec capabilities (dtmf): us - 0x1 (telephone-event|), peer - 0x0 (nothing), combined - 0x0 (nothing)
    You need a SIP Client that can take the video stream..

    your hangup problem looks like a timeout, see this:
    Code:
    [2016-10-08 10:19:45] WARNING[1727]: chan_sip.c:4059 retrans_pkt: Retransmission timeout reached on transmission 20161008101923157436665@192.168.1.110 for seqno 21 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+RetransmissionsPacket timed out after 6399ms with no response
    [2016-10-08 10:19:45] WARNING[1727]: chan_sip.c:4083 retrans_pkt: Hanging up call 20161008101923157436665@192.168.1.110 - no reply to our critical packet (see https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions).
    Scheduling destruction of SIP dialog '6aa664cd5ae561f10fe94c3f0335ba08@192.168.1.220:5060' in 6400 ms (Method: INVITE)
     
  15. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    The VTO2000A does seem to support video. I think the SIP logs show this.

    Also, I have attached the Video Set page from the VTO's configuration tool (web interface). The available video formats under Main Format are D1 and WVGA. Under, Extra Format, they are D1, WVGA and QVGA.
     

    Attached Files:

  16. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
  17. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    Thanks for the tip. I realized that X-Lite and Zoiper do not have the h264 codec.

    I tried Ekiga but could not get video working.

    I then tried Linphone and Jitsi. I got video working in both of these apps (both have h264 codec). From within these apps (on my laptop), I was able to call the VTO2000A. After dialing the VTO's extension, it immediately answered and started displaying its video. I have attached an image showing the actual video that the intercom was sending as part of the call. This was good to prove that video is being sent by the VTO2000A.

    Then I tried the original scenario. I pressed the button on the intercom, and then the call group was dialed. When I answered the call on my laptop (once using Linphone, and another time using Jitsi), the call was terminated after about 5 seconds without any video being sent by the VTTO2000A. I have attached the SIP logs for both of these apps.

    I then got the VTO2000A to dial my laptop's extension directly and the video call worked great.

    So, after all this, it does seem like the difference is really between dialing a call group, and dialing an extension directly.

    Is there anything in the SIP logs that stands out?

    Thanks for all your help.

    Pete
     

    Attached Files:

  18. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    great, im glad you got some output from it.. you might be able to change codecs and get wider compatibility but h264 will be the most bandwidth friendly.

    its probably something w/your dialplan, cant be much help there sorry.. mebe you can setup a video confrence it dials into then trigger it to dial in your other extensions.. going to need some google fu, I have not tried to do anything like that..
     
  19. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    Hi again,

    Finally got it all working. Got some additional help from the Asterisk forums.

    Rather than using the Ring Group module of FreePBX, I installed the Follow Me module. I then removed 5000 as a ring group, and simply created it as a normal extension instead. I then set up that extension using Follow Me, and configured it to dial all the other extensions.

    Now video calls work fine when initiated from the intercom.

    Thanks again!
     
  20. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    great work, thanks for sharing.. your the first Ive seen try one of these
     
  21. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    Yep, I've searched high and low for a solution, so I'm glad it's now finally working.

    I ended up installing Bria on my mobile and now I am able to see who rings the front doorbell.
     
  22. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    have you tried gDMSS? it has a door option i never tried thought it might be sip

    but having it go through asterisks is alot more versatile, you can patch audio through even when you dont have data access.. have you got a sip provider so u can dial ph#'s?
     
  23. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    I have not installed gDMSS, but I will try that soon. I don't use a SIP provider. How about yourself?

    Yep, using Asterisk makes it really flexible. I will not try to use the VTO's built-in connections to control the door look. Instead, I will use a relay to control that. I can either buy a separate relay and connect it my Raspberry Pi (on which Asterisk is installed) or simply use one of the relays on my alarm panel. Either way, I can use a shell script to to control that relay. On the Asterisk side of things, I am now able to run such a shell script when I press a scertain combination of keypad numbers (DTMF) during a call, which means I can unlock the front door in the middle of a video call. I have also set up a separate extension number that can be called to trigger the door unlocking action (i.e. when in the middle of an existing call).

    Asterisk is pretty cool. I just needed to learn the syntax of dial plans, etc.
     
  24. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    I'm using flowroute for prepaid sip trunking, its pretty damn cheap.. if you hook into the telephony networks you can route calls out to a normal telephone number, I'd set it up as a fallback.. incase your SoftPhone's are not online or answering then call this cell ph#.. that way if the doorbell rings and your out enjoying life somewhere data coverage is not likely you can still get voice at least.

    just be weary of having security issues with your dialplan, they scan for poorly configured sip servers to hijack constantly.. I have my firewall configured so only flowroute can dial into my asterisks server and I have external phone numbers I use.. I have 4 ph#'s, One for me, one for my wife, one for my work number being forwarded, and a toll free number for our relatives who still use landlines primarily.. We use google voice integration w/our cell phones that simultaneously rings our individual home lines so we can pickup on a voip phone at home where our coverage is crappy and phones usally plugged into a charger.. With home automation I can pull caller ID details and toast them up on all the computers and televisions, thats pretty nice.. I can also mute my TV w/a button on the phone.

    My average home phone bill is ~$10/mo
     
  25. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    Wow, that sounds great. I will look into. it. I like the idea of falling back to normal phone numbers. Thanks for the info.
     
  26. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    Hi again nayr,

    I am just looking at flowroute now. Can you just summarize how you set it up? Did you create a DID for each mobile device? Which SIP apps are you using?

    I'm new to SIP trunks, so I'd really appreciate any more info you can provide.

    Thanks!
     
  27. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    I got a DID for each person, but if your making outbound calls only you wouldent need em..

    extensions.conf
    Code:
    [outgoing]
    exten => _1900NXXXXXX,1,Congestion() 
    exten => _900NXXXXXX,1,Congestion() 
    exten => _NXXNXXXXXX,1,Dial(SIP/XXXXXXXX*1${EXTEN}@flowroute)
    exten => _NXXNXXXXXX,2,Congestion()
    
    
    exten => _1NXXNXXXXXX,1,Dial(SIP/XXXXXXXX*${EXTEN}@flowroute)
    exten => _011NXXXXXXXXX,1,Dial(SIP/XXXXXXXX*${EXTEN}@flowroute)
    and in sip.conf I have a [flowroute] defined.

    I am only using sip for trunking, internally I am using sccp w/some used cisco voip phones.. no apps, just replaces a couple hardlines for me.
     
  28. pkozul

    pkozul n3wb

    Joined:
    Oct 6, 2016
    Messages:
    15
    Likes Received:
    0
    Hi nayr,

    Just getting my head around this. You mentioned that you set up a DID for each person, and also that your firewall allows only SIP registrations coming from Flowroute. Does that mean that, for example, you have a SIP client app on your mobile that is set up to register using your DID back to your Asterisk server? If so, what SIP client software are you running?

    In my case, I'd like to use a SIP client app on my phone (i.e. 3CX, Linphone, Zoiper, Bria, etc.) but not sure whether I would need to set the SIP registration using Flowroute (using the DID) or using my own Asterisk server (using one of own extensions).

    Excuse my questions and I am just learning about this...

    Thanks!
    Pete
     
  29. nayr

    nayr Known around here

    Joined:
    Jul 16, 2014
    Messages:
    8,041
    Likes Received:
    3,396
    Location:
    Denver, CO
    ah no im using sprint which has google voice integration, its simultaneously rigging my # through flowroute when someone calls it.. I have no clients on phones.

    my asterisk server registers w/flowroute my telephony #'s, and my firewall has a group list that includes flowroute's IP's to allow connection direct to asterisks..

    outbound calls are using the mobile number's caller-id, so my DID's are only for forwarding simultaneous ringing to..