Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. IoBroker und VOIP / SIP Calls mit Asterisk + Fritzbox

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    IoBroker und VOIP / SIP Calls mit Asterisk + Fritzbox

    This topic has been deleted. Only users with topic management privileges can see it.
    • Stuebi
      Stuebi last edited by Stuebi

      Um die Konfiguration des Adapters zu vereinfachen, kann man ab Version 1.0.5 (steht heute über GitHub und Morgen über npm zur Verfügung).
      Nun können die Asterisk Konfigurationsdateien automatisch aus ioBroker erstellt werden.
      Dafür sind alle notwendigen Felder zur füllen und die Checkbox "create asterisk config files (once)" aktiviert werden. Beim ersten Start des Adapters werden die Asterisk Config Files im Verzeichnis /tmp/ erstellt. Diese müssen noch umbenannt und in das /etc/asterisk Verzeichnis verschoben werden.

      Ich habe die Anleitung hier angepasst: https://forum.iobroker.net/topic/16460/iobroker-und-voip-sip-calls-mit-asterisk-fritzbox

      1 Reply Last reply Reply Quote 0
      • M
        martin last edited by

        Sehr gut.
        Das erspart jede Menge Arbeit.

        Stuebi 1 Reply Last reply Reply Quote 0
        • Stuebi
          Stuebi @martin last edited by

          @martin said in IoBroker und VOIP / SIP Calls mit Asterisk + Fritzbox:

          Sehr gut.
          Das erspart jede Menge Arbeit.

          das hoffe ich! ich bin gespannt auf die erste Installation

          1 Reply Last reply Reply Quote 0
          • L
            Linedancer last edited by

            Sehr schöner Adapter, danke dafür. Leider hab ich noch etwas Probleme. Der Adapter vebindet sich mit dem asterisk server und ist grün. Im Log (Debug level) steht:

            asterisk.0	2019-03-01 14:56:41.879	debug	Management Events: {"event":"Registry","privilege":"system,all","channeltype":"SIP","username":"xxxxxx","domain":"192.168.1.1","status":"Request Sent"}
            

            wobei die IP Adresse falsch ist. die muss 192.168.178.1 heissen.
            sowohl in der adapter Config und in der sip.conf steht die richtige drin, im Log ist sie trotzdem falsch.
            Wo kann ich hier den Hebel noch ansetzen?

            Stuebi 1 Reply Last reply Reply Quote 0
            • Stuebi
              Stuebi @Linedancer last edited by

              @Linedancer , hallo kannst Du mir bitte einmal Deine sip.conf und Screenshots von Deiner Asterisk ioBroker Konfiguration unter Instanzen an thorsten@stueben.de zuschicken. Passwörter bitte schwärzen, Rest so lassen.

              Hast Du die Asterisk Konfigurationsdateien manuell erstellt oder durch ioBroker erstellen lassen?

              VG
              Stübi

              L 1 Reply Last reply Reply Quote 0
              • L
                Linedancer @Stuebi last edited by

                @Stuebi
                Mail ist unterwegs, danke für deinen Support

                Stuebi 1 Reply Last reply Reply Quote 0
                • Stuebi
                  Stuebi @Linedancer last edited by

                  @Linedancer sagte in IoBroker und VOIP / SIP Calls mit Asterisk + Fritzbox:

                  @Stuebi
                  Mail ist unterwegs, danke für deinen Support

                  Antwort auch

                  1 Reply Last reply Reply Quote 0
                  • M
                    martin last edited by

                    Gibt es die Möglichkeit im Skript mit einzubauen, dass er die erstellte Datei nach erfolgreicher Abarbeitung des Skriptes wieder löscht?
                    Da sammelt sich ja einiges an Dateien an.

                    Stuebi 2 Replies Last reply Reply Quote 0
                    • Stuebi
                      Stuebi @martin last edited by

                      @martin , ich muss mal sehen ob ich irgendwie herausbekommen, wann ein Anruf erfolgreich beendet wurde über Events.
                      Aber was ich machen kann, ist bei jedem Start der Instanz alle alten Dateien zu löschen. Hilft das schon?

                      1 Reply Last reply Reply Quote 0
                      • Stuebi
                        Stuebi @martin last edited by

                        @martin, ich habe eben etwas experimentiert . Du kannst folgendes in Deine /etc/asterisk/extensions.ael einbauen ( h => { ..... } 😞

                        context default {
                                1000 => {
                                Goto(ael-antwort,s,1);
                                }
                        }
                        
                        context ael-ansage {
                                _. => {
                                Answer();
                                Wait(1);
                                        Read(dtmf,${file}&beep,0,s,${repeat},1);
                                        if ("${dtmf}"  != "") {
                                                SayDigits(${dtmf});
                                        }
                                        Hangup();
                                }
                        
                                h =>  {
                                        NoOp(/bin/rm ${file}.*);
                                        System(/bin/rm ${file}.*);
                                }
                        }
                        
                        context ael-antwort {
                                s  => {
                                        Answer();
                                        Wait(1);
                                        Set(repeat=5);
                                        Read(dtmf,/tmp/asterisk_dtmf&beep,0,s,${repeat},1);
                                        if ("${dtmf}"  != "") {
                                                SayDigits(${dtmf});
                                        }
                                        Hangup();
                                }
                        }
                        
                        1 Reply Last reply Reply Quote 0
                        • M
                          martin last edited by

                          VIELEN DANK!
                          Jetzt bleibt der Ordner sauber.

                          Stuebi 1 Reply Last reply Reply Quote 0
                          • Stuebi
                            Stuebi @martin last edited by

                            @martin , werde ich in der nächsten Version bei Textnachrichten berücksichtigen.
                            Wird eine Audiodatei statt Text vorgegeben, bleibt die Datei bestehen.

                            1 Reply Last reply Reply Quote 0
                            • T
                              TemPeck last edited by

                              Hallo!

                              Ich habe eben ein Update von 1.0.1. auf 1.0.6 gemacht, seitdem funktionieren die Anrufe nicht mehr und es gibt folgenden Fehler im Log:


                              2019-03-27 17:50:05.059 - info: asterisk.0 Start dialing
                              2019-03-27 17:50:05.064 - error: asterisk.0 Error while dialing (1). Error: {"response":"Error","actionid":"7505cffe-eea8-eee4-5289-b60c7711e803","message":"Extension does not exist."}, Result: {"parameter":{"telnr":"+XXXXX","callerid":"+XXXXXX","text":"Einbruchalarm","extension":"XXXXX","audiofile":"/tmp/audio_10953344","delete":"delete"},"options":{"action":"originate","channel":"SIP/XXXX/XXXXX","context":"ael-ansage","exten":"XXXXX","priority":1,"timeout":60000,"variable":{"repeat":5,"file":"/tmp/audio_10953344","del":"delete"},"callerid":"XXXX"},"guid":"7505cffe-eea8-eee4-5289-b60c7711e803","result":{"response":"Error","actionid":"7505cffe-eea8-eee4-5289-b60c7711e803","message":"Extension does not exist."}}
                              2019-03-27 17:50:05.066 - info: javascript.0 script.js.Sicherheit.Kamera.test_asterisk: Result: {"result":{"parameter":{"telnr":"+XXXXX","callerid":"+XXXXX","text":"Einbruchalarm","extension":"XXXX","audiofile":"/tmp/audio_10953344","delete":"delete"},"options":{"action":"originate","channel":"SIP/XXXX/XXXXX","context":"ael-ansage","exten":"XXXXXX","priority":1,"timeout":60000,"variable":{"repeat":5,"file":"/tmp/audio_10953344","del":"delete"},"callerid":"XXXXXX"},"guid":"7505cffe-eea8-eee4-5289-b60c7711e803","result":{"response":"Error","actionid":"7505cffe-eea8-eee4-5289-b60c7711e803","message":"Extension does not exist."}},"error":{"response":"Error","actionid":"7505cffe-eea8-eee4-5289-b60c7711e803","message":"Extension does not exist."}}

                              Meine Nummern hab ich im Log natürlich gerade durch XXXXX ersetzt.

                              Da ich unter Proxmox arbeite habe ich vorher ein Snapshot erstellt und hab den Zustand wiederhergestellt. Unter 1.0.1 läuft es nun wieder.

                              Nun meine Frage: Was hätte ich im Skript oder sonst wo anpassen müssen?
                              Aus dem Log werde ich leider nicht schlau...

                              Das Script, was gestartet wurde, sieht wie folgt aus:

                              var number   = "HANDYNUMMER";
                              var callerid = 'FESTNETZNUMMER'; // optional, if not set anonymous call
                              var msg      = "Einbruchalarm"; 
                              
                              // call telephone nummber 040 666-7766 and play text message as audio
                              sendTo('asterisk.0', "dial", { telnr: number, callerid: callerid, text:  msg},  (res) => {
                                    console.log('Result: ' + JSON.stringify(res));
                              });  
                              
                              Stuebi 1 Reply Last reply Reply Quote 0
                              • Stuebi
                                Stuebi @TemPeck last edited by Stuebi

                                @TemPeck, Dein Skript ist okay. die Konfiguration hat sich seit 1.0.1 sher geändert. Hintergrund, Bugfixing, einfachere Konfiguration und neue Anforderungen.
                                Am einfachsten ist es, Du installierst die Version 1.0.6 und füllst nochmals nach der Anleitung https://github.com/schmupu/ioBroker.asterisk/blob/master/docs/SIP_FRITZBOX.md die Felder in der Asterisk Konfiguration aus. Anschließend "Asterisk Konfiguration erstellen (einmalig)" anklicken und speichern/schließen. Nun werden die Asterisk Konfigurationsfiles im Verzeichnis /tmp/ abgelegt. Diese wie folgt kopieren:

                                sudo mv /tmp/extensions.ael /etc/asterisk/extensions.ael
                                sudo mv /tmp/manager.conf /etc/asterisk/manager.conf
                                sudo mv /tmp/sip_fritzbox.conf /etc/asterisk/sip.conf
                                sudo mv /tmp/rtp.conf /etc/asterisk/rtp.conf
                                

                                Jetzt Asterisk (sudo /etc/init.d/asterisk restart) und die ioBroker Asterisk Instanz neu starten!

                                Alternativ kannst Du auch wie hier beschrieben vorgehen: https://github.com/schmupu/ioBroker.asterisk/blob/master/docs/PJSIP_FRITZBOX.md . Bitte dann die /etc/asterisk/sip.conf löschen, da jetzt die pjsip.conf genutzt wird.

                                T 1 Reply Last reply Reply Quote 0
                                • T
                                  TemPeck @Stuebi last edited by

                                  @Stuebi Wunderbar, danke für den Support, es läuft nun alles in der neuesten Version.

                                  Für mich einer der wichtigsten Adapter, da ich jederzeit "alarmiert" werden kann. Top und vielen Dank für die Arbeit an diesem Adapter!!

                                  Stuebi 1 Reply Last reply Reply Quote 0
                                  • Bluefox
                                    Bluefox last edited by

                                    Gibt es die Möglichkeit auf DTMF zu reagieren?

                                    Stuebi 1 Reply Last reply Reply Quote 0
                                    • Stuebi
                                      Stuebi @Bluefox last edited by Stuebi

                                      @Bluefox sagte in IoBroker und VOIP / SIP Calls mit Asterisk + Fritzbox:

                                      Gibt es die Möglichkeit auf DTMF zu reagieren?

                                      Ja das geht. Man kann zum Beispiel Asterisk anrufen und Und den dann DTMF in iobroker auswerten.
                                      Es geht auch umgekehrt, ioBroker ruft dich über Asterix an und der Angerufene gibt dann ein DTMF Code ein

                                      guss
                                      stübi

                                      1 Reply Last reply Reply Quote 0
                                      • Stuebi
                                        Stuebi @TemPeck last edited by

                                        @TemPeck sagte in IoBroker und VOIP / SIP Calls mit Asterisk + Fritzbox:

                                        @Stuebi Wunderbar, danke für den Support, es läuft nun alles in der neuesten Version.

                                        Für mich einer der wichtigsten Adapter, da ich jederzeit "alarmiert" werden kann. Top und vielen Dank für die Arbeit an diesem Adapter!!

                                        Super, danke das freut mich

                                        1 Reply Last reply Reply Quote 0
                                        • K
                                          Kai103 last edited by

                                          Ich muss mich hier noch mal reinhängen, ursprünglich war ich Kai102, aber irgendwie hat es mich bei der Forumsumstellung zerschossen. Habe nun zum Herbst wieder mal angefangen mich mit Asterisk zu beschäftigten und hänge ziemlich an dem "Standardproblem"Cound not connect to Asterisk Manager! T. Die drei Dateien sind entsprechend angepasst, mir ist aber aufgefallen, dass ich nach dem Befehl asterisk -rvvvvv die Fehlermeldung bekomme :
                                          Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?). Stimmt, bzw. stimmt nicht, asterisk.ctl gibt es, die ist aber leer..... Jemand ein Tip ?

                                          Stuebi 1 Reply Last reply Reply Quote 0
                                          • Stuebi
                                            Stuebi @Kai103 last edited by

                                            @Kai103 sagte in IoBroker und VOIP / SIP Calls mit Asterisk + Fritzbox:

                                            und hänge ziemlich an dem

                                            ja, das klingt so, als ob asterisk nicht läuft. Hast Du es auch gestartet? Unter Linux geht das z.B. mit

                                            sudo /etc/init.d/asterisk stop
                                            sudo /etc/init.d/asterisk start 
                                            

                                            prüfe vorher mit

                                            ps -ef | grep asterisk
                                             
                                            

                                            ob asterisk läuft. Wenn das der Fall ist, dann sollte auch asterisk -rvvvvv
                                            funktionieren.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            953
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            44
                                            202
                                            33976
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo