Ankündigung

Einklappen
Keine Ankündigung bisher.

Telegram, Alternative zu WhatsApp

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Hiho, ich bin gerade auf SHNG 1.6 gewechselt. Und wollte natrülich wieder telegram nutzen, leider bekomme ich folgende Fehlermeldung wenn ich:

    Code:
    sudo pip install -r requirements.txt
    ausführe:

    Code:
    DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support

    Kann ich python einfach updaten oder bekomme ich das woanders probleme? (Habe das SHNG RPI Image in der neusten Version benutzt)

    Wenn ich updaten kann, auf welchem wege am besten?

    Danke im Voraus
    Geniale Menschen sind selten ordentlich, ordentliche selten genial. (Albert Einstein)

    Kommentar


      magiczambo

      Du musst
      Code:
      sudo pip3 install -r requirements.txt
      nutzen, um die Python Pakete für Python 3ff zu installieren .

      Michael

      Kommentar


        Zitat von Sisamiwe Beitrag anzeigen
        magiczambo

        Du musst
        Code:
        sudo pip3 install -r requirements.txt
        nutzen, um die Python Pakete für Python 3ff zu installieren .

        Michael
        Ok danke.

        Ein Hinweis:

        In der Doku hier:

        https://www.smarthomeng.de/user/plug.../user_doc.html

        steht noch pip statt pip3 drin.
        Geniale Menschen sind selten ordentlich, ordentliche selten genial. (Albert Einstein)

        Kommentar


          Hm. Ja, müßte mal raus bzw. überarbeitet werden. In der neuen 1.7 werden die Requirements via Admin Interface ohnehin direkt upgedated...

          Kommentar


            Wobei PIP bald wieder richtig ist, denn mit dem End-of-Life von Python2 startet PIP ein Python3 kompatibles PIP. PIP3 braucht man eigentlich "nur" einzugeben, wenn man auf dem Rechner noch eine Python2 Installation hat...
            Viele Grüße
            Martin

            There is no cloud. It's only someone else's computer.

            Kommentar


              Hallo,

              gibt es eigentlich die Möglichkeiten von/an verschiedene Bots eine Nachricht zu senden?

              Ich habe zum Beispiel einen Bot, der sich SmarthomeNG_Altona nennt und einen der sich Haustür_Altona nennt. (Beispiele)

              Wie müssen dann meine Items und Logik dafür aussehen? Werde aus der Doku nicht ganz schlau.

              Gruß und danke Manuel

              Kommentar


                Es kann derzeit leider nur ein token in der plugin.yaml hinterlegt werden. Da das Plugin nicht Multiinstance fähig ist, wüsste ich nicht wie man in verschiedene Bots Nachrichten senden kann. Es ist nur möglich innerhalb eines Bots an verschiedene Chat_ids zu senden.. Gruß Ivan

                Kommentar


                  Zitat von ivande Beitrag anzeigen
                  Es ist nur möglich innerhalb eines Bots an verschiedene Chat_ids zu senden
                  So mache ich das auch. Nutze 2 Chat_Ids. Eine für WAF und eine für mich.
                  Meine Installation: VM Debian Buster SH NG 1.8.1, SmartVISU 3.0, KNX, DMX, 1-wire, Fortigate 30E IPS, VMware vSphere 6.7

                  Kommentar


                    Hallo,

                    danke für die Info. Muss ich das ganze dann über eine Logik machen, oder kann ich die ChatIds auch per item übergeben?

                    Gruß Manuel

                    Kommentar


                      Ich mache das mit einer Logik

                      Code:
                      batterie:[INDENT]type: num
                      visu_acl: ro
                      hm_address: 000393C99BFD72
                      hm_channel: 0
                      hm_function: LOW_BAT
                      on_change: service.telegram.senden = 'Stellventil Batterie EG Bad wechseln' if value else 'Stellventil Batterie EG Bad  OK.'[/INDENT]
                      senden an Bot
                      Code:
                      service:[INDENT]telegram:[/INDENT][INDENT=2]Chat_Ids:[/INDENT][INDENT=3]type: dict
                      telegram_chat_ids: 'True'
                      enforce_updates: 'true'
                      cache: 'True'
                      value: "{ '12345678': 1 }"[/INDENT][INDENT=2]senden:[/INDENT][INDENT=3]type: str
                      enforce_updates: 'true'
                      telegram_message: '[VALUE]'[/INDENT]
                      senden an Bot und Gruppe
                      Code:
                      haustuer:[INDENT]klingel:[/INDENT][INDENT=2]type: bool
                      visu_acl: r
                      knx_dpt: 1
                      knx_listen: 11/1/11
                      enforce_updates: 'true'
                      telegram_message: Es klingelt an der Tür
                      telegram_value_match_regex: (true|True|1) # nur Nachricht senden wenn 1
                      info:[/INDENT][INDENT=3]type: bool
                      enforce_updates: 'true'
                      eval_trigger: haustuer.klingel
                      eval: sh.telegram.photo_broadcast("http://<IP>/cgi-bin/api.cgi?.....","Türkamera",-1009876543) if sh.haustuer.klingel() == 1 else None[/INDENT][INDENT] [/INDENT]
                      Vielleicht hilft Dir das weiter

                      Gruß
                      Michael
                      Meine Installation: VM Debian Buster SH NG 1.8.1, SmartVISU 3.0, KNX, DMX, 1-wire, Fortigate 30E IPS, VMware vSphere 6.7

                      Kommentar


                        Hallo Michael,

                        das teste ich mal aus.

                        Danke dafür.

                        Kommentar


                          Hallo Michael,

                          ich habe nun einmal getestet. Was mir dabei aufgefallen ist, dass du, wenn es klingelt, ein Bild in eine Gruppe schickst, und die Meldung dass es geklingelt hat an deinen Bot ? Kann ich die Meldung auch in die Gruppe schicken?

                          Nachtrag: Das funktioniert.

                          Code:
                          eval: sh.telegram.photo_broadcast("http://192.xxx.xxx.xxx/cgi-bin/api.cgi?---","Türkamera",-123456789) if sh.message.gong() == 1 else None , sh.telegram("Es hat geklingelt.","-473559566123456789") if sh.message.gong() == 1 else None
                          Gruß Manuel
                          Zuletzt geändert von manu241; 26.03.2020, 19:14.

                          Kommentar


                            Hall Manuel,
                            sorry für die späte Rückmeldung. Ja das geht, einfach an die Gruppen ID senden.
                            value = "{gruppenID}

                            Ich hatte es auch schon getestet aber lange her. Einfach mal rumprobieren

                            Gesunde Grüße
                            Michael
                            Meine Installation: VM Debian Buster SH NG 1.8.1, SmartVISU 3.0, KNX, DMX, 1-wire, Fortigate 30E IPS, VMware vSphere 6.7

                            Kommentar


                              Nabend,
                              ich habe ein merkwürdiges Problem:

                              Plugin Version 1.6.1

                              Ich habe ein Item angelegt mit den trusted Chat ids.

                              Das Senden von Nachrichten funktioniert problemlos, ohne das ich gesonderte ChatIds im Aufruf verwenden muss.

                              Wenn ich den bot allerdings anschreibe bekomme ich entweder:
                              "This bot knows your chat id but you are not allowed to use this bot to write to items"
                              (bei Nachrichten ohne / (also kein command))

                              oder:
                              "This bot does not know your chat id and thus does not trust it, you are not allowed to use this bot"
                              (bei commands)
                              ​​

                              /Start liefert:
                              Your chat id is 12345678, please add it to the list of trusted chat ids to get access


                              Wie kann mir der Bot Nachrichten senden wenn ich im Aufruf keine ChatIds angebe, aber gleichzeitig sagen das er mich nicht kennt?


                              Item.yaml
                              Code:
                              my_telegram:
                                chat_ids:
                                  type: dict
                                  telegram_chat_ids: 'True'
                                  enforce_updates: 'true'
                                  cache: 'True'
                                  value: "{ '12345678': 1 }"
                              Zuletzt geändert von Shai; 27.04.2020, 19:51.

                              Kommentar


                                Moinsen,

                                Du kannst mal im Admin Interface das item my_telegram.chat_ids aufrufen und dort den Itemwert ändern auf { 12345678: 1 }, sprich: Anführungszeichen um die ID weglassen.

                                Wenn das klappt (und da bin ich mir eigentlich sicher) dann kannst Du in Deiner item.yaml das dauerhaft ändern.

                                Das ist ein Bug im Plugin. Der Telegram Bit liefert für ID eigentlich immer int. So wie es aktuell (falsch) dokumentiert ist, trägt man aber beim value einen string als key ein. Solange ID von Telegram und id von SHNG nicht verglichen werden müssen, ist alles ok. Aber wenn Du /start eingibst, passiert genau das und er fällt auf die Nase.
                                Ich pushe nachher einen Fix in develop.

                                Gruß,
                                Bernd


                                Kommentar

                                Lädt...
                                X