Ankündigung

Einklappen
Keine Ankündigung bisher.

Pushbullet Dateien versenden.

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

    Pushbullet Dateien versenden.

    Hallo,
    ich habe heute versucht das Pushbullet Plugin zum Laufen zu bringen.
    Nachrichten klappen!
    Mit Dateien habe ich aber so meine Probleme....

    Im Log taucht diese Zeile auf:
    2016-10-21 20:32:49 ERROR Kameras Could not send file to Pushbullet notification. Error: 'str' object has no attribute 'decode'

    Ich speichere ein Kamera Bild in /tmp/ und möchte es dann versenden.
    Hat das schon mal jemand gehabt?

    Marc

    #2
    Ist das alles was du an Fehlermeldungen siehst?

    Kommentar


      #3
      Ja

      Kommentar


        #4
        Das richtige magic installiert?
        Zuletzt geändert von heckmannju; 21.10.2016, 21:09.

        Kommentar


          #5
          Ich denke schon.
          Welches ist das richtige?

          Ich glaube das war schon installiert und wurde deshalb nicht neu installiert.

          Kommentar


            #6
            Das was bei requirements in der Beschreibung angegeben wurde.
            https://github.com/msinn/smarthomeNG...ins/pushbullet

            Kommentar


              #7
              Gerade noch einmal probiert:

              sudo pip install python-magic 22:45:37
              Requirement already satisfied (use --upgrade to upgrade): python-magic in /usr/local/lib/python3.5/site-packages

              hmmmmm....

              Soll ich es mal mit --upgrade probieren?

              Kommentar


                #8
                Probiere doch erst mal in der repel folgendes aus
                >>> import magic >>> magic.from_file("testdata/test.pdf") Das File solte es allerdings schon geben. Wie man das repariert weiß ich nicht das hat mir Marcus repariert als ich diese Problem in callidomus hatte. Zuerst sollten wir aber sicher sein das das auch das Problem ist. ​​​​

                Kommentar


                  #9
                  Also....

                  Mit magic.from_file gibt es zumindestens keine neue Fehlermeldung.

                  Code:
                  #!/usr/bin/env python                            #         
                  #                                                #               
                  # Download eines files von einer `url`,         #
                  # lokales speichern unter einem file_name,        #
                  # anschließend mit Pushbullet versenden...        #
                  
                  import urllib.request
                  import shutil
                  import magic
                  
                  magic.from_file("/tmp/current.jpg")
                  with urllib.request.urlopen("http://192.168.178.103/cgi-bin/snapshot.cgi?stream=0") as response, open("/tmp/current.jpg", 'wb') as out_file:
                      shutil.copyfileobj(response, out_file)
                  sh.pushbullet.file('/tmp/current.jpg', body="Terrasse")
                  Log:
                  2016-10-22 09:56:34 INFO CP Server Thread-15 192.168.178.137 - admin [22/Oct/2016:09:56:34] "POST /logics_view.html HTTP/1.1" 200 6142 "http://192.168.178.153:8383/logics_view.html" "Mozilla/5.0 (Windows NT 10.0; rv:49.0) Gecko/20100101 Firefox/49.0"
                  2016-10-22 09:56:34 ERROR Kameras2 Could not send file to Pushbullet notification. Error: 'str' object has no attribute 'decode '

                  Kommentar


                    #10
                    Ich denke, der Hund liegt hier begraben:

                    plugin Zeile 90:
                    Code:
                    upload_request_response = requests.post(self._upload_apiurl, data=json.dumps({"file_name": os.path.basename(filepath), "file_type": magic.from_file(filepath, mime=True).decode("UTF-8")}), headers=headers, auth=(apikey,""))
                    Ich habe nun das: ".decode("UTF-8")" aus der Zeile entfernt. Jetzt läuft es !!!

                    Kann man das in dem Plugin evtl. ändern? Das hat bestimmt etwas mit verschiedenen Python Versionen zu tun.
                    In dem "komplett Image" funktioniert es nur ohne das ".decode("UTF-8")".
                    Zuletzt geändert von schuma; 22.10.2016, 10:02.

                    Kommentar


                      #11
                      Hi,
                      seltsam ich muss das heute abend mal bei mir testen. Bei mir steht das decode drinnen.

                      Das hab ich in magic gefunden. Benutzt du Pyhton 2 oder 3?

                      Code:
                      # return str on python3.  Don't want to unconditionally
                      # decode because that results in unicode on python2
                      def maybe_decode(s):
                          if str == bytes:
                              return s
                          else:
                              return s.decode('utf-8')
                      VG
                      Jürgen

                      Kommentar


                        #12
                        Ich nutze Python 3.

                        Kommentar


                          #13
                          Hi,
                          jetzt habe ich es rausgefunden bei mir unter Callidomus ist noch eine Version drin die bytes ausgibt. Deswegen geht es bei mir.
                          Viele Grüsse
                          Jürgen


                          Kommentar

                          Lädt...
                          X