SIP einrichten. Fehler bei der Kommunikation mit DoorPi

  • Hallo,
    ich versuche bei DoorPi SIP zu integrieren. Leider mit mäßigem Erfolg.
    Folgendes habe ich gemacht:
    Auf dem Pi Asterisk und DoorPi installiert und konfiguriert. (s.u.)
    sip.conf:
    [general]
    allowguest=no
    port = 5060
    bindaddr = 0.0.0.0
    qualify = no
    disallow = all
    allow = alaw
    allow = ulaw
    videosupport = yes
    dtmfmode = rfc2833
    srvlookup = yes
    localnet=192.168.2.0/255.255.255.0
    directmedia = no
    nat = force_rport


    [1000]
    permit=192.168.2.0/255.255.255.0
    type=friend
    context=phones
    host=dynamic
    secret=PASSWORT


    [2000]
    permit=192.168.2.0/255.255.255.0
    type=friend
    context=phones
    host=dynamic
    secret=PASSWORT


    [3000]
    permit=192.168.2.0/255.255.255.0
    type=friend
    context=phones
    host=dynamic
    secret=PASSWORT


    --


    extensions.conf:
    [globals]


    [general]


    [internal]
    exten => _XXXX,1,Dial(SIP/${EXTEN})


    [phones]
    include => internal


    --


    doorpi.ini:
    [SIP-Phone]
    firewallpolicy = PolicyNoFirewall
    audio_codecs = uLaw, aLaw
    call_timeout = 15
    capture_device = ALSA: default device
    dialtone = !BASEPATH!/media/ShortDialTone.wav
    dialtone_renew_every_start = False
    dialtone_volume = 35
    echo_cancellation_enabled = False
    identity = DoorPi
    local_port = 5065
    max_call_time = 120
    playback_device = ALSA: default device
    record_while_dialing = False
    records = !BASEPATH!/records/%Y-%m-%d_%H-%M-%S.wav
    sipphonetyp = linphone
    sipserver_password = PASSWORT
    sipserver_realm =
    sipserver_server = 192.168.2.X
    sipserver_username = 3000
    stun_server =
    ua.max_calls = 1
    video_codecs = VP8
    video_device = V4L2: /dev/video0
    video_display_enabled = False
    video_size = 720p



    Ich habe als Clients DoorPi und zwei Smartphones. Alles ist im gleichen Netz. Die Smartphones können über den Pi auch miteinander telefonieren. Allerdings spinnt da DoorPi bei mir. Ich kann zwar über DoorPi mit "call:2000" mein Smartphone anrufen, aber sobald ich das Telefonat entgegen nehmen möchte, bricht die Verbindung mit der Fehlermeldung "res_rtp_asterisk.c:4364 ast_rtp_read: Unknown RTP codec 95 received from '(null)'
    -- SIP/2000-0000003b answered SIP/3000-0000003a
    -- Locally bridging SIP/3000-0000003a and SIP/2000-0000003b
    == Spawn extension (phones, 2000, 1) exited non-zero on 'SIP/3000-0000003a'"
    ab. Auch den Pi kann ich nicht anrufen. Fehlermeldung: "Service Unavailable, 503". In der Asterist CLI kommt: "Using SIP RTP CoS mark 5
    -- Executing [3000@phones:1] Dial("SIP/2000-0000003e", "SIP/3000") in new stack
    == Using SIP RTP CoS mark 5
    -- Called SIP/3000
    == Everyone is busy/congested at this time (1:0/0/1)
    -- Auto fallthrough, channel 'SIP/2000-0000003e' status is 'CHANUNAVAIL'"


    Leider haben mir jegliche Forenbeiträge bis jetzt nicht weiter geholfen. Ich bin schon seit 3 Tagen am Suchen und finde einfach nichts.... Das einzige was ich mir noch vorstellen könnte wären die Porteinstellungen?! Ich bitte um Hilfe. Vielen Dank!

  • Hallo,
    Folgendes würde ich mal probieren:
    1) Ist der Port in der SIP.conf unterschiedlich mit der in der DoorPi.ini


    2) Stell einmal die Audio Codecs auf: audio_codecs = PCMA, PCMU

    Was sagen in der Asterisk Konsole folgende Befehle?
    sip show pairs
    sip show users

    LgAlex

  • Oh, hab deine Antwort leider nicht gesehen.... Ja, es waren die Codecs...


    Leider musste ich mein System neu aufsetzen, seit dem sagt er mir jetzt im Log:
    2017-09-26 12:14:16,959 [INFO] [doorpi.conf.config_object] use configfile: /usr/local/etc/DoorPi/conf/doorpi.ini
    2017-09-26 12:14:16,979 [INFO] [doorpi.status.webserver] Initiating WebService at ip and port 80
    2017-09-26 12:14:16,984 [WARNING] [root] section WritePermission not found in configfile
    2017-09-26 12:14:16,985 [WARNING] [root] section ReadPermission not found in configfile
    2017-09-26 12:14:16,986 [WARNING] [root] section Group not found in configfile
    2017-09-26 12:14:16,987 [WARNING] [root] section User not found in configfile
    2017-09-26 12:14:16,988 [ERROR] [doorpi.status.webserver] no ReadPermission found
    2017-09-26 12:14:16,988 [ERROR] [doorpi.status.webserver] no groups in configfile!
    2017-09-26 12:14:16,989 [ERROR] [doorpi.status.webserver] no WritePermission found
    2017-09-26 12:14:16,995 [INFO] [doorpi.keyboard.KeyboardInterface] using multi-keyboard mode (keyboards: onboardpins)
    2017-09-26 12:14:16,997 [INFO] [doorpi.keyboard.KeyboardInterface] trying to add keyboard 'onboardpins' to handler
    2017-09-26 12:14:17,088 [INFO] [doorpi.sipphone.SipphoneInterface] found installed sipphone "linphone" and use this as default
    2017-09-26 12:14:17,164 [INFO] [doorpi.sipphone.from_linphone] found 3 possible sounddevices:
    2017-09-26 12:14:17,169 [INFO] [doorpi.sipphone.from_linphone] found 1 possible videodevices:
    2017-09-26 12:14:17,172 [INFO] [doorpi.sipphone.from_linphone] using DoorPi with SIP-Server
    2017-09-26 12:14:17,272 [WARNING] [doorpi.action.handler] source doorpi.sipphone.linphone_lib.Player unknown - skip fire_event OnPlayerStopped


    2017-09-26 12:14:17,785 [INFO] [doorpi.doorpi] ======== DoorPi successfully shutdown ========


    Die Config ist:
    [DoorPi]
    base_path = /usr/local/etc/DoorPi
    eventlog = !BASEPATH!/conf/eventlog.db
    is_alive_led = run
    last_snapshot =


    [DoorPiWeb]
    indexfile = index.html
    ip =
    loginfile = login.html
    online_fallback = http://motom001.github.io/DoorPiWeb
    port = 80
    public = AREA_public
    www = !BASEPATH!/../DoorPiWeb


    [EVENT_OnStartup]
    10 = sleep:1


    [SIP-Phone]
    firewallpolicy = PolicyNoFirewall
    audio_codecs = PCMA,PCMU
    call_timeout = 15
    capture_device = ALSA: default device
    dialtone = !BASEPATH!/media/ShortDialTone.wav
    dialtone_renew_every_start = False
    dialtone_volume = 35
    echo_cancellation_enabled = False
    identity = DoorPi
    local_port = 5065
    max_call_time = 120
    playback_device = ALSA: default device
    record_while_dialing = False
    records = !BASEPATH!/records/%Y-%m-%d_%H-%M-%S.wav
    sipphonetyp = linphone
    sipserver_password = PASSWORT
    sipserver_realm =
    sipserver_server = 192.168.1.178
    sipserver_username = 3000
    stun_server =
    ua.max_calls = 2
    video_codecs = VP8
    video_device = StaticImage: Static picture
    video_display_enabled = False
    video_size = vga


    [keyboards]
    onboardpins = gpio


    [onboardpins_keyboard]
    bouncetime = 200


    [onboardpins_InputPins]
    35 = call:2000
    [onboardpins_OutputPins]
    37 = run
    33 = doorOpener



    Ich habe dazu zwar Referenzen gefunden, allerdings sind dort dann Links mit der Lösung und diese funktionieren nicht.
    Von Problem zu Problem - ich bekomme noch die Kriese :D

  • Danke Alex, ja hatte ich dann auch gesehen. Aber ich glaube nicht, dass es daran liegt. Hab es drin und trotzdem kommen die letzten beiden Zeilen vom Log. Also hier
    2017-09-26 12:14:17,272 [WARNING] [doorpi.action.handler] source doorpi.sipphone.linphone_lib.Player unknown - skip fire_event OnPlayerStopped


    2017-09-26 12:14:17,785 [INFO] [doorpi.doorpi] ======== DoorPi successfully shutdown ========


    Ich habe gestern mal das System neu aufgesetzt. JETZT ist Asterisk noch weg --> alles gut, selbst bei vollständiger SIP-Konfiguration.


    Ich habe die User, Group und READ/-WritePermission hier entnommen: Config unterstützung , Beitrag von "Das-Flippi"


    Ich fürchte nur, wenn ich gleich Asterisk installiere, wird es wieder kraschen. Ich berichte. ;)