Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. SmS oder Anruf

    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

    UNSOLVED SmS oder Anruf

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

      Also, sollte mal ein Adapter kommen, bin ich gerne bereit durch Testen und Log zu helfen, aber mehr kann ich dazu leider nicht beitragen. 😞
      Auch wenn ich eigentlich keinen ganzen Adpter bräucht. 😉

      Mein Ziel wäre, mir eine SM zu schicken, dann wäre ich wohl schon happy - zumindest für den Moment. 😄

      Schauen wir uns mal den Codefetzen (ich weiß, die ersten beiden Zeilen sind kein Code =))

      Get Sim Inbox
      
      Shows messages of sim inbox
      
      modem.getSimInbox(callback)
      

      an. Steht ja nicht viel drin. 😉
      Wie verpackt man das?
      Aus Deinem

      let serialportgsm = require('serialport-gsm')
      
       
      
      serialportgsm.list((err, result) => {
      
          console.log(JSON.stringify(result))
      
      })
      
      let serialportgsm = require('serialport-gsm')
      
      modem.getSimInbox(callback)
      
      })
      

      machen geht schonmal nicht.

      Daran siehst Du auch, wie wenig ich mit JS auskenne. 😳

      Ich denke, wenn mal ein Gerüst steht, dann sollte es in Blockly mit Function (oder so ;)) schon auch mir möglich sein, ein paar aus Variablen gefühlte Parameter zu übergeben. 😉

      1 Reply Last reply Reply Quote 0
      • Dutchman
        Dutchman Developer Most Active Administrators last edited by

        @Dutchman sagte in SmS oder Anruf:

        https://www.npmjs.com/package/serialport-gsm

        in der basis (also hinter // sind Kommentare !)

        // Hiermit laden wir die externe library/npm Modul das machen wir nur einmal !
        let serialportgsm = require('serialport-gsm')
        
        // Dieser code sorgt dafür das du eine Übersicht bekommst (wie du bereits hattest) mit dem Port usw. 
        serialportgsm.list((err, result) => {
            console.log(JSON.stringnifyresult)
        })
        
        // Dan fangen wir jetzt an mit dem Modem zu reden
        let modem = serialportgsm.Modem()
        let options = {
            baudRate: 115200,
            dataBits: 8,
            parity: 'none',
            stopBits: 1,
            flowControl: false,
            xon: false,
            rtscts: false,
            xoff: false,
            xany: false,
            autoDeleteOnReceive: true,
            enableConcatenation: true,
            incomingCallIndication: true
        }
         
        modem.open('COM', options, callback[Optional])
        
        // dafür muss es initialisiert werden (Modem.on Heist hier reagieren auf Ereignisse in der variable Modem
        modem.on('open', data => {
            modem.initializeModem(callback[optional])
        
        })
        
        // Jetzt sollte es möglich sein so eine SMS zu schicken mit dem text " Hello there Zab!" !
        modem.sendSMS('63999XXXXX19', 'Hello there Zab!', true, callback)
        
        

        bringt dich das fuer den Anfang weiter ?

        1 Reply Last reply Reply Quote 0
        • padrino
          padrino Most Active last edited by

          Leider nicht wirklich.

          Also, erst mal habe ich den letzten Befehl durch einen "sicheren" ersetzt, zum Testen für mich besser. 😉

          modem.getSimInbox(callback)
          

          Das Ergebnis:

          19:08:12.888	[info]	javascript.0 Stop script script.js.common.Skript3
          19:08:12.941	[info]	javascript.0 Start javascript script.js.common.Skript3
          19:08:12.942	[error]	javascript.0 script.js.common.Skript3: script.js.common.Skript3:51
          19:08:12.942	[error]	javascript.0 at script.js.common.Skript3:51:28
          19:08:13.126	[info]	javascript.0 script.js.common.Skript3: undefined
          

          Dann mal Zeile 51 auskommentiert, dann Zeile 70 auskommentiert...
          Ergebnis:

          19:12:13.273	[info]	javascript.0 Stop script script.js.common.Skript3
          19:12:13.320	[info]	javascript.0 Start javascript script.js.common.Skript3
          19:12:13.321	[info]	javascript.0 script.js.common.Skript3: registered 0 subscriptions and 0 schedules
          19:12:13.447	[info]	javascript.0 script.js.common.Skript3: undefined
          

          Seltsamerweise spuckt der Teil

          let serialportgsm = require('serialport-gsm')
          
           
          
          // Dieser code sorgt dafür das du eine Übersicht bekommst (wie du bereits hattest) mit dem Port usw. 
          
          serialportgsm.list((err, result) => {
          
              console.log(JSON.stringnifyresult)
          
          })
          

          nun gar nix mehr aus. Nehm ich den Code alleine (aus Deinem ersten Hinweis), dann kommt wieder die Ausgabe.

          Weitere Vermutungen meinerseits, später da wo 'COM' steht '/dev/ttyAMA0' reinschreiben... aber so weit isses noch nicht. 😃

          1 Reply Last reply Reply Quote 0
          • padrino
            padrino Most Active last edited by padrino

            Bin zwar noch nicht weiter, aber immerhin weiß ich jetzt, wieso er mit dem großen Skript, gar nix mehr ausspuckt. 😃

            Zeile 6 hat einen Tippfehler: console.log(JSON.stringnifyresult) sollte console.log(JSON.stringnify(result)) sein (mit einer "()" um "result").

            Dann mal weiter gucken...

            Dutchman 1 Reply Last reply Reply Quote 0
            • Dutchman
              Dutchman Developer Most Active Administrators @padrino last edited by

              @padrino sagte in SmS oder Anruf:

              Zeile 6 hat einen Tippfehler: console.log(JSON.stringnifyresult) sollte console.log(JSON.stringnify(result) sein (mit einer "(" vor dem "result").

              ☠ ☹ sorry mein Fehler !

              1 Reply Last reply Reply Quote 0
              • padrino
                padrino Most Active last edited by padrino

                Ist doch nicht schlimm. 🙂

                Bin doch froh, dass Du mir überhaupt zu helfen versucht hast.

                1 Reply Last reply Reply Quote 0
                • padrino
                  padrino Most Active last edited by

                  Hoppla...

                  "/dev/ttyAMA0" hier einzutragen

                  modem.open('/dev/ttyAMA0', options);

                  war wohl keine gute Idee.
                  JS Adapter steigt im RAM Verbrauch schrittweise bis auf 700MB, dann stürtzt er ab und startet neu. 😄

                  Naja, ich denke, ich lasse jetzt einfach mal und warte/hoffe, dass irgendwann ein Adapter kommt. 😌

                  1 Reply Last reply Reply Quote 0
                  • Dutchman
                    Dutchman Developer Most Active Administrators last edited by

                    Was für ein Gerät ist das genau juckt mich jetzt so n Teil zu besorgen irgendwie

                    1 Reply Last reply Reply Quote 0
                    • padrino
                      padrino Most Active last edited by padrino

                      Was ich versuche zum Laufen zu bringen?
                      Ne, das findest Du nirgends. 😉
                      Ich probiere das gerade mit meinem alten Handy Nokia 6230i (weil ich das Kabel fürs 6310i gerade nicht finde 😂 ).
                      Ich vermute, ich werde mir mal das von @ulistermclane beschriebene SIM800 besorgen, obwohl ich eigentlich ja neue Hardware vermeiden will, wenn ich noch so einiges an Kram, der gehen sollte rumliegen habe. 😉

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

                        Bei Lidl gibts auch Mobilfunk Kram und da gibts einen daten Stick. Gehen auch andere. Muss nur normale sim Karte drin sein die sms kann.

                        1 Reply Last reply Reply Quote 0
                        • padrino
                          padrino Most Active last edited by

                          Wie ich sagte, ich gebe ungern Geld für neue Sachen aus, wenn ich Kram hier habe, der gehen sollte. a) wegen des Geldes und b) weil es neuer Kram ist, der sich hier anhäuft.
                          Und da ist der 25 Euro Stick von LIDL keine Option für mich, so ein China GSM Modul für 5 Euro schon eher.
                          Aber ich hoffe ja, dass ich evtl. irgendwann eines meiner abgelegten Nokias doch noch dafür nutzen kann. 😃
                          Das Projekt ist jetzt aber nicht so wichtig, hätte es problemlos funktioniert, wäre gut gewesen, tut es leider nicht, ist schade, möchte aber nicht damit noch mehr die Zeit anderer verschwenden.
                          Vor allem, wenn evtl. das Hauptproblem nur mein Unverständnis von JavaScript ist....

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

                            Hallo zusammen, hat jemand etwas im Bereich SMS Versand schon gemacht?
                            Ich hätte eine Kosten günstige Lösung was theoretisch auch machbar ist zudem währe man halt unabhängig vom Internet.

                            Man könnte ein GSM Shild nehmen:https://www.ebay.de/itm/SIM800L-5V-GSM-GPRS-Module-includes-Antenna-Adapter-Supports-Quad-Band-RF-/293566759855?_trksid=p2385738.m4383.l4275.c10
                            Das ganze mit einem USB to TTL Adapter verbinden und im IOBroker JS Adapter über die Serielle Schnittstelle AT Befehle schicken.
                            SIM900.print("AT+IRP=9600")
                            void smssend() {
                            SIM900.println("AT+CMGF=1\r");
                            delay(100);
                            SIM900.println("AT + CMGS = "+nummer"");
                            delay(100);
                            SIM900.println("Fenster geoeffnet!!!");
                            delay(100);
                            SIM900.println((char)26);
                            delay(100);
                            SIM900.println();
                            delay(5000);

                            Das wäre die Variante wenn man von einem Arduino eine SMS Schicken will. Wäre halt die frage ob da jemand helfen kann so etwas in ein JS Script mittels Serialport zu umwandeln.

                            TheBam 1 Reply Last reply Reply Quote 0
                            • TheBam
                              TheBam @TheBam last edited by

                              @ThaBam said in SmS oder Anruf:

                              Hallo zusammen, hat jemand etwas im Bereich SMS Versand schon gemacht?
                              Ich hätte eine Kosten günstige Lösung was theoretisch auch machbar ist zudem währe man halt unabhängig vom Internet.

                              Man könnte ein GSM Shild nehmen:https://www.ebay.de/itm/SIM800L-5V-GSM-GPRS-Module-includes-Antenna-Adapter-Supports-Quad-Band-RF-/293566759855?_trksid=p2385738.m4383.l4275.c10
                              Das ganze mit einem USB to TTL Adapter verbinden und im IOBroker JS Adapter über die Serielle Schnittstelle AT Befehle schicken.
                              SIM900.print("AT+IRP=9600")
                              void smssend() {
                              SIM900.println("AT+CMGF=1\r");
                              delay(500);
                              SIM900.println("AT + CMGS = "+nummer"");
                              delay(500);
                              SIM900.println("Fenster geoeffnet!!!");
                              delay(500);
                              SIM900.println((char)26);
                              delay(500);
                              SIM900.println();
                              delay(5000);

                              Das wäre die Variante wenn man von einem Arduino eine SMS Schicken will. Wäre halt die frage ob da jemand helfen kann so etwas in ein JS Script mittels Serialport zu umwandeln.

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

                                Bei mir steht schon länger ein GSM SMS Adapter auf der Liste ... vllt komm ich bald dazu 🙂

                                Idee ist es wie per "smstools3" direkt mit USB GSM Sticks arbeiten zu können. SMS gehen und Anrufe auch, aber ohne Ton, maximal DTMF Töne ...

                                Habe mit https://github.com/zabsalahid/serialport-gsm als Library als Basis ausgekuckt auf der ich es aufbauen werde

                                1 Reply Last reply Reply Quote 1
                                • TheBam
                                  TheBam last edited by

                                  Ich habe mir das mal angesehen der Ansatz ist gut Allerdings denke ich das man gar nicht so viel brauch letzten endes brauch man nur ein paar AT Befehle.
                                  Ich bin eigentlich auch ein freund von einem Adapter nur vom bauchgefühl denke ich ehr das man wie beim Pushover ehr das ganze über ein Sendto im Blockly dann lösen sollte. Im Adapter dann nur vielleicht eine test funktion und auswahl der schnittstelle.

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

                                    Meiner Erfahrung nach: Unterschätze nicht die ganze Serial "queung logik" Die man braucht und so und die die Library mal mindestens mitbringt.

                                    Der Adapzer hätte eine Identische Kommunikationsschnittstelle wie Pushover, Telegram und so ...

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    738
                                    Online

                                    31.7k
                                    Users

                                    79.9k
                                    Topics

                                    1.3m
                                    Posts

                                    javascript
                                    10
                                    54
                                    4414
                                    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