Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. [Aufruf] Asterisk VoIP Adapter

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Aufruf] Asterisk VoIP Adapter

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

      Hallo,

      ich habe einen neuen Adapter entwickelt mit dem man über ioBroker mit dem Anrufe tätigen kann um Audiodateien dem Angerufenen vorzuspielen. Alternativ kann auch ein Text (maximal 200 Zeichen) dem Angerufenen vorgelesen werden.

      Die VoIP Anbindung geschieht über https://www.asterisk.org/. Deswegen ist eine Asterisk Installation auf dem ioBroker Rechner Voraussetzung. Eine genaue Anleitung wie das geht, findet ihr https://github.com/schmupu/ioBroker.asterisk/blob/master/README.md.

      Auch müsst Ihr entweder eine Fritzbox besitzen oder einen VoIP / SIP Account haben.

      Sobald Asterisk und ffmpeg installiert ist, müsst Ihr noch 3 Konfigurationsdateien kopieren und davon die /etc/asterisk/sip.conf und /etc/asterisk.manager.conf um Benutzername, IP-Adresse, Passwort, etc. anpassen. Die /etc/asterisk/extensions.ael bitte unberührt lassen.

      Wenn alles fertig installiert ist, kann wie folgt eine Textnachricht verschickt werden:

      Asterisk VoIP Adapter: https://github.com/schmupu/ioBroker.asterisk

      var number  = "040 666-7766";
      var msg     = "Hello, this textmessage will be converted to audio"; 
      
      // Call telephone number 040 666-7766 and play text message as audio message
      sendTo('asterisk.0', "dial", { telnr: number, text:  msg}, (res) => {
              console.log('Result: ' + res);
      });       
      
      // Call number an play mp3 audio file to callee
      sendTo('asterisk.0', "dial", {telnr: , audiofile: '/tmp/say.mp3' },  (result) => {
          console.log('Result: ' + res);
      });    
      
      // Call number an play gsm audio file to callee
      sendTo('asterisk.0', "dial", {telnr: , audiofile: '/tmp/say.gsm' },  (result) => {
          console.log('Result: ' + res);
      });    
      
      

      Ich bin gespannt auf Euer Feedback!

      VG

      Stübi

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

        Moin,

        ab heute gibt es denn Asterisk VoIP Adapter in der Version 0.1.3. Falls ihr den Adapter schon an laufen habt, müsst ihr einmal die /etc/asterisk/super.conf ändern. Hier muss nun [iobroker] statt der [Fritzbox Username] stehen.

        Weiterhin könnt ihr auch Asterisk auf einem anderem Rechner installieren. Wichtig, dass beide Rechner auf ein gemeinsames Laufwerk zugreifen können und das der Pfad auf beiden Rechnern dann gleich heisst und Asterisk und ioBroker lese und schreibe Berechtigungen auf das freigegebene Verzeichnis haben.

        Bsp:

        Auf Raspberry 1 liegen die Audio Dateien im Pfad /var/spool/asterisk/audio

        Dann mounted man auf der. Rasberry 2 das Verz. mit

        mount raspi1:/var/spool/asterisk/audio /var/spool/asterisk/audio

        Auf beiden Rechnern ist der Pfad nun /var/spool/asterisk/audio

        Einfacher ist alles auf der gleichen Hardware zu installieren!!!

        Gesendet von iPhone mit Tapatalk

        1 Reply Last reply Reply Quote 0
        • Eisbaeeer
          Eisbaeeer Developer last edited by

          Coole Idee. Hast du einen konkreten Anwendungsfall? Lässt du dich selbst anrufen oder wie setzt du den Adapter ein?

          Könnte mir das als Alarmierung vorstellen. Dann über IVR per DTMF einen Alarm bestätigen.

          Bin auf weitere Ideen gespannt.

          Gesendet von meinem SM-G950F mit Tapatalk

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

            @Eisbaeeer:

            Coole Idee. Hast du einen konkreten Anwendungsfall? Lässt du dich selbst anrufen oder wie setzt du den Adapter ein?

            Könnte mir das als Alarmierung vorstellen. Dann über IVR per DTMF einen Alarm bestätigen.

            Bin auf weitere Ideen gespannt.

            Gesendet von meinem SM-G950F mit Tapatalk `

            ich nutze den Adapter für meine Alarmanlage. Über den https://github.com/schmupu/ioBroker.contactid Adapter erhalte ich immer den aktuellen Status der Alarmanlage. Bei einem Einbruch, Feuer, Wassereinbruch werde ich über den Asterisk VoIP zusätzlich zu einer SMS und Email angerufen. SMS und Email übersehe ich gerne, aber einen Anruf bekomme ich immer mit.

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

              Noch ein wichtiger Hinweis. Wenn man den Adapter zusammen mit der Fritzbox nutzt, darf auf der Fritzbox unter Telefongerät der Benutzername nur aus Zahlen bestehen!

              ; /etc/asterisk/sip.conf
              
              [general]				; Do not change
              port = 5060				; Do not change
              bindaddr = 0.0.0.0			; Do not change
              context = default			; Do not change
              subscribecontext = default		; Do not change
              
              register => 12345689:mypassword@192.168.1.1/1000 ; Username (only numbers permitted), Password and IP address of Fritzbox WLAN/LAN telephone
              
              [iobroker]               		; Do not change
              type = friend				; Do not change
              username = 123456789      		; Change to username of Fritzbox WLAN/LAN telephone (only numbers permitted)
              host = 192.168.1.1        		; Change hostname / IP address of Fritzbox
              secret = mypassword       		; Change password of Fritzbox WLAN/LAN telephone
              fromdomain = 192.168.1.1  		; Change hostname / IP address of Fritzbox
              fromuser = 123456789   		  	; Change username of Fritzbox WLAN/LAN telephone (only numbers permitted)
              callerid= 03047114711	  		; Change your telephone number defined in the Fritzbox
              
              
              1 Reply Last reply Reply Quote 0
              • Stuebi
                Stuebi last edited by

                Ab Morgen gibt es die Version 0.1.6 vom Asterisk VoIP Adapter. Was hat sich geändert:

                • Das Asterisk Passwort wird nun in ioBroker verschlüsselt gespeichert. Aus diesem Grund ist das Passwort erneut einzugeben.

                • Die Textlänge ist nicht mehr beschränkt auf 200 Zeichen. Theoretisch kann dieses nun unendlich lang sein

                var number  = "040 666-7766";
                var msg     = "Hello, this textmessage will be converted to audio"; // now unlimited size 
                
                // Call telephone number 040 666-7766 and play text message as audio message
                sendTo('asterisk.0', "dial", { telnr: number, text:  msg}, (res) => {
                        console.log('Result: ' + res);
                });       
                
                
                1 Reply Last reply Reply Quote 0
                • E
                  ErazorVIP last edited by

                  Könnte man auch bestimmte Funktionen auslösen via DTMF?

                  Gruß

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

                    @ErazorVIP:

                    Könnte man auch bestimmte Funktionen auslösen via DTMF?

                    Gruß `

                    Gute Idee, ioBroker ruft an und man tippt ein DTMF Code ein, welcher eine bestimmte Funktion auslöst.

                    Ich werde mal schauen ob das umzusetzen ist

                    1 Reply Last reply Reply Quote 0
                    • E
                      ErazorVIP last edited by

                      Ja,

                      meine Intension geht dahin das ich unterwegs den ioBroker anrufen kann und erstmal ein Passwort via DTMF eingeben muss und danach kann ich zum Beispiel mein Tor öffnen lassen oder irgendwas veranlassen…

                      1 Reply Last reply Reply Quote 0
                      • H
                        Homebro last edited by

                        Cooler Adapter 8-) Möchte es so gern probieren aber ich habe bereits eine Asterisk installation auf eine anderen server in gebrauch. Ist dass möglich :? ?

                        Viele Grüsse aus Dänemark

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

                          @Homebro:

                          Cooler Adapter 8-) Möchte es so gern probieren aber ich habe bereits eine Asterisk installation auf eine anderen server in gebrauch. Ist dass möglich :? ?

                          Viele Grüsse aus Dänemark `

                          Ja, das ist möglich, habe ich selber auch schon genutzt. Du musst Ein Verzeichnis auf irgendeinem Server anlegen (z.b. NAS, Asterisk Server oder ioBroker Server). Nun musst Du das Verzeichnis vom Asterisk Server und ioBroker Server aus mounten. Wichtig, das Verzeichnis muss auf dem Asterisk und ioBroker Server muss umbedingt identisch heißen. Helfen tut dabei auch der ln -s Befehl. Anschließend muss Du in der Adapter Konfiguration den angelegten Verzeichnisnamen in ioBroker / Asterisk hinterlegen.

                          Ist das geschehen speichert der Asterisk Adapter die GSM (WAV) Files in dem Verzeichnis. Asterisk kann dann auf das File zugreifen.

                          Viel Spaß in Dänemark!

                          VG

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

                            @ErazorVIP:

                            Könnte man auch bestimmte Funktionen auslösen via DTMF?

                            Gruß `

                            Ab der der Version 0.1.7 wird das ab heute unterstützt. Die Version kannst Du entweder heute über GitHub herunterladen oder Morgen/Übermorgen als Update in ioBroker sehen.

                            Du musst in der Version ein paar Dinge an Deiner Konfiguration anpassen. Einmal in der sip.conf. Statt [iobroker] muss dort jetzt Dein Username aus der Fritzbox stehen (dürfen nur Zahlen enthalten und identisch zu dem Eintrag username = .. in der sip.conf) wie z.B. [123456789]. Dann ist die extension.ael von der README unter https://github.com/schmupu/ioBroker.asterisk zu kopieren. Zuletzt ist noch in der Adapter Konfiguration der Username aus der sip.conf zu pflegen. In dem Beispiel oben 123456789.

                            Hier ein Beispiel um den DTMF Code abzufragen:

                            // Show entered DTMF code 
                            on({ id: "asterisk.0.dialin.dtmf"/*DTMF Code*/ },  (obj) => {
                                let dtmf = obj.state.val;
                                console.log("DTMF: " + dtmf);
                            });
                            
                            // Show entered DTMF code
                            on({ id: "asterisk.0.dialout.dtmf"/*DTMF Code*/ },  (obj) => {
                                let dtmf = obj.state.val;
                                console.log("DTMF: " + dtmf);
                            });
                            
                            
                            1 Reply Last reply Reply Quote 0
                            • Stuebi
                              Stuebi last edited by

                              <u>WICHTIG ab Version 0.1.7</u>

                              Ab der Version 0.1.7 sind leider ein paar Anpassungen notwendig damit der Adapter weiterhin läuft!!!!

                              <list type="decimal">4. Die sip.conf ist anzupassen. Statt [iobroker] muss hier der username der immer aus Zahlen besteht aus der sip.conf stehen. Beispiel [12345689]

                              1. In der Asterisk Adapter Konfiguration ist der Username aus der sip.conf zusätzlich zu hinterlegen. Beispiel: 123456789

                              2. Die /etc/asterisk/extension.ael ist von der Seite https://github.com/schmupu/ioBroker.asterisk in das Verzeichnis /etc/asterisk zu kopieren.

                              Damit werden folgende neue Features unterstützt

                              • Anrufe können nun auch über States und nicht nur über sendTo initiiert werden

                              • Text bei eingehenden Anrufen kann über States vorgegeben werden

                              • Bei eingehende Anrufen kann der DTMF Code ausgewertet werden

                              • Bei ausgehenden Anrufen kann der DTMF Code ausgewertet werden

                              Zukünftig werde ich den Adapter von Asterisk AMI auf Asterisk AGI umstellen. Dann sind weniger manuelle Einstellungen notwendig.

                              VG

                              Stübi

                              1 Reply Last reply Reply Quote 0
                              • S
                                Secrenz last edited by

                                Guten Abend,

                                ich habe heute mich mal mit Asterisk beschäftigt.

                                Wenn ich die Interne Nummer vom Asterisk Server Anrufe bekomme ich auch die Meldung am Telefon dass es geklapt hat.

                                Im ioBroker ist auch im Log das er connected ist aber, wenn ich nun das Testscript laufen lassen. bekomme ich die Fehlermeldung:

                                "Paramter telnr and/or text/audiofile is missing"

                                Kann mir da jemand weiter helfen?

                                Vielen Dank im voraus.

                                Mit freundlichen Grüßen

                                Secrenz

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

                                  Hallo Secrenz,

                                  welche Asterisk Adapter Version nutzt Du und welche Sprache hast Du beim Adapter eingestellt? Hast Du den Befehl wie folgt eingegeben?

                                  let telnr = '017247114711';
                                  let textmsg = 'Ein Test mit dem ioBroker Asterisk Adapterer';
                                  
                                  sendTo('asterisk.0', 'dial', { telnr: telnr, text: textmsg }, (res) => {
                                      console.log('Result ' + JSON.stringify(res));
                                  });    
                                  
                                  

                                  oder folgendes

                                  4352_bildschirmfoto_2018-12-28_um_07.38.19.png

                                  Gruß

                                  Thorsten

                                  1 Reply Last reply Reply Quote 0
                                  • stoamandl
                                    stoamandl last edited by

                                    @tstueben:

                                    <u>WICHTIG ab Version 0.1.7</u>

                                    Ab der Version 0.1.7 sind leider ein paar Anpassungen notwendig damit der Adapter weiterhin läuft!!!!

                                    <list type="decimal">4. Die sip.conf ist anzupassen. Statt [iobroker] muss hier der username der immer aus Zahlen besteht aus der sip.conf stehen. Beispiel [12345689]

                                    1. In der Asterisk Adapter Konfiguration ist der Username aus der sip.conf zusätzlich zu hinterlegen. Beispiel: 123456789

                                    2. Die /etc/asterisk/extension.ael ist von der Seite https://github.com/schmupu/ioBroker.asterisk in das Verzeichnis /etc/asterisk zu kopieren.

                                    Damit werden folgende neue Features unterstützt

                                    • Anrufe können nun auch über States und nicht nur über sendTo initiiert werden

                                    • Text bei eingehenden Anrufen kann über States vorgegeben werden

                                    • Bei eingehende Anrufen kann der DTMF Code ausgewertet werden

                                    • Bei ausgehenden Anrufen kann der DTMF Code ausgewertet werden

                                    Zukünftig werde ich den Adapter von Asterisk AMI auf Asterisk AGI umstellen. Dann sind weniger manuelle Einstellungen notwendig.

                                    VG

                                    Stübi `

                                    Hallo Stübi,

                                    danke für die Info!

                                    Hab mich schon gewundert warum mein Adapter nicht mehr geht.

                                    Bist du auch der Maintainer der https://www.npmjs.com/package Source?

                                    Hier sollte im Changelog darauf verwiesen werden das ab 0.1.7 diese Änderungen nötig sind.

                                    Hätte mir 2 Stunden logfile lesen erspart 😉

                                    Gruß und schönen Start ins Wochenende

                                    Stoamandl

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

                                      @stoamandl:

                                      @tstueben:

                                      <u>WICHTIG ab Version 0.1.7</u>

                                      Ab der Version 0.1.7 sind leider ein paar Anpassungen notwendig damit der Adapter weiterhin läuft!!!!

                                      <list type="decimal">4. Die sip.conf ist anzupassen. Statt [iobroker] muss hier der username der immer aus Zahlen besteht aus der sip.conf stehen. Beispiel [12345689]

                                      1. In der Asterisk Adapter Konfiguration ist der Username aus der sip.conf zusätzlich zu hinterlegen. Beispiel: 123456789

                                      2. Die /etc/asterisk/extension.ael ist von der Seite https://github.com/schmupu/ioBroker.asterisk in das Verzeichnis /etc/asterisk zu kopieren.

                                      Damit werden folgende neue Features unterstützt

                                      • Anrufe können nun auch über States und nicht nur über sendTo initiiert werden

                                      • Text bei eingehenden Anrufen kann über States vorgegeben werden

                                      • Bei eingehende Anrufen kann der DTMF Code ausgewertet werden

                                      • Bei ausgehenden Anrufen kann der DTMF Code ausgewertet werden

                                      Zukünftig werde ich den Adapter von Asterisk AMI auf Asterisk AGI umstellen. Dann sind weniger manuelle Einstellungen notwendig.

                                      VG

                                      Stübi `

                                      Hallo Stübi,

                                      danke für die Info!

                                      Hab mich schon gewundert warum mein Adapter nicht mehr geht.

                                      Bist du auch der Maintainer der https://www.npmjs.com/package Source?

                                      Hier sollte im Changelog darauf verwiesen werden das ab 0.1.7 diese Änderungen nötig sind.

                                      Hätte mir 2 Stunden logfile lesen erspart 😉

                                      Gruß und schönen Start ins Wochenende

                                      Stoamandl `

                                      Sorry, du hast Recht. Ändere ich dann lieber und setzte die Version hoch

                                      Gesendet von iPhone mit Tapatalk

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        Secrenz last edited by

                                        @tstueben:

                                        Hallo Secrenz,

                                        welche Asterisk Adapter Version nutzt Du und welche Sprache hast Du beim Adapter eingestellt? Hast Du den Befehl wie folgt eingegeben?

                                        let telnr = '017247114711';
                                        let textmsg = 'Ein Test mit dem ioBroker Asterisk Adapterer';
                                        
                                        sendTo('asterisk.0', 'dial', { telnr: telnr, text: textmsg }, (res) => {
                                            console.log('Result ' + JSON.stringify(res));
                                        });    
                                        
                                        

                                        oder folgendes

                                        filename="Bildschirmfoto 2018-12-28 um 07.38.19.png" index="0">~~

                                        Gruß

                                        Thorsten `

                                        Ich habe die jetzt die 0.1.8 hatte auch ein downgrade auf 0.1.6 gemacht. Einfach nur zu testen.

                                        Im angegebenen Pfad werden auch gsm Dateien angelegt

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

                                          Das ist schon mal gut, das GSM Dateien angelegt werden. Die sip.conf und extension.ael haben sich in Version 0.1.8 geändert. Die hast Du hoffentlich angepaßt.

                                          Du kannst auf dem Asterisk Server einmal asterisk -rvvvvvv aufrufen und dann nochmals von ioBroker aus ein Telefonat starten. Was bekommst Du da angezeigt?

                                          Dann kannst Du noch den Debug Modus bei Instanzen des Asterisk Adapters aktivieren. Die Meldungen kannst Du mir nochmals schicken.

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            Secrenz last edited by

                                            Ja ich bin auch nach der aktuellen Anleitung vorgegangen.

                                            wenn ich asterisk -rvvvvvv eingebe und ein Anruf mache bekomme ich die Meldung in Putty dass Nutzer oder service nicht kennt.

                                            Ich kontrollieren noch mal meine config

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            629
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter asterisk sip voip
                                            10
                                            71
                                            7730
                                            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