Ankündigung

Einklappen
Keine Ankündigung bisher.

SmartHomeNG Release v1.6

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

    #46
    ical musst leider die develop version herunterladen, dann funzt es.
    Update der requirements im shng folder: pip3 install -r requirements/all.txt
    Davor noch die Aktualisierung im tools Ordner ausführen.

    Falls du das Ganze auf nem Raps laufen hast, empfehle ich das Raspi Image von mir, da gibt es viele Hilfestellungen integriert.

    Kommentar


      #47
      Das von Dir beschriebene installieren der requirements für einzelne Plugins ist eine Möglichkeit. Daneben gibt es auch noch die Möglichkeit mit Hilfe der Dateien im requirements Ordner die requirements für den core, den core + konfigurierte Plugins oder alle requirements mit einem Befehl zu installieren.
      Viele Grüße
      Martin

      Stay away from negative people. They have a problem for every solution.

      Kommentar


        #48
        Zitat von Onkelandy Beitrag anzeigen
        Update der requirements im shng folder: pip3 install -r requirements/all.txt
        Ich rate ganz klar davon ab das so zu machen. Damit ziehst Du sämtliche Bibliotheken die von sämtlichen Plugins benötigt werden.
        Die meisten Plugins wirst Du vermutlich nie benötigen und hast dann nur ggf. weitere Probleme weil sich evtl. Inkompatibilitäten einstellen. (six x.y.z kann nur mit cheroot a.b.c, aber quicks kann nur mit cheroot a.b.0 oder sowas in der Art)
        Die requirements/all.txt ist für Testzwecke drin und weil es früher die tools nicht so gab wie sie jetzt aktuell funktionieren.


        In der requirements/conf_all.txt sind die Abhängigkeiten von konfigurierten Plugins enthalten.
        Die Datei wird aktualisiert, wenn SHNG neu gestartet wird (also z.B. via admin interface über core neu starten) das kann man auch prüfen, indem man sich die Datei anschaut: Da steht ein Erstellungsdatum drin.

        sudo pip3 install -r requirements/conf_all.txt

        sollte also ausreichen und falls man ein neues Plugin installiert hat und dann nix mehr geht, kann man damit mal schauen, ob noch was an Bibliotheken fehlt.
        Zuletzt geändert von bmx; 05.06.2019, 12:02.

        Kommentar


          #49
          Zitat von Onkelandy Beitrag anzeigen
          Falls du das Ganze auf nem Raps laufen hast, empfehle ich das Raspi Image von mir, da gibt es viele Hilfestellungen integriert.
          Danke für deien Mühe. Aber ich habe ja schon SmartHomeNG am laufen. Schon eine ganze Weil und bin damit sehr zufrieden. Inzwischen habe ich mich auch an die dubiose Sprache (Python und YAML) gewöhnt. Die Skripte haben nicht mehr ständig Fehler. ;-)

          Zitat von Msinn Beitrag anzeigen
          von Dir beschriebene installieren der requirements für einzelne Plugins ist eine Möglichkeit.
          Ja die Welt ist voller Möglichkeiten. Ich bin leider Windows-User und brauche nur eine installieren und fertig.


          Aber noch mal die Nachfrage ... Telegram sendet nach dem Update keine Nachrichten mehr. Woran kanns liegen?

          Code:
           Plugin spezifische Parameter:
             
          token ( str ): XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX name ( str ): mein Haus
          long_polling_timeout ( num ): 120.0 [default] welcome_msg ( str ): SmarthomeNG Telegram Plugin is up and running [default]
          bye_msg ( str ): SmartHomeNG Telegram Plugin stops [default] no_access_msg ( str ): This bot does not know your chat id and thus does not trust it, you are not allowed to use this bot [default]
          no_write_access_msg ( str ): This bot knows your chat id but you are not allowed to use this bot to write to items [default] pretty_thread_names ( bool ): True [default]
          Plugin spezifische Item Attribute: Die folgenden Item Attribute werden durch das Plugin definiert:
          telegram_message ( str ) telegram_info ( str )
          telegram_text ( str ) telegram_value_match_regex ( str )
          telegram_chat_ids ( foo )
          vom Plugin definierte Methoden:
          msg_broadcast(msg, chat_id) photo_broadcast(photofile_or_url, caption, chat_id)
          Plugin Metadaten: Beschreibung: Anbindung des Telegram Messenger Service Dokumentation: http://smarthomeng.de/user/plugins/t.../user_doc.html Schlüsselwörter: telegram chat messenger photo Wartung: gamade, ivan73, bmxp Tester: NONE Python Class: Telegram Update(s) triggered by 1 items

          Kommentar


            #50
            Vermutlich hast Du übersehen, das. du ein Item anlegen musst mit Typ Dict und Attribut telegram_chat_ids
            Näheres in der Doku.
            ​​​​​​

            Kommentar


              #51
              Zitat von bmx Beitrag anzeigen
              Vermutlich hast Du übersehen, das. du ein Item anlegen musst mit Typ Dict und Attribut telegram_chat_ids
              Näheres in der Doku.
              Ehrlich gesagt verstehe ich die Änderung nicht so recht. Ich habs jetzt 5x gelesen und nicht verstanden. Bisher war es so, dass ich meiner plugin.yaml eine "trusted_chat_ids" drin habe. Jetzt wird diese trusted_chat_ids entfernt und muss ja woanders angelegt werden in irgendein Item richtig? In der Anleitung dazu steht:

              Konfiguration

              Zuerst muß ein eigener Bot bei Telegram erstellt werden:
              • An Botfather das Kommando /newbot senden.
              • Dann muß ein Bot Name vergeben werden der noch nicht existiert.
              • Weitere Bot Details können eingestellt werden, wenn das Kommando /mybots an den BotFather gesendet wird.

              Der BotFather erstellt für den neuen Bot ein sogenanntes token also einen einzigartigen Schlüssel. Dieser muß in der plugin.yaml von SmartHomeNG eingetragen werden:
              • name: Eine Beschreibung des Bots
              • token: Der oben beschriebene einzigartige Schlüssel mit dem der Bot bei Telegram identifiziert wird.

              Jeder Chat, der auf den Bot zugreifen soll, muß SmartHomeNG bekannt gemacht werden. Das geschieht über ein Item das das Schlüsselwort telegram_chat_ids hat und als Wert ein Dictionary hat. Im Dictionary sind Paare von Chat Id und Berechtigung gespeichert.

              Um die Chat Id zu bekommen, muß der Bot zunächst laufen. Dazu wird SmartHomeNG (neu) gestartet.

              Im Telegram Client wird der Bot als Chatpartner aufgerufen und das Kommando /start an den Bot gesendet.

              Der Bot reagiert mit einer Meldung, das die Chat ID noch nicht bekannt ist und diese zunächst eingetragen werden muß. Mit der nun bekannten Chat ID wird entweder über das Backend oder das Admin Interface bei den Items das Dictionary aus dem vorherigen Beispiel erweitert.

              Ein erneutes Kommando im Telegram Client an den Bot mit /start sollte nun die Meldung ergeben, das der Chat bekannt ist und weiterhin, welche Zugriffsrechte der Chat auf den Bot hat.
              items.yaml

              telegram_chat_ids

              Es muß ein Item angelegt werden mit dem Typ Dictionary. In ihm werden Chat Ids und Zugriff auf den Bot gespeichert. Siehe obiges Beispiel.

              Hier ist aber kein Beispiel. :-( Muss ich jetzt diese "telegram_chat_ids" direkt in ein jedes zu verwendende item schreiben, wie aus dem Beispiel unten:

              Code:
              Tuerklingel:
                  name: Türklingel (entprellt)
                  type: bool
                  knx_dpt: 1
                  telegram_chat_ids: <meine_chat_id>
                  telegram_message: 'Es klingelt an der Tür'

              Kommentar


                #52
                Nein, Du legst einmalig in einem Item ein dict an wie unten:

                Code:
                MyTelegramTest:
                    Chat_Ids:
                        type: dict
                        telegram_chat_ids: True
                        cache: 'True'
                        #value: '{ 223923327: 1, 474994084: 0 }'
                        value: '{ 223923327: 1 }'
                        
                    One:
                        type: num
                        telegram_message: 'One'
                
                    Two:
                        type: num
                        telegram_message: 'Two'
                        
                    Three:
                        type: str
                        telegram_info: 'ThreeKings'
                        
                    Four:
                        type: str
                        telegram_text: True
                
                    Five:
                        type: num
                        telegram_message: '[ID]'
                
                    Six:
                        type: str
                        telegram_info: 'ThreeKings'
                        
                    Seven:
                        type: num
                        telegram_message: "ID:'[ID]' Name:'[NAME]' Value:'[VALUE]' Caller:'[CALLER]' Source:'[SOURCE]' Dest:'[DEST]'"

                Kommentar


                  #53
                  Zitat von bmx Beitrag anzeigen
                  Nein, Du legst einmalig in einem Item ein dict an wie unten:
                  Danke! Geht jetzt. Hatt ich aus der Anleitung so nicht verstanden. Könntet ihr die mal etwas anpassen?

                  Kommentar


                    #54
                    Ich habe mit der Version 1.6. noch ein Problem mit dem sqlite-Plugin der SmartVISU.

                    Plugin 'sqlite_visu2_8' (section 'sql') is deprecated. Consider to use a replacement instead
                    Ich verstehe die Meldung schon. Mir ist nur nicht klar, wie ich der SmartVISU klarmachen kann, dass sie das normale database-plugin nutzen soll. Ich finde in den Dokus dazu auch nichts.

                    Kommentar


                      #55
                      Das hat mit der smartVISU nichts zu tun. Die Meldung sagt aus, dass in SmartHomeNG möglichst ein anderes Plugin verwenden solltest, da in einem der kommenden Releases das sqlite Plugin nicht mehr zur Verfügung steht. Das gilt für das sqlite und für das sqlite
                      _visu2_8 Plugin. (Die beiden Plugins unterscheiden sich nur darin, dass das originale sqlite Plugin nur smartVISU bis v2.7 unterstützte).

                      Die Empfehlung ist, das database Plugin anstelle des sqlite Plugins zu nutzen.
                      Viele Grüße
                      Martin

                      Stay away from negative people. They have a problem for every solution.

                      Kommentar


                        #56
                        Zitat von Msinn Beitrag anzeigen
                        Das hat mit der smartVISU nichts zu tun. Die Meldung sagt aus, dass in SmartHomeNG möglichst ein anderes Plugin verwenden solltest, da in einem der kommenden Releases das sqlite Plugin nicht mehr zur Verfügung steht
                        Genau das war mir bewusst. Wie kann ich aber das database-plugin für die SmartVISU nutzen? Mir ist die Verbindung dahin nicht klar. Vorher hatte ich das "alte" und im item sqlite: 'yes' gemacht und in den plugins konfiguriert. Jetzt mache ich einfach database: 'yes' und muss woanders für die SmartVISU nichts weiter festlegen? Woher weiß denn die VISU, dass sie das database-plugin nutzen soll?

                        Kommentar


                          #57
                          so lange du nur ein plugin nutzt, ist das egal. bei 2 plugins oder dem database plugin mit multiplen instanzen geht das visu_websocket (das redet ja mit der SV) plugin vermutlich nach first come first serve vor..

                          Kommentar


                            #58
                            Hallo,
                            hab von Version 1.4.1 mit git pull auf 1.6 upgedatet, auch die plugins aus dem Master branch. Mit pip3 alle requirements installiert. Allerdings bekomme ich nach dem Start folgende Fehlermeldung:

                            2019-08-05 15:21:58 WARNING __main__ -------------------- Init SmartHomeNG 1.6.master (1b2cb3e6) --------------------
                            2019-08-05 15:21:58 WARNING __main__ Running in Python interpreter 'v3.5.3 final' (pid=747) on linux platform
                            2019-08-05 15:21:58 WARNING lib.shpypi - requests: MULTIPLE requirements [{'min': '2.20.0'}, {'min': '2.9.1'}]
                            In den requirements hab ich schon gesucht und die doppelten Einträge entfernt, aber woher lib.shpypi das bezieht, weiß ich nicht.

                            Kommentar


                              #59
                              Im Withings-Plugin findet sich requirements.txt

                              Code:
                              nokia>=1.0.0,<=1.2.0
                              arrow>=0.12,<=0.13.1
                              requests>=2.19,<=2.21
                              requests-oauth>=0.4.1,<0.5
                              requests-oauthlib>=1.0,<1.1
                              in base.txt dagegen

                              Code:
                              # SmartHomeNG-lib
                              requests>=2.20.0
                              Da das nur ein Warning und kein Error ist, kannst Du das IMHO ignorieren. Sinnigerweise sollte man für das Whithings PLugin die Requirements dann ohnehin aus Sicheitsgründen anheben. Ich weiß aber nicht, wer das überhaupt alles nutzt.


                              Kommentar


                                #60
                                Die Frage ist, woher er {'min': '2.9.1'} (nicht 2.19!) hat?!

                                bei withings musste ich das so eng fassen, da das nokia paket sonst die zicken kriegt..

                                Kommentar

                                Lädt...
                                X