Ankündigung

Einklappen
Keine Ankündigung bisher.

Einbinden eines Bildes in eine Email - Error 401

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

    Einbinden eines Bildes in eine Email - Error 401

    Hallo Forum,

    ich möchte wie im Code Beispiel ein Bild der Überwachungskamera per Email senden, wenn die Türklingel betätigt wird.

    Als Bildquelle nutze ich einen DVR Server, der einen Benutzernamen und Kennwort erfordert. Im Browser funktioniert dies mit:
    http://userassword@server/path

    Beim senden der Email wird folgender Log Eintrag generiert (*** ersetzt Kennwort / IP):

    13:00:35.622 ERROR o.openhab.io.net.actions.Mail[:111] - Error adding attachment to email.
    org.apache.commons.mail.EmailException: Invalid URL set:http://***:***@192.168.1.***/cgi-bin/net_jpeg.cgi?ch=0
    at org.apache.commons.mail.MultiPartEmail.attach(Mult iPartEmail.java:367)
    at org.apache.commons.mail.MultiPartEmail.attach(Mult iPartEmail.java:311)
    at org.openhab.io.net.actions.Mail.sendMail(Mail.java :107)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.invokeOperation(XbaseInterpreter.java:729)
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._featureCallOperation(XbaseInterpreter.jav a:713)
    at sun.reflect.GeneratedMethodAccessor84.invoke(Unkno wn Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
    Caused by: java.io.IOException: Server returned HTTP response code: 401 for URL: http://***:***@192.168.1.***/cgi-bin/n
    et_jpeg.cgi?ch=0
    at sun.net.https://www.protocol.http.HttpURLCon...Stream(Unknown Source)
    at java.net.URL.openStream(Unknown Source)
    at org.apache.commons.mail.MultiPartEmail.attach(Mult iPartEmail.java:362)
    at org.apache.commons.mail.MultiPartEmail.attach(Mult iPartEmail.java:311)
    at org.openhab.io.net.actions.Mail.sendMail(Mail.java :107)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.invokeOperation(XbaseInterpreter.java:729)
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._featureCallOperation(XbaseInterpreter.jav a:713)

    Ich kann an dem Server für die Videoüberwachung die Authetifizierung nicht abschalten. Gibt es eine Möglichkeit diese für das Attachment der Email zu nutzen?

    Sascha

    #2
    Hi Sascha,

    das Apache EmailAttachment scheint kein BasicAuth zu unterstützen, daher schlägt dieser Versuch fehl.

    Ein Workaround der mir einfällt (sofern Du 1.3.0-SNAPSHOT verwendest):
    Du könntest eine Sitemap mit einem Image-Widget auf Deine URL einrichten. Über das neue Proxy-Servlet ist dieses dann über http://<ip>:<port>/proxy?sitemap=<sitemap>&widget=<widgetid> ohne Authentifizierung verfügbar, so dass Du diese URL an die Mail attachen können solltest.

    Viele Grüße,
    Kai

    Kommentar

    Lädt...
    X