Mail Binding (Neu) V2

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Benutzeravatar
udo1toni
Beiträge: 13988
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Mail Binding (Neu) V2

Beitrag von udo1toni »

Kuli hat geschrieben: 16. Dez 2019 13:39 Muss ich die Zeile "val mailActions = getActions("mail","mail:smtp:sampleserver")" jetzt in jede Regel vor dem eigentlichen Sendebefehl "mailActions.sendMail("mail@example.com", "Test subject", "This is the mail content.")" setzen?
Die Zeile muss einmalig pro Regel (logischerweise zu Beginn) eingebaut werden. Außerhalb der Rule (als globale Konstante) kann es nicht gesetzt werden, da dynamische Inhalte (getActions) außerhalb von Rules nicht erlaubt sind. Aber auch in einer "Initialisierungsrule" funktioniert es nicht, da es sich ja um eine Konstante handelt. Eventuell könnte man auch var statt val schreiben, andererseits handelt es sich nur um eine Zeile pro Rule, also nicht wirklich viel Overhead. Innerhalb der Rule kann das Objekt mailActions dann beliebig oft verwendet werden (vielleicht möchte man ja individuelle Mails an mehrere Personen schicken).
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

magoo85
Beiträge: 13
Registriert: 7. Jan 2020 21:25
Answers: 0

Re: Mail Binding (Neu) V2

Beitrag von magoo85 »

Ich hänge mich hier an,
habe Probleme mit dem Mail Binding, openhab 2.5.0 folgende log-Einträge:

Code: Alles auswählen

2020-01-22 14:02:38.876 [WARN ] [ab.binding.mail.internal.SMTPHandler] - Trying to send mail but exception occured: Sending the email to the following server failed : smtp.gmail.com:587 

Code: Alles auswählen

2020-01-22 14:02:32.983 [INFO ] [inding.mail.internal.POP3IMAPHandler] - error when trying to refresh IMAP: Connection dropped by server?
Thing Config:

Code: Alles auswählen

Thing mail:smtp:gmailsmtp [ hostname="smtp.gmail.com", sender="xxx@gmail.com", popbeforesmtp="false", security="TLS", username="xxx@gmail.com", password="xxx", port="587" ]

Thing mail:imap:gmailimap [ hostname="imap.gmail.com", security="SSL", username="xxx@gmail.com", password="xxx", port="993" ] {
    Channels:
        Type mailcount : inbox_total [ folder="INBOX", type="TOTAL" ]
        Type mailcount : inbox_unread [ folder="INBOX", type="UNREAD" ]
}
Alternativ auch ohne dem popbeforesmtp Eintrag versucht, oder auch mit Port 465 und SSL anstatt 587 und TLS, auch kein Erfolg

Im Gmail sind die nicht sicheren Apps erlauben aktiviert

Rule:

Code: Alles auswählen

rule "mail"
when
Item Jal_EG_Elias_auf changed from OFF to ON then
val mailActions = getActions("mail","mail:smtp:gmailsmtp")
mailActions.sendMail("xxx@gmail.com", "Test subject", "<h1>Header</h1>This is the mail content.")
end
Der Name mail:smtp:gmailsmtp bei dem getActions-Aufruf ist auch in der PaperUI ersichtlich (dort ist der smtp Server als online dargestellt) und deckt sich ja auch mit der Things Konfiguration

Was mache ich falsch bzw. wo kann ich weiter ansetzen? Habe bereits alle Foren abgesucht und komme nicht weiter

Besten Dank vorab

magoo85
Beiträge: 13
Registriert: 7. Jan 2020 21:25
Answers: 0

Re: Mail Binding (Neu) V2

Beitrag von magoo85 »

magoo85 hat geschrieben: 22. Jan 2020 15:23 Ich hänge mich hier an,
habe Probleme mit dem Mail Binding, openhab 2.5.0 folgende log-Einträge:

Code: Alles auswählen

2020-01-22 14:02:38.876 [WARN ] [ab.binding.mail.internal.SMTPHandler] - Trying to send mail but exception occured: Sending the email to the following server failed : smtp.gmail.com:587 

Code: Alles auswählen

2020-01-22 14:02:32.983 [INFO ] [inding.mail.internal.POP3IMAPHandler] - error when trying to refresh IMAP: Connection dropped by server?
Thing Config:

Code: Alles auswählen

Thing mail:smtp:gmailsmtp [ hostname="smtp.gmail.com", sender="xxx@gmail.com", popbeforesmtp="false", security="TLS", username="xxx@gmail.com", password="xxx", port="587" ]

Thing mail:imap:gmailimap [ hostname="imap.gmail.com", security="SSL", username="xxx@gmail.com", password="xxx", port="993" ] {
    Channels:
        Type mailcount : inbox_total [ folder="INBOX", type="TOTAL" ]
        Type mailcount : inbox_unread [ folder="INBOX", type="UNREAD" ]
}
Alternativ auch ohne dem popbeforesmtp Eintrag versucht, oder auch mit Port 465 und SSL anstatt 587 und TLS, auch kein Erfolg

Im Gmail sind die nicht sicheren Apps erlauben aktiviert

Rule:

Code: Alles auswählen

rule "mail"
when
Item Jal_EG_Elias_auf changed from OFF to ON then
val mailActions = getActions("mail","mail:smtp:gmailsmtp")
mailActions.sendMail("xxx@gmail.com", "Test subject", "<h1>Header</h1>This is the mail content.")
end
Der Name mail:smtp:gmailsmtp bei dem getActions-Aufruf ist auch in der PaperUI ersichtlich (dort ist der smtp Server als online dargestellt) und deckt sich ja auch mit der Things Konfiguration

Was mache ich falsch bzw. wo kann ich weiter ansetzen? Habe bereits alle Foren abgesucht und komme nicht weiter

Besten Dank vorab
Habe nochmal bei den Gmail Einstellungen nachgesehen, und die nicht sicheren Apps waren wieder deaktiviert, nun funktioniert es,
unter https://myaccount.google.com/lesssecureapps kann man diese Einstellung ändern

Der Fehler beim imap besteht nach wie vor

LG

raf65
Beiträge: 37
Registriert: 11. Dez 2019 11:58
Answers: 0

Re: Mail Binding (Neu) V2

Beitrag von raf65 »

Hey
leider habe ich auch das Problem das die Email nicht verschickt werden kann.
Ich bekomme folgende Meldung

Code: Alles auswählen

Trying to send mail but exception occured: Sending the email to the following server failed : smtp.gmail.com:587 
Ich nutze openhab 2.5 und das entsprechende Mail Binding 2.5. Da ich nur senden möchte und keine Emails empfangen will habe ich nur smtp konfiguriert.

Thing

Code: Alles auswählen

Thing mail:smtp:googlesmtp [ hostname="smtp.gmail.com", sender="mail@googlemail.com", security="TLS", port="587", username="mail@googlemail.com", password="pwd" ]
Rule

Code: Alles auswählen

rule "MAIL Benachrichtigung"
when 
    Time cron "0 43 12 ? * MON-FRI"
then
if (Keller_Liefergrenze_Temperatur.state < 60)
	{
	val mailActions = getActions("mail","mail:smtp:googlesmtp")
	
	mailActions.sendHtmlMail("mail@gmail.com", "Liefergrenzen-Temperatur", 
			"MAIL Text " + Keller_Liefergrenze_Temperatur.state + " MAIL Text "
			 )
		
			logInfo("Test", "Mail verschicken, Liefergrenze Temperatur: " + Keller_Liefergrenze_Temperatur.state + "| Gesendete Information"  )
	}	 
end
Da ich im LOG die Fehlermeldung und die LOG Info sehe funktioniert die Regel soweit schon. Nur das verschicken der Mail klappt nicht.
Bin gerade etwas ratlos.
Ah den Zugriff durch weniger sichere Apps habe ich bei Google erlaubt. Aktuell erneut gecheckt.

magoo85
Beiträge: 13
Registriert: 7. Jan 2020 21:25
Answers: 0

Re: Mail Binding (Neu) V2

Beitrag von magoo85 »

raf65 hat geschrieben: 7. Feb 2020 12:56
Thing

Code: Alles auswählen

Thing mail:smtp:googlesmtp [ hostname="smtp.gmail.com", sender="mail@googlemail.com", security="TLS", port="587", username="mail@googlemail.com", password="pwd" ]
versuch hier mal gmail.com anstatt googlemail.com, ich habe zusätzlich noch das attribut popbeforesmtp="false"

LG

raf65
Beiträge: 37
Registriert: 11. Dez 2019 11:58
Answers: 0

Re: Mail Binding (Neu) V2

Beitrag von raf65 »

magoo85 hat geschrieben: 8. Feb 2020 20:25
raf65 hat geschrieben: 7. Feb 2020 12:56
Thing

Code: Alles auswählen

Thing mail:smtp:googlesmtp [ hostname="smtp.gmail.com", sender="mail@googlemail.com", security="TLS", port="587", username="mail@googlemail.com", password="pwd" ]
versuch hier mal gmail.com anstatt googlemail.com, ich habe zusätzlich noch das attribut popbeforesmtp="false"

LG
Hm laut Google ist smtp.gmail.com schon richtig, habe ich dennoch mal geändert, leider gleiche Meldung.
Habe auch extra ein neues Konto angelegt, damit die 2 Phasen Autorisation nicht zuschlägt. Leider auch keine Änderung.

Antworten