Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Einbindung von Geräten
    5. Alexa2 Routinen "unknown"/ Blink Doorbell Trigger

    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

    Alexa2 Routinen "unknown"/ Blink Doorbell Trigger

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

      Hallo,

      folgendes möchte ich umsetzen und habe Probleme dabei:

      Blink Doorbell möchte ich als Trigger/Datenpunkt. Geht ohne entsprechenden Adapter nicht. Wollte eine Alexa-Routine nutzen, welche beim Drücken der Klingeltaste an der Doorbell reagiert. Das geht.
      Ich habe entsprechenden Datenpunkt der Routine im Alexa2-Adapter gefunden, aber folgende Probleme dabei:

      1.) Uralte Routinen sind mit ihrem Namen als Datenpunkt zu finden. Die neueren (max. 2-3 Jahre) und aktuell angelegten werden mit "unknown" bezeichet. Man kann nur durch Probieren herausfinden welche Datenpunkt zu welcher Routine gehört. Baum löschen und neu anlegen lassen hilft nichts.

      2.) Die Routinen kann ich triggern in dem ich den Datenpunkt auf "true" stelle. Wird dieser über Alexa getriggert, gibt es keine Zustandsänderung des Datenpunktes.

      3.) Es existiert für jedes Echo/Alexa-Gerät die Routinen. Ist es egal welche ich davon benutze?

      Kennt jemand die Probleme und hat ggf. jemand eine andere Idee zur Umsetzung? IFTTT wollte ich aufgrund einer Latenz vermeiden.

      A 1 Reply Last reply Reply Quote 0
      • A
        Ahnungsbefreit @MarkusK last edited by Ahnungsbefreit

        @markusk zufällig arbeite ich gerade genau an der gleichen Fragestellung.

        Also: IFTTT scheidet zumindest zur Zeit aus, da zumindest Stand Montag die Doorbell überhaupt nicht unterstützt wird, noch nicht einmal als Kamera. Mit den anderen Blink Kameras arbeitet das aber problemlos und mit geringer Latenz bei mir schon seit Monaten. Evtl. stelle ich das später um, wenn ich das auch "direkt" über Alexa2/iot schaffen würde.

        Ich schaffe es jetzt, im ioB ein Script zu triggern, wenn die Klingel gedrückt wird und mache das auf folgendem Weg:

        1. In ioB einen Datenpunkt unter 0_userdata vom Typ Boolean, Role switch anlegen. Achtung, der "Native" Teil muss existieren, wenn auch leer: "native": {},

        2. Alexa nach neuen Geräten suchen lassen, damit der Datenpunkt als "Smart Home Gerät" in der Alexa App exisitiert

        3. Eine Routine in der Alexa App anlegen, die auf die Blink Haustürklingel reagiert und dann einfach nur den Datenpunkt aus Punkt 1 auf "an" setzt

        4. Ich sehe die Routinen und Geräte im Alexa2 Adapter (möglicherweise hängt Dein Problem mit dem im Forum diskutierten Problem zusammen?) aber selbst wenn das nicht ginge, wäre das kein Problem denn mein Script nimmt jetzt einfach den Datenpunkt aus Punkt 1 als Trigger (auf Aktualisierung triggern) und kann darauf reagieren

        5. Man könnte jetzt in dem Script das Kamerabild/ton direkt anschalten, ich werde aber zunächst einfach einen aktuellen Snapshot von Kamera holen und will den auf Alexa via "My Page" Skill anzeigen mit der Option, das Livevideo per Button anzuschalten. An diesem Teil arbeite ich noch, den Snapshot will ich via "Blinkpy.py" holen und habe dafür ein kleines Python Programm geschrieben, das Blinkpy per Kommandozeile aufrufbar macht mit verschiedenen Parametern

        M 1 Reply Last reply Reply Quote 1
        • M
          MarkusK @Ahnungsbefreit last edited by

          @ahnungsbefreit Ich benötige dann aber auch einen Alexa Assistenten Account?
          Für das Kamerbild nutze ich auch "Blinkpy.py", allerdings angepasst mit Parametern für Dateinamen und Kameraliste (Liste, weil ein einloggen für jede Kamera dazu führt, dass der Blinkserver erstmal dicht macht). Ich hatte auch das Problem bei den Minis, dass man länger warten muss, bevor man das Bild abholen kann. Ich bin leider kein python Spezialist.

          #!/usr/bin/python3
          
          import time
          import sys
          #import os
          
          from blinkpy.blinkpy import Blink
          from blinkpy.auth import Auth
          
          camera_name=sys.argv[1]
          file_name=sys.argv[2]
          
          camera_list = camera_name.split(",")
          file_list = file_name.split(",")
          camera_count = len(camera_list)
          file_count = len(file_list)
          
          if camera_count != file_count :
                  print("camera_count != file_count")
                  exit(1)
          
          try:
                  blink = Blink()
                  auth = Auth({"username": "xxxxx@xxxxxde", "password": "xxx"}, no_prompt=True)
                  #auth = Auth({"username": "xxxxx@xxxx.de", "password": "xxx"}, no_prompt=False)
          
                  #2FA
                  #auth.send_auth_key(blink, <your key>)
                  #blink.setup_post_verify()
          
                  blink.save("blink.credentials")
                  blink.auth = auth
                  blink.start()
          
                  #for name, camera in blink.cameras.items():
                  #  print(name)                   # Name of the camera
                  #  print(camera.attributes)      # Print available attributes of camera
          
                  for i in range(len(camera_list)):
                          camera_name=camera_list[i]
                          file_name=file_list[i]
                          camera = blink.cameras[camera_name]
                          camera.snap_picture()       # Take a new picture with the camera
                          time.sleep(4)
                          blink.refresh(force=True)
                          camera.image_to_file(file_name)
          
          
          except:
                  print('Error')
                  exit(1)
          
          A 1 Reply Last reply Reply Quote 0
          • A
            Ahnungsbefreit @MarkusK last edited by

            @markusk said in Alexa2 Routinen "unknown"/ Blink Doorbell Trigger:

            @ahnungsbefreit Ich benötige dann aber auch einen Alexa Assistenten Account?

            Ja, ich nutze dafür einen Pro-Account

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

              @ahnungsbefreit Funktioniert. Hab einen IOB Assistenten Account. Wie genau hast Du das mit dem Foto und insbesondere mit dem Button vor? Mit dem Mypage-Skill zeigst Du eine beliebige Webseite an, hier eine mit einem Foto. In dieser Seite eingebettet ein Button, der dann aber den Blink-Skill triggert. Wie soll der Button auf der Webseite dies machen?

              A 1 Reply Last reply Reply Quote 0
              • A
                Ahnungsbefreit @MarkusK last edited by

                @markusk Ich will ja einen Snapshot der Doorbell-Kamera machen, wenn die Klingel ertönt (oder evtl. sogar etwas früher auslösen über eine andere Kamera, die den Bereich vor der Haustür überwacht) und dann bei Betätigen der Klingel (Trigger über den Datenpunkt, siehe oben) auf dem Show den My Page Skill per TextCommand starten und die Seite aufrufen, die das Bild (Snapshot) anzeigt plus einen Button, um auf den Liveview zu springen (wieder via TextCommand)

                M 1 Reply Last reply Reply Quote 0
                • M
                  MarkusK @Ahnungsbefreit last edited by MarkusK

                  @ahnungsbefreit said in Alexa2 Routinen "unknown"/ Blink Doorbell Trigger:

                  um auf den Liveview zu springen (wieder via TextCommand)

                  Genau das verstehe ich nicht. Was macht der Button auf der Webseite genau. Was triggert er? Ich habe zwar schon was von "Text2Command" gehört, aber irgendwie verstehe ich nicht was das macht.

                  Ich habe aktuell folgende Lösung gebaut:
                  Routine löst Datenpunkt und damit IOB Skript aus. Das Skript sendet Nachricht an Telegram-Bot mit "Es klingelt" und einem Button zum Tür öffnen. Dann wird Foto von Dorrbell und (wie bei Dir) ein Foto von einer weiteren Blink-Kamera gemacht und an Telegram-Bot gesendet.
                  Wird der Tür-Öffnen Button betätigt, wird dann per Nuki die Haustür geöffnet.

                  Ich würde gerne auch ein Foto auf die Echo Shows anzeigen, geht ja mit MyPage. Nur der Button auf der Webseite ist mir ein Rätzel, wie auch Text2Command (ist wohl so ähnlich wie die Möglichkeit in einer Routine das Alexa ein Kommando per Texteingabe ausführt.

                  2022-07-22 08_47_21-Window.png

                  A 1 Reply Last reply Reply Quote 0
                  • A
                    Ahnungsbefreit @MarkusK last edited by Ahnungsbefreit

                    @markusk Nicht text2command (das hilft hier überhaupt nicht), sondern der Datenpunkt alexa2.0.Echo-Devices.<SerialNo>.Commands.textCommand über den Du ein Kommando so eingeben kannst, wie Du es auch per Sprache machen würdest und das wird dann ausgeführt. Mit dem Blink-Skill für Alexa kannst Du ja z.B. "Alexa, zeig mir die Kamera xxx" sagen und bekommst dann den Live-View. Ich habe gerade mal probiert, das geht mit den normalen Outdoor-Kameras (per Sprache) problemlos, bei der Doorbell macht er das eben nicht. Ich bin mir aber sicher, dass das mit dem richtigen Kommando auch geht.

                    Edit: Fehler gefunden, den Datenpunkt hatte ich "AlexaBlinkHaustuer" genannt, und damit ist die Dame beim Befehl "Alexa, zeig mir die Kamera Haustür" durcheinander gekommen. Datenpunkt umbenannt, alten Datenpunkt in der Alexa App gelöscht (das passiert irgendwie nicht automatisch), dann geht's

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      MarkusK @Ahnungsbefreit last edited by

                      @ahnungsbefreit Ich habe jetzt eine Webseite mit Fotos der beiden Blink-Kameras. Darunter drei Buttons:
                      1 für Liveview im Wohnzimmer per textcommand "zeige Haustürkamera"
                      2 für Liveview in der Küche per textcommand "zeige Haustürkamera"
                      3 für Nuki-Schloss öffnen

                      Leider habe ich das Problem, dass das Öffnen des Mypage-Skills erst bestätigt werden muss. Außerdem bleibt der Silk-Browser angezeigt. Müsste erst ein verzögertes textcommand "zeige Startseite" hinterhersenden, was aber den Liveview abbrechen würde. Insgesamt noch unbefriedigend.

                      A 1 Reply Last reply Reply Quote 0
                      • A
                        Ahnungsbefreit @MarkusK last edited by

                        @markusk said in Alexa2 Routinen "unknown"/ Blink Doorbell Trigger:

                        Leider habe ich das Problem, dass das Öffnen des Mypage-Skills erst bestätigt werden muss.

                        Ich habe eben probiert. Mit öffne My Page und zeige Seite 1 geht die Seite ohne Bestätigung auf

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          MarkusK @Ahnungsbefreit last edited by MarkusK

                          @ahnungsbefreit said in Alexa2 Routinen "unknown"/ Blink Doorbell Trigger:

                          öffne My Page und zeige Seite 1

                          Bei mir kommt: "MyPage ist aktivert. Möchtest Du die Seite öffnen?" Es ist auch egal, ob dies über textcommand oder in der Routine gemacht wird. MyPage muss auch zusammen geschrieben werden. Getrennt mit "My Page" geht es nicht.

                          Auch auch danach hätte ich gerne das der Skill (besser der Silk) sich von alleine sich beendet, ohne das ich nach 10 sec. diesen Abbrechen muss (würde ja dann ggf. den Liveview beenden).

                          A 2 Replies Last reply Reply Quote 0
                          • A
                            Ahnungsbefreit @MarkusK last edited by

                            @markusk said in Alexa2 Routinen "unknown"/ Blink Doorbell Trigger:

                            Bei mir kommt: "MyPage ist aktivert. Möchtest Du die Seite öffnen?" Es ist auch egal, ob dies über textcommand oder in der Routine gemacht wird. MyPage muss auch zusammen geschrieben werden. Getrennt mit "My Page" geht es nicht.

                            Sehr eigenartig, dass der selbe Befehl sich so unterschiedlich verhält. Übrigens: Den Hinweis mit "MyPage" in 2 Wörtern hatte ich aus einem anderen Thread und habe das so übernommen, ich bin also nicht der Einzige, bei dem das geht.

                            1 Reply Last reply Reply Quote 0
                            • A
                              Ahnungsbefreit @MarkusK last edited by

                              @markusk Bist Du damit weiter gekommen?

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              982
                              Online

                              31.9k
                              Users

                              80.2k
                              Topics

                              1.3m
                              Posts

                              2
                              13
                              772
                              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