Navigation

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

    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

    Nello Telegram

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      Jan1 @Marek last edited by

      @Marek
      Na dann ist auch einfach, es geht nicht, oder Du bastelst Dir was mit nem ESP der das in den IOBroker bringt.

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

        Ich möchte ja nicht unhöflich sein, aber ich frage ja wie ich das als Newbie einbinden kann.
        Ich habe dir meine Punkte die zur verfügung stehen oben gepostet. Mehr weiß ich ja auch nicht.
        Hätte ich die Datenpunkte könnte ich damit arbeiten aber so nicht. Habe auch gesehen das man
        Lampen steuern kann wenn es klingelt dann muss es doch mit Telegramm auch gehen.

        Was ist ein ESP ? Wie sollte das funktionieren?

        J 1 Reply Last reply Reply Quote 0
        • J
          Jan1 @Marek last edited by

          @Marek
          Du brauchst etwas das im IObroker das Klingeln signalisiert und das gibt den Trigger für Telegram und wenn Deine Klingel eben nichts in der Richtung für den IOBroker zur Verfügung stellt, dann wirds eben so nicht funktionieten.
          Was ist denn das überhaupt für ein Gerät und Adapter der die DPs vom Screenshot überhaupt liefert?

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

            Habe von den Adaptern den Nello.io Adapter gezogen gibt ja nur einen.

            Verstehe nicht was ich falsch mache 🤷🏼‍♂️

            J CKMartens 2 Replies Last reply Reply Quote 0
            • J
              Jan1 @Marek last edited by

              @Marek
              Aber der Adapter erkennt schon Deine HW?
              Ich hab das Zeug nicht, weiß deshalb auch nicht über den Adapter und die darin enthaltenen DPs. Ob Du was falsch machst oder nicht kann ich auch nicht sagen. Sollte das Türklingeln laut Doku überhaupt als DP vorhanden sein?

              1 Reply Last reply Reply Quote 0
              • CKMartens
                CKMartens @Marek last edited by

                @Marek sagte in Nello Telegram:

                Habe von den Adaptern den Nello.io Adapter gezogen gibt ja nur einen.

                Verstehe nicht was ich falsch mache 🤷🏼‍♂️

                Hast du ihn eingerichtet wie in der Anleitung von Zefau beschrieben? Denn dann hast du ja einen DP der dir den Anruf signiert im Adapter.

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

                  Ja also ich habe den von Zefau beschriebenen Datenpunkt. Da steht halt viel drin. Weiß nicht wie ich das als Script anwenden soll.

                  CKMartens 1 Reply Last reply Reply Quote 0
                  • CKMartens
                    CKMartens @Marek last edited by

                    @Marek sagte in Nello Telegram:

                    Ja also ich habe den von Zefau beschriebenen Datenpunkt. Da steht halt viel drin. Weiß nicht wie ich das als Script anwenden soll.

                    Die Json-Rückgabe über die API wertet der Nello Adapter aus. Auf der Github Seite des Adapters sind Beispiele wie z. B. das für die Ansage über Echo benutzt werden kann. So kannst du dann auch den String für Deine Zwecke benutzen.

                    J 1 Reply Last reply Reply Quote 0
                    • J
                      Jan1 @CKMartens last edited by Jan1

                      @CKMartens
                      Gibt es eine Änderung des DP beim Klingeln? Wenn ja würde das schon als Trigger für Telegram ausreichen.

                      @Marek
                      Auf GitHub sind ja Scripte zum Signalisieren der Türklingel, somit muss ja irgendein DP bei Klingeln zappeln, wenn das nicht der Fall ist, stimmt bei Dir schon was nicht.

                      CKMartens 1 Reply Last reply Reply Quote 0
                      • CKMartens
                        CKMartens @Jan1 last edited by

                        @Jan1 sagte in Nello Telegram:

                        @CKMartens
                        Gibt es eine Änderung des DP beim Klingeln? Wenn ja würde das schon als Trigger für Telegram ausreichen.

                        Klar... Wenn über den iot Adapter ein Service wie in der Anleitung steht eingerichtet ist, wird beim klingeln unter iot.x.service.servicename der Datenpunkt aktualisiert. In dem wird als Json String die Rückgabe von Nello gespeichert (geklingelt und nicht geöffnet , geöffnet, über Geo geöffnet usw.).
                        Diesen Datenpunkte liest dann der Nello-Adapter aus und speichert ihn unter events. Da kannst du dann den Json-String auswerten. Schau dir die Beispiele auf der Github Seite an, da nimmt Zefau das um die Echo Ansage zu machen.

                        J 1 Reply Last reply Reply Quote 0
                        • J
                          Jan1 @CKMartens last edited by

                          @CKMartens
                          Den DP gibt es aber bei @Marek im Screenshot nicht, somit hat er auch die Vorbereitung dazu noch nicht gemacht.
                          Wenn das allerdings erledigt ist, stehen die Events im Klartext drin oder ist das noch ein JASON String? Wobei das für ein Telegramm Nachricht schon reichen würde, wenn man das auf "wurde geändert" prüft.

                          Da muss @Marek wohl noch ein wenig lesen, oder es ist einer so nett der das auch zu Hause hat (@CKMartens) und baut im das mal schnell zusammen 😊

                          1 Reply Last reply Reply Quote 0
                          • CKMartens
                            CKMartens @Marek last edited by

                            @Marek

                            Mal ein kurzer Quick Guide:
                            Nello Adapter installieren und einen Tocken eintragen oder wenn Du noch keinen generiert hast unter https://auth.nello.io/admin einen erstellen und eintragen
                            20190927_002.png

                            Dann im iot-Adapter den Service eintragen...
                            20190927_001.png
                            ...und im Nello-Adaper fertig einstellen
                            20190927_003.png

                            Wenn alles richtig ist werden die Datenpunkte unter anderem beim Klingeln geändert:
                            20190927_004.png
                            20190927_005.png

                            In dem feed-Datenpunkt unter nello.0.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx.events.feed steht dann als Json-String alle letzten Ereignisse drinnen:

                            [{"action":"swipe","data":{"location_id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx","name":"Carsten Martens","user_id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx","timestamp":1560788361}},
                            [...]
                            

                            Unter iot.0.services.custom_nello (also dem eingerichteten Service) steht dann immer das letzte Event als Json

                            {"action": "deny", "data": {"location_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx"}}
                            

                            Diese kannst du mit einem Script parsen und auswerten. Schau Dir dazu Zafus Beispiel an.

                            Ich hoffe das es etwas geholfen hat.

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

                              Okay, das Grundprinzip habe ich verstanden. Ich muss jetzt ein Script erstellen, welches mit dann diese Benachrichtigungen erstellt.
                              Mache ich das in Scripts? Kann mir da einer einen kurzen Denkanstoß geben. Bitte 🙂

                              J 1 Reply Last reply Reply Quote 0
                              • J
                                Jan1 @Marek last edited by

                                @Marek
                                Nein musst Du nicht,es reicht erst mal wenn Du das oben machst und dann in Deinem Adapter ein DP hast der zappelt wenn es klingelt.

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

                                  also den Datenpunkt habe ich ja jetzt. Bin nämlich nach der Anleitung oben vorgegangen. Das klappt auch. Nur wie mache ich das jetzt mit dem Script.

                                  J 1 Reply Last reply Reply Quote 0
                                  • J
                                    Jan1 @Marek last edited by

                                    @Marek
                                    Du hast jetzt ein DP der sich ändert wenn es klingelt?
                                    Wie der sich ändert spielt dabei keine Rolle.

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

                                      Siehe https://github.com/Zefau/ioBroker.nello#let-telegram-inform-you-about-door-ring

                                      1 Reply Last reply Reply Quote 1
                                      • M
                                        Marek last edited by

                                        Hallo zusammen,

                                        Wow eine so große Resonanz hatte ich nicht erwartet, danke an alle die sich die Zeit nehmen mir zu helfen!

                                        Ja es stimmt, anfangs hatte ich den Datenpunkt custom_nello nicht aber ich hab es jetzt hinbekommen. Auch ändern sich die Aktionen deny usw.

                                        Danke an Zefau für das Hinzufügen des Scripts!

                                        Nun wenn ich es richtig verstanden habe:

                                        
                                        /**
                                         * Send something with Telegram
                                         * 
                                         * @param       {string}        content         Content to send via Telegram
                                         * @param       {string}  		[user='']		User to send the content to
                                         * @return      void
                                         * 
                                         */
                                        function msg(content, user = '')
                                        {
                                            const CONFIG = {
                                                text: content,
                                                parse_mode: 'HTML',
                                                reply_markup: {
                                                    keyboard: ACTIONS,
                                                    resize_keyboard: true,
                                                    one_time_keyboard: false
                                                }
                                            };
                                            
                                            sendTo('telegram', user ? Object.assign({user: user}, CONFIG) : CONFIG);
                                        }
                                        
                                        

                                        Erstelle ich ein Java Script im common Ordner.

                                        Und dann schreibe ich das drunter

                                        
                                        var L = {
                                           'actionRingUnknown': 'Es hat geklingelt',
                                           'actionOpenName': '%name% hat die Tür geöffnet',
                                           'actionOpenGeo': '%name% hat das Haus betreten',
                                           'actionOpen': 'Die Haustür wurde geöffnet'
                                        };
                                        
                                        on({id: 'nello.0.ID.events.feed', change: 'any'}, function(obj)
                                        {
                                           var events = JSON.parse(obj.state.val);
                                           if (events.length === 0) return;
                                        
                                           var event = events[events.length-1];
                                           if (event.action == 'deny')
                                              msg(L.actionRingUnknown);
                                        
                                           else if (event.action == 'swipe')
                                              msg(L.actionOpenName.replace(/%name%/gi, event.data.name));
                                        
                                           else if (event.action == 'geo')
                                              msg(L.actionOpenGeo.replace(/%name%/gi, event.data.name));
                                        
                                           else
                                              msg(L.actionOpen);
                                        });
                                        
                                        

                                        Und dann bei nello.0.ID schreib ich die Nello id rein.

                                        Ich bin da noch wirklich Neuling und fange gerade erst an zu lernen mit dem Scripte erstellen. Ich muss erstmal nur das Grundprinzip verstehen.

                                        Ziel ist es das ich eine Telegram Nachricht bekomme wenn es geklingelt hat und wenn die Tür geöffnet wurde und wer die Tür geöffnet hat usw.

                                        Kann mir da einer ne kleine Step by step Anleitung für komplette idioten geben.

                                        Ich danke nochmal allen Hilfsbereiten. ✌

                                        Zefau 1 Reply Last reply Reply Quote 0
                                        • Zefau
                                          Zefau @Marek last edited by

                                          @Marek Auf Github ist es doch beschrieben?

                                          Das erste Skript (also die Funktion) muss in den global Ordner. Das zweite Skript in den common Ordner und dort nello.0.ID mit deiner ID austauschen.

                                          1 Reply Last reply Reply Quote 1
                                          • M
                                            Marek last edited by

                                            Also ich bekomme da den Fehler:

                                            javascript.0 script.js.common.Nello.Klingeln compile failed:
                                            at script.js.common.Nello.Klingeln:9

                                            Hab es jetzt genau nach deiner Beschreibung gemacht...

                                            Oh Mann...

                                            J Zefau 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            638
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            33
                                            1120
                                            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