Ankündigung

Einklappen
Keine Ankündigung bisher.

IMAP: problem parsing message

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

    IMAP: problem parsing message

    Moin, ich taste mich gerade an die Funktionen in Smarthome-py heran.
    Emails senden geht super. Nun möchte ich mit Emails eine Logik triggeren.

    Aber... diese Meldung bekomme ich beim Debug:
    Code:
    2013-11-27 19:40:02,641 ERROR    IMAP         IMAP: problem parsing message b'1': 'str' object has no attribute 'decode' -- __init__.py:_cycle:91
    Traceback (most recent call last):
      File "/usr/smarthome/plugins/mail/__init__.py", line 89, in _cycle
        subject = sub.decode()
    AttributeError: 'str' object has no attribute 'decode'
    logic.conf:
    Code:
    [send_status]
        filename = email.py
        mail_subject = Status
    plugin.conf
    Code:
    [mail]
        class_name = SMTP
        class_path = plugins.mail
        host = smtp.***
        mail_from = meldung@***
        # ssl = True
        username = ***
        password = ***
    
    [imap]
        class_name = IMAP
        class_path = plugins.mail
        host = imap.****.eu
        username = ****
        password = ****
        # ssl = False
        port = 143
        cycle = 30
    Jemand eine Idee?

    Gruß Marian

    #2
    Keiner eine Idee?

    Kommentar


      #3
      Ich glaub irgendwo im Forum gabs dazu mal was.
      Ich gehe mal davon aus das Deine plugin.conf stimmt.

      Anbei mal ein Beispiel wie ich mir in der VISU anzeigen lasse, wenn eine Nachricht auf dem AB ist. (FB sendet dann eine Mail)

      /usr/smarthome/etc/logic.conf
      Code:
      # logic.conf
      [inmail]
          filename = inmail.py
          mail_to = fritz.box@xxxxxxxx.de
      /usr/smarthome/logics/inmail.py
      Code:
      #!/usr/bin/env python
      sh.FritzBOX.mailAB(True)
      in der html:
      Code:
      {{ basic.symbol('FritzBoxAB', 'FritzBOX.mailAB', '', 'icons/rt/phone_answersing.png', 1) }}
      Angehängte Dateien

      Kommentar


        #4
        Hi,

        Lösch mal im Mail Plugin die Zeile, und berichte ob es dann klappt.

        subject = sub.decode()

        Ansonsten schau ich mir das nächste Woche mal an.

        Bis bald

        Marcus



        Gesendet von unterwegs

        Kommentar


          #5
          gemacht, Zeile entfernt unter:
          /usr/smarthome/plugins/mail/__init__.py

          gestartet mit -d und zwischen drin:

          Code:
          2013-12-10 21:15:18,462 ERROR    IMAP         Method IMAP exception: global name 'subject' is not defined -- scheduler.py:_task:348
          Traceback (most recent call last):
            File "/usr/smarthome/lib/scheduler.py", line 344, in _task
              obj()
            File "/usr/smarthome/plugins/mail/__init__.py", line 93, in _cycle
              if subject in self._mail_sub:
          NameError: global name 'subject' is not defined

          Kommentar


            #6
            Hi Marian,

            wer generiert eigentlich die Mail? Kannst Du mir evtl. eine schicken?

            Bis bald

            Marcus

            Kommentar


              #7
              Ich bin verwirrt.. welche Mail? die vom Forum? von wo schicken über die Visu oder was meinst du?

              Gruß Marian

              Kommentar


                #8
                Die Mail, die vom Mail-Plugin geparsed wird und mit der es Probleme gibt.

                Bis bald

                Marcus

                Kommentar


                  #9
                  Ah :-) Sorry...
                  Das steht drin... kann sie dir weiterleiten wenn du mir eine Emailadress gibst
                  ---------- Original Nachricht ----------
                  Betreff: Status
                  Datum: Wed, 27 Nov 2013 19:25:15 +0100
                  Von: Marian <mail@***.eu>
                  An: meldung@zuhause.***.eu

                  Kommentar


                    #10
                    Hallo, habt Ihr dazu schon eine Lösung, bin gerade in das gleiche Problem rein gelaufen !
                    Gruß
                    Michael

                    Kommentar


                      #11
                      Hallo Zusammen,
                      ich bin zwar nicht der große Python-Experte, aber wird ein 'str' nicht
                      normalerweise 'encoded' (...anstatt 'decoded'...)?

                      Sollte die betroffene Zeile im mail-plugin deshalb nicht
                      Code:
                      subject = sub.encode()
                      lauten?

                      EDIT:
                      Bei mir läuft das mail-plugin aber in der Originalfassung ohne Fehler.
                      D.h. mit:
                      subject=sub.decode()

                      Kommentar


                        #12
                        Hier noch ein Hinweis zu meinem Post #11:

                        EDIT die 2-te:

                        Das Problem liegt eher darin, dass es E-Mails gibt, die mit
                        Code:
                        encoding = None
                        oder z.B. als
                        Code:
                        encoding = UTF-8
                        verschickt werden (encoding => Zeile 88 des mail-plugins).

                        Fall "None" erzeugt wohl den Fehler.

                        Kommentar


                          #13
                          Hi,

                          kann mir bitte einer von Euch so eine Mail generieren und direkt schicken?

                          Also nicht weiterleiten!

                          Bis bald

                          Marcus

                          Kommentar


                            #14
                            Hallo Markus,
                            habe Dir mal eine Mail geschickt, so was habe ich probiert.

                            Und hier nochmal die Fehlermeldung im Logfile

                            Code:
                            2014-01-29 00:00:18 ERROR    IMAP         IMAP: problem parsing message b'1': 'str' object has no attribute 'decode'
                            Traceback (most recent call last):
                              File "/usr/local/smarthome/plugins/mail/__init__.py", line 89, in _cycle
                                subject = sub.decode()
                            AttributeError: 'str' object has no attribute 'decode'
                            Gruß
                            Michael

                            Kommentar


                              #15
                              Hallo Michael,

                              ich werde mit c geschrieben.
                              Dementsprechend nehme ich keine Mails an markus@ an...

                              Bis bald

                              Marcus

                              Kommentar

                              Lädt...
                              X