Mit Hilfe des mailcheck Moduls und einer kleinen Modifikation kann man Fhem mit Siri steuern.
Das mailcheck Modul prüft nur auf neue Notizen, die Notizen die Über Siri verschickt werden sind aber nicht als neue oder ungelesene Notizen makiert.
Abhilfe schafft eine Änderung im Modul an Zeile 374, ändert man:
my $msg_count = $client->unseen_count||0;
auf:
my $msg_count = $client->unseen_count||1;
werden auch die von Siri verschickten Notizen angezeigt.
Auf dem iOS Gerät muss hierfür in den iCloud Einstellungen der Punkt Notizen aktiviert sein.
Das Fhem Define sieht dann so aus:
define Siri mailcheck imap.mail.me.com <iCloudID> <Passwort> Notes
attr userReadings Subject
oder mit geändertem, angehängtem Modul:
define Siri Siri imap.mail.me.com <iCloudID> <Passwort> Notes
attr userReadings Subject
Dann nur noch ein Notify das die Notizen verarbeitet:
Siri.*Subject:.* {
for ( ($EVENT) =~ (s/Subject: //g) ) {
for ( ($EVENT) =~ (s/an/on/g) ) {
for ( ($EVENT) =~ (s/aus/off/g) ) {
{fhem("set $EVENT")}
}}}
}
und es kann losgehen mit dem Siri Befehl "Notiz <device> an"
mir ist nicht ganz klar warum die unseen änderung nötig sein soll. vor allem sollte sie auch zur folge haben das beim neustart wieder alles mails ein event triggern falls sie noch nicht gelöscht wurden.
ob eine mail als unseen gilt legt der imap server fest. nicht der absender der mail.
bist du sicher das bei dir nicht noch jemand/etwas anderes mails auf diesem postfach abruft?
gruss
andre
Ich vermute dass die Notizen durch den Sync auf die iOS Geräte nicht als neue Notizen gekennzeichnet sind.
Wenn ich die Notiz direkt über www.icloud.com versende funktioniert es, nicht aber wenn ich über Siri eine Notiz absetze.
Genialer Ansatz, funktioniert auch schon ganz anständig :)
Leider sammeln sich nach einer Weile eine Menge unnötiger Notizen an. Pauschal delete_message möchte ich eigentlich nicht verwenden, da ich auch reguläre Notizen habe welche dann verloren gehen würden. Wie hast du das gelöst oder stellt sich das Problem bei dir gar nicht?
Habe das Problem durch Einführung eines assistent_name/Keyword behoben, in meinem Fall "Celine".
Ein valides Kommando schaut dann bei mir so aus:
Notiz Celine mach die Stehlampe aus
;)
Kann sein dass man die RegEx für andere Aktionen noch erweitert muss..
Gelöscht werden dann natürlich auch nur Notizen die Celine enthalten.
Ich hänge mal mein erweitertes Modul an.
@HolyMoly
Gut gemacht. Ich synchronisiere die Notizen über einen anderen E-Mail Account. Deswegen habe ich keine Prüfung auf ein Keyword eingebaut.
Hallo, ich versuche fhem mittels SIRI zu steuern.. Leider hatte ich bisher noch keinen Erfolg. Die Notiz wird gelesen. Es wird aber nichts geschaltet. Ich denke, mein Notify ist falsch. Kann mir jemand helfen??
Beste Grüße
Jürgen K.
Hallo,
Ich habe es mit DOIF gelöst,
define Siri_DOIF DOIF ([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "Licht" and [Siri2:Subject] =~ "an") (set SW_Wohnzimmer on)
DOELSEIF
([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "Licht" and [Siri2:Subject] =~ "ein") (set SW_Wohnzimmer on)
DOELSEIF
([Siri2:Subject] =~ "Kinderzimmer" and [Siri2:Subject] =~ "Licht" and [Siri2:Subject] =~ "an") (set SW_Kinderzimmer on)
DOELSEIF
([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "Licht" and [Siri2:Subject] =~ "aus") (set SW_Wohnzimmer off)
DOELSEIF
([Siri2:Subject] =~ "Kinderzimmer" and [Siri2:Subject] =~ "Licht" and [Siri2:Subject] =~ "aus") (set SW_Wohnzimmer off)
DOELSEIF
([Siri2:Subject] =~ "Kinderzimmer" and [Siri2:Subject] =~ "Licht" and [Siri2:Subject] =~ "ein") (set SW_Kinderzimmer on)
DOELSEIF
([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "Fernseher" and [Siri2:Subject] =~ "ein") (set FBDECT_16 on)
DOELSEIF
([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "Fernseher" and [Siri2:Subject] =~ "an") (set FBDECT_16 on)
DOELSEIF
([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "Fernseher" and [Siri2:Subject] =~ "aus") (set FBDECT_16 off)
DOELSEIF
([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "LED" and [Siri2:Subject] =~ "an") (set LEDWZ on)
DOELSEIF
([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "LED" and [Siri2:Subject] =~ "ein") (set LEDWZ on)
DOELSEIF
([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "Regal" and [Siri2:Subject] =~ "ein") (set ELRO_00000_D on)
DOELSEIF
([Siri2:Subject] =~ "Wohnzimmer" and [Siri2:Subject] =~ "Regal" and [Siri2:Subject] =~ "an") (set ELRO_00000_D on)
Sent from my iPhone using Tapatalk
SUPER!! mit DOIF klappt´s!!!! DANKE!!
Hallo juergen012
freut mich wenn das geholfen hat.
mittlerweile mache ich so ziemlich alles mit DOIF.
Sent from my iPhone using Tapatalk
hier mal meine Konfiguration, damit es für andere nicht so lange, wie bei mir dauert....
Zunächst die Datei 70_Siri.pm in das FHEM-Verzeichnis kopieren. Dann mittels cpan Mail::IMAPClient cpan IO::Socket::SSL cpan IO::Socket::INET die MailModule installieren. Dauert etwas... Neustart.. Folgendens konfigurieren:
define Siri Siri imap.mail.me.com username password Notes
attr Siri assistent_name Celine
attr Siri delete_message 1
attr Siri userReadings Subject
eventuell in Apple Id (https://appleid.apple.com/de/) anwedungsspezifisches Passwort erstellen.
Jetzt:
define Siri_DOIF DOIF ([Siri:Subject] =~ "Schlafzimmer" and [Siri:Subject] =~ "Licht" and [Siri:Subject] =~ "an") (set SZ_Licht on) DOELSEIF([Siri:Subject] =~ "Schlafzimmer" and [Siri:Subject] =~ "Licht" and [Siri:Subject] =~ "ein") (set SZ_Licht on) DOELSEIF ([Siri:Subject] =~ "Schlafzimmer" and [Siri:Subject] =~ "Licht" and [Siri:Subject] =~ "aus") (set SZ_Licht off) DOELSEIF([Siri:Subject] =~ "Wohnzimmer" and [Siri:Subject] =~ "Licht" and [Siri:Subject] =~ "an") (set WZ_Licht on) DOELSEIF([Siri:Subject] =~ "Wohnzimmer" and [Siri:Subject] =~ "Licht" and [Siri:Subject] =~ "ein") (set WZ_Licht on) DOELSEIF ([Siri:Subject] =~ "Wohnzimmer" and [Siri:Subject] =~ "Licht" and [Siri:Subject] =~ "aus") (set WZ_Licht off)
iPhone: Notiz Celine Wohnzimmer Licht ein (aus)
Habe bei mir den Namen Celine auf Siri geändert..
Klappt wie verrückt.. DANKE an alle für die Hilfe!!!
Beste Grüße
Jürgen K.
danke xusader für das Siri Modul und danke juergen012 für die Beschreibung..
Läuft super und macht Laune mithilfe von Doif sich die wildestens Befehle für Siri auszudenken =)
Siri läuft ja auch auf der iWatch (wenn sie denn irgendwann mal ankommt xD), also bin ich mal gespannt, ob diese dann auch Notizen abspeichern kann ^^ Wenn ja ist dieses Modul noch genialer =)
Beste Grüße
Andy
Bei mir kommt immer Cannot load Modul Siri. Hab schon shutdown restart gemacht als auch den Pi vom Strom getrennt. Leider ohne Erfolg. Hat jemand eine Idee? Das Modul liegt im FHEM Modulordner
hast du reload in der Kommandozeile(heißt das Feld ganz oben auf Fhem so?) genutzt?
reload 70_Siri.pm
Beste Grüße
Andy
Hallo Leute, würde auch gerne Siri nutzen, leider scheitert es bei mir bei der Installation der Mail Module :
fhem@NUC:~$ sudo cpan Mail::IMAPClient cpan IO::Socket::SSL cpan IO::Socket::INE T
Reading '/home/fhem/.cpan/Metadata'
Database was generated on Wed, 13 May 2015 10:29:02 GMT
Running install for module 'Mail::IMAPClient'
Running make for P/PL/PLOBBES/Mail-IMAPClient-3.35.tar.gz
Checksum for /home/fhem/.cpan/sources/authors/id/P/PL/PLOBBES/Mail-IMAPClient-3. 35.tar.gz ok
CPAN.pm: Building P/PL/PLOBBES/Mail-IMAPClient-3.35.tar.gz
The following optional modules were not found:
Authen::NTLM for Authmechanism 'NTLM'
Digest::HMAC_MD5 for Authmechanism 'CRAM-MD5'
Optional modules are available from any CPAN mirror, reference:
http://search.cpan.org/
http://www.perl.com/CPAN/modules/by-module
http://www.perl.org/CPAN/modules/by-module
Checking if your kit is complete...
Looks good
Writing Makefile for Mail::IMAPClient
Writing MYMETA.yml and MYMETA.json
(OPTIONAL) For extended tests during 'make test', create a file
'test.txt' in the top level directory of this distribution (the same
directory as the Makefile.PL, etc.). This file must contain an IMAP
server name or IP (server=...), a user account (user=...), and a
password (passed=...). A port (port=....) and an authentication
mechanism to be used (authmechanism=...) can also be specified.
Example:
--- BEGIN: test.txt ---
server=localhost
user=mytestuser
passed=mypassword
port=143
--- END: test.txt ---
NOTE: When testing is completed, be sure to remove test.txt (either by
hand or by 'make clean').
PLOBBES/Mail-IMAPClient-3.35.tar.gz
make -- NOT OK
'YAML' not installed, will not store persistent state
Running make test
Can't test without successful make
Running make install
Make had returned bad status, install seems impossible
Warning: Cannot install cpan, don't know what it is.
Try the command
i /cpan/
to find objects with matching identifiers.
Running install for module 'IO::Socket::SSL'
Running make for S/SU/SULLR/IO-Socket-SSL-2.014.tar.gz
Checksum for /home/fhem/.cpan/sources/authors/id/S/SU/SULLR/IO-Socket-SSL-2.014.tar.gz ok
CPAN.pm: Building S/SU/SULLR/IO-Socket-SSL-2.014.tar.gz
Should I do external tests?
These test will detect if there are network problems and fail soft,
so please disable them only if you definitely don't want to have any
network traffic to external sites. [Y/n] [y] y
Checking if your kit is complete...
Looks good
Writing Makefile for IO::Socket::SSL
Writing MYMETA.yml and MYMETA.json
SULLR/IO-Socket-SSL-2.014.tar.gz
make -- NOT OK
Running make test
Can't test without successful make
Running make install
Make had returned bad status, install seems impossible
Warning: Cannot install cpan, don't know what it is.
Try the command
i /cpan/
to find objects with matching identifiers.
IO::Socket::INET is up to date (1.33).
fhem@NUC:~$
Jemand ne Idee...?
Grüße Marcel
Zitat von: juergen012 am 09 Mai 2015, 12:49:54
define Siri Siri imap.mail.me.com username password Notes
Was genau ist username?
Meine AppelID?
Bei mit steht im Siri Device immer disconnected
Zitat von: Andy89 am 12 Mai 2015, 21:39:43
hast du reload in der Kommandozeile(heißt das Feld ganz oben auf Fhem so?) genutzt?
reload 70_Siri.pm
Beste Grüße
Andy
Hallo Andy,
ja habe ich. Bekomme die Meldung
Can't locate Mail/IMAPClient.pm in @INC (@INC contains: ./FHEM/lib ./lib /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/70_Siri.pm line 11.
BEGIN failed--compilation aborted at ./FHEM/70_Siri.pm line 11.
Das hab ich aber installiert. Wenn ich mich erinnere hat es mich gefragt ob ich manuell konfigurieren möchte oder automatisch. Ich hatte automatisch gewählt. War das der Fehler?
sonnigen Gruß
Mirco
Habe es jetzt geschafft... ! 8)
Mein nächstes Problem ist, das Siri Modul erkennt anscheinend nicht alles richtig, zumindest ist es ein Problem wenn ich sage
2015.05.13 19:26:57 2: Recognized valid command: Siri schalte den Fernseher im Wohnzimmer ein
2015.05.13 19:26:57 2: trimmed command: Fernseher im Wohnzimmer ein
2015.05.13 19:31:26 2: Recognized valid command: Siri schalte den Fernseher
2015.05.13 19:31:26 2: trimmed command: Fernseher
2015.05.13 19:31:56 2: Recognized valid command: Siri schalte den
2015.05.13 19:31:56 2: trimmed command: schalte den
Warum ist das so...???
Hallo Marcel!
ZitatWarum ist das so...???
Wenn Dein Befehl "Siri schalte den Fernseher im Wohnzimmer ein" lautet, wird es nie funktionieren. Das Modul reagiert nur auf Notiz.
define Siri Siri imap.mail.me.com <iCloudID> <Passwort>
NotesDu mußt sagen: "
Notiz Siri schalte den Fernseher im Wohnzimmer ein" Siri notiert dann: "Siri schalte den Fernseher im Wohnzimmer ein" (Rückmeldung!)
viel Grüße Sylvia
Hallo Sylvia,
genau das habe ich ja auch gemacht.
Der Code, den ich gepostet habe, ist ja aus meinem FHEM.
Sobald ich sage "Notiz Siri schalten den Fernseher im Wohnzimmer ein" erkennt das Siri Modul unter Subject nur "Fernseher im Wohnzimmer ein"
Wenn ich sage "Notiz Siri schalten den" erkennt es auch "schalte den"
In der Cloud, sehe ich diese Notiz und es steht "Siri schalten den Fernseher im Wohnzimmer ein" drin, doch das Modul unter FHEM wertet es irgendwie falsch aus.
Gruß Marcel
Es gibt zwei Modul-Varianten hier! Die erste von xusader und eine abgewandelte von HolyMoly (Antwort #4). Hier wurde ein Assistent eingefügt. Den muß man in FHEM erst anlegen. attr Siri assistent_name Celine
Hier wurde der Name Celin (nicht Siri) verwendet.
Habe ich alles richtig eingestellt, da ja sonst unter Subject, nichts kommen würde.
Sieht in FHEM bei mir auch so aus. :-\
Hast du ein DOIF angelegt?
Die Notizen werden bei mir auf dem iPhone auch gar nicht gespeichert.
Ja habe ein DOIF, aber ich möchte auswerten, wenn ich sage "schalte".
Ich könnte auch einfach nur auf "Fernseher" "Wohnzimmer" "ein" oder "aus" reagieren, aber ich möchte das "schalte" auch auswerten, weil demnächst auch noch "sage" und "schicke" ausgewertet werden sollen.
z.B. "Siri Sage mir die Aussentemperatur" oder "Siri schicke mir die Aussentemperatur als Pushover Nachricht"
Natürlich kann ich auch hier auf andere Worte zurückgreifen, aber erst einmal möchte ich verstehen, warum die Wörter "schalte den" bei dem Satz "schalte den Fernseher im Wohnzimmer ein" nicht ausgewertet oder falsch bewertet werden, da muss ja ein Fehler im Modul sein.
Gruß Marcel
Desweiteren habe ich gerade versucht "Siri schicke mir die Außentemperatur als Pushover" zu sagen,
das Modul schreibt dann aber in das Reading Subject : =?utf-8?Q?Siri_schicke_mir_die_Au=C3=9Fentemperatur_als_Pushover?=
Mhhh hat hier evtl jemand ne Idee ? Ich vermute wegen dem ß im Wort.
Wirklich weiter weiß ich jetzt auch nicht.
Habe bei mir getestet. Ich habe "schalte" nicht mal angegeben. (s.Anhang - Bekomme hier kein Foto rein...)
Das hilft Dir jetzt sicher auch nicht viel weiter. Aber FHEM macht was es soll2015.05.15 13:23:49 2: Recognized valid command: Siri schalte Stehlampe an
2015.05.15 13:23:49 2: trimmed command: schalte Stehlampe an
2015.05.15 13:23:49 2: IT set Stehlampe on
Falls jemand Probleme, wie ich, mit den Umlauten hatte, siehe mein Beitrag weiter oben
Desweiteren habe ich gerade versucht "Siri schicke mir die Außentemperatur als Pushover" zu sagen,
das Modul schreibt dann aber in das Reading Subject : =?utf-8?Q?Siri_schicke_mir_die_Au=C3=9Fentemperatur_als_Pushover?=
Mhhh hat hier evtl jemand ne Idee ? Ich vermute wegen dem ß im Wort.
das lässt sich mit
sudo cpan install MIME::Parser beheben, nach einem reboot, lief das schonmal vernünftig bei mir.
Bleibt nur die Frage, warum er die 2 Worte "schalte die" oder aber auch "schalte das" oder aber auch "schalte der" in einem Satz nicht übernimmt, wenn ich die 2 Worte einzeln als Notiz vermerke, dann geht es.
Mir wird wohl nicht´s weiter übrig bleiben, als mich damit abzufinden, wenn hier keiner ne Idee hat.
Grüße Marcel
Hallo Marcel,
das liegt an dieser Zeile:
$subject =~ s/$assistent_name ((mach[e]?|schalt[e]?) (der|die|das|den|dem) )?//;
die durchsucht das empfangene subject und löscht den Assistent name, mache/schalte und die Artikel raus.
Der Rest kann dann direkt in fhem ausgeführt werden. Du kannst die Zeile einfach auszementieren. Dann kannst du direkt auf subject deine DOIFS laufen lassen
Super, vielen Dank !!!
Großartig. 1000 Dank auch von mir. Einzelne Wörter klappen prima aber das DOIF will trotz auskommentierter Zeile noch nicht.
define Siri_DOIF DOIF ([Siri:Subject] =~ "Licht" and [Siri:Subject] =~ "an") (set _Licht on) DOELSEIF ([Siri:Subject] =~ "Licht" and [Siri:Subject] =~ "ein") (set _Licht on)
Recognized valid command: James schalte das Licht an
trimmed command: James schalte das Licht an
Vielleicht bin ich schon zu lang dran und sehe den Wald vor Bäumen nicht mehr :)
ciao carlo
Hey Carlo,
ist es richtig, dass dein device, welches du einschalten möchtest _Licht heisst oder muss da vor dem Unterstrich noch etwas vor ?
Ja das ist korrekt. Ich habe meine Gruppen _Licht, _Heizung etc... benannt um sie von den einzelnen Devices unterscheiden zu können. "set _Licht on" funktioniert prima ;)
danke schonmal
ciao Carlo
Das Modul funktioniert hervorragend. Danke dafür.
Eine kleine Idee hätte ich noch.
Soweit ich das sehe, dienen die Attribute "assistent_name" und "delete_message" ja dem Herausfiltern und automatischen Löschen der Steuernotizen. Wäre es nicht möglich, mehrere assistent_names anzulegen? Die Idee dahinter ist, dass ich den Siri-Befehl gerne möglichst kurz halte, damit ich mir keinen Wolf quatsche, nur um eine Lampe zu steuern. Mein assistent_name ist "Lampe". Das heißt, ich brauch nur noch "Notiz Lampe links ein". Wenn ich jetzt allerdings mein Sonos steuern möchte, müsste der Befehl lauten "Notiz Lampe Sonos Küche ein". Besser wäre es doch, wenn ich für jede zu steuernde Gerätegruppe einen eigenen assistent_name anlegen könnte, dann würde im Sonos-Fall der Befehl nur noch "Notiz Sonos Küche ein" lauten.
Alternativ könnte man ja vielleicht auch ein eigenes Attribut "device_name" o. ä. schaffen.
Was haltet Ihr davon?
Oli
Ein Assistent Name sollte Sprachkommandos möglichst unique als solche Kennzeichnen und nicht in deinen Alltagsnotizen auftauchen.
"Lampe" könnte wohl durchaus mal in einer normalen Notiz vorkommen.
Ja, ich weiß. Wäre ja auch nur eine Option für Leute, die sich dessen bewusst sind oder die Notizen vielleicht gar nicht nutzen.
EDIT: Ich habe es gerade mal getestet, es wird ja tatsächlich jede Notiz gelöscht, in der der assistent_name vorkommt. Egal an welcher Stelle. Das war mir nicht bewusst. Ich dachte, es würden nur alle jene Notizen gelöscht, die mit dem assistent_name beginnen. Vielleicht wäre das ja noch eine Möglichkeit, nur die Notizen zu filtern, die mit dem assistent_name beginnen.
Oli
Hi
bei mir geht es nicht und es scheint direkt schon beim Mailcheck zu hängen. Einmal scheint er sich richtig zu connecten, weil es kommt im Log
2015.05.26 19:42:53 3: Siri: connected to imap.mail.me.com
2015.05.26 19:42:54 3: Siri: logged out
2015.05.26 19:42:54 3: Siri: Disconnected
danach scheint er aber sich nie mehr zu connecten. Mach ich ein get update, kommt im Log folgende Meldung
PERL WARNING: Use of uninitialized value in addition (+) at ./FHEM/70_Siri.pm line 253.
Zitat von: Kai-Alfonso am 26 Mai 2015, 19:46:02
PERL WARNING: Use of uninitialized value in addition (+) at ./FHEM/70_Siri.pm line 253.
Die Warnung kommt, weil eine interne Variable erst gesetzt wird, wenn die Verbindung zum Host, hier: imap.mail.me.com, aufgebaut werden konnte.
Grüße Jörg
PS: Bei mir hängt Siri im Moment auch, da, warum auch immer, keine Verbindung zum Host aufgebaut werden kann (weder SSL noch ohne SSL)
Hallo,
die Lösung liegt mal wieder im Detail. Wer sendEmail auf dem RPi benutzt, der musste wg. TLS in seiner /usr/share/perl5/IO/Socket/SSL.pm Änderungen vornehmen. Die führen nun dazu, dass das Modul versucht über SSLv2 einen Connect herzustellen, der von iCloud abgelehnt wird.
Anbei eine Version bei der über TLSv1 connected wird. Über das Attribut SSL_Version können nun die gültigen SSL Version ausgewählt werden. Ist das Attribut nicht gesetzt wird TLSv1 als Standard benutzt.
Ich habe weiterhin folgende Sets eingebaut:
set <siri_devive> connect -> Hiermit wird ein erneutes Verbinden mit dem Host erzwungen
set <siri_device> password <password> wird das iTunes Passwort gesetzt und verschlüsselt abgelegt. Somit hat sich auch das define geändert: define <siri_device> Siri <user> [<folder>]. Bitte entsprechend anpassen.
Die Sets sind natürlich auch über das FhemWeb erreichbar.
Das Passwort Handling werde ich in den nächsten Tagen noch verbessern.
Außerdem habe ich ein paar weitere Logeinträge hinzugefügt. Unter Anderem den Rückgabewert von IO::Socket::SSL und IO::Socket::INET
Grüße Jörg
Hallo Jörg,
vielen Dank für die Modul Erweiterung - Anpassbare SSL/TLS Version und verschlüsselte Passwort Speicherung ist super. Leider scheint er bei mir noch Probleme zu haben. Fehlermeldungen kommen nicht mehr - set connect macht auch erfolgreich einen Connect:
2015.05.27 10:13:52 3: Siri: IO::Socket::SSL => imap.mail.me.com with PeerPort => 993
2015.05.27 10:13:52 3: Siri: connected to imap.mail.me.com
2015.05.27 10:13:53 3: Siri: logged out
2015.05.27 10:13:53 3: Siri: Disconnected
aber er scheint nix zu machen. Im Log steht auch nix. Normalerweise müsste er ja mit Imap Idle immer eine Connection offen halten, oder? Aber im State steht immer disconnect und wenn ich auch set connect gehe kommt eine Verbindung zu stande, aber ich bekomme keine Readings zurück...
Hallo,
ich vermute, dass nach dem Connect das Login scheitert. Der Benutzer <benutzer@icloud.com> ist ohne @icloud.com anzugeben. Das habe ich am Anfang auch falsch gemacht.
Ich habe im beigefügten Modul einen weiteren Logeintrag für Anmeldefehler eingebaut. Ist ungetestet, da ich im Moment keine Fhem-Umgebung zum Testen zur Verfügung habe.
Grüße Jörg
Vielen Dank für die Änderung - du hast Recht, es scheitert schon am Login
failed to connect to mil client with nossl=0 and 1 NO [AUTHENTICATIONFAILED] Authentication failed
Ich nutze das mit einem anwendungspezifischen Passwort und meine Def sieht so aus.
Zitatimap.mail.me.com <Benutzername ohne @icloud.com> Notes
ein Test per Mailprogramm (Imaps, Server, Benutzername und Passwort gleich wie in der DEF) bringt erfolgreich ein connect, list folders etc
Nachtrag: jetzt hat der login geklappt (keine Ahnung wieso erst jetzt, wurde nix geändert)
Hallo,
ich bin ebenfalls dabei, die Siri Steuerung einzurichten.
Der Login in FHEM hat geklappt, ebenso der Start des Dienstes (der mir auch Antworten gibt).
Mein Problem scheint aber zu sein, dass mir FHEM keine Readings anzeigt, was hab ich falsch gemacht?
define Siri Siri imap.mail.me.com icloudname Notes
attr Siri assistent_name siri
attr Siri delete_message 1
attr Siri icon audio_mic
Das Attribut hab ich auch gesetzt gehabt, doch nach dem Speichern verschwindet es wieder.
Vielleicht hat jemand einen kurzen, schnellen Tipp?!
Mal was anderes - bald wird das so nicht mehr funktionieren, weil Apple die Notes Synchronisation bald nicht mehr über IMAP macht, sondern ab IOS 9 über Icloud
Noch ist iOS9 aber nicht draußen :P
Vielleicht kannst du mir bis dahin einen Tipp geben, wie ich es zumindest derweil ans laufen bekomme.
Hallo,
habe es gestern Abend auch bei mir eingerichtet - 1000 Dank für die Mühe!! ;D ;D ;D
Erstmal als Hinweis für alle noch folgenden:
Ich habe einen sehr alten iCloud account, noch aus me-Zeiten (ohne anwendungsspezifisches Kennwrt). Ich konnte mich nur einloggen, wenn ich das "@me.com" angefügt habe:
define Siri Siri imap.mail.me.com icloudname@me.com Notes
Dann:
Zitat von: JoWiemann am 26 Mai 2015, 23:14:59
set <siri_device> password <password> wird das iTunes Passwort gesetzt und verschlüsselt abgelegt. Somit hat sich auch das define geändert: define <siri_device> Siri <user> [<folder>]. Bitte entsprechend anpassen.
Wo das Kennwort (bzw. vermutlich der Hash-Wert des Kennworts) hingespeichert?
Zitat von: Kai-Alfonso am 27 Mai 2015, 11:36:29
Nachtrag: jetzt hat der login geklappt (keine Ahnung wieso erst jetzt, wurde nix geändert)
Ich hatte das gleiche Problem. Nichts geändert, ab und zu mal FHEM neugestartet, und auf einmal klappts. Interessanterweise ist genau das gleiche Problem bei mir auch zwischendurch noch einmal aufgetreten. Ca. 5-10 Minuten lang.
Zitat von: Breaked am 11 Juni 2015, 21:33:48
Hallo,
ich bin ebenfalls dabei, die Siri Steuerung einzurichten.
Der Login in FHEM hat geklappt, ebenso der Start des Dienstes (der mir auch Antworten gibt).
Mein Problem scheint aber zu sein, dass mir FHEM keine Readings anzeigt, was hab ich falsch gemacht?
define Siri Siri imap.mail.me.com icloudname Notes
attr Siri assistent_name siri
attr Siri delete_message 1
attr Siri icon audio_mic
Das Attribut hab ich auch gesetzt gehabt, doch nach dem Speichern verschwindet es wieder.
Vielleicht hat jemand einen kurzen, schnellen Tipp?!
Meinst du mit "Attribut" das hier?
attr Siri userReadings Subject
Weil das scheint dir ja noch zu fehlen. Ansonsten: Gar nichts im FHEM log?
Zitat von: Kai-Alfonso am 11 Juni 2015, 21:35:12
Mal was anderes - bald wird das so nicht mehr funktionieren, weil Apple die Notes Synchronisation bald nicht mehr über IMAP macht, sondern ab IOS 9 über Icloud
Bleibt das nicht noch abzuwarten? Ich bin relativ überzeugt, dass es wie jetzt auch auch weiterhin möglich sein wird beliebige IMAP Konten dafür zu verwenden (muss ja jetzt auch nicht das iCloud Konto sein).
Viele Grüße
Psy
Zitat von: PsychoD am 13 Juni 2015, 11:00:17
Bleibt das nicht noch abzuwarten? Ich bin relativ überzeugt, dass es wie jetzt auch auch weiterhin möglich sein wird beliebige IMAP Konten dafür zu verwenden (muss ja jetzt auch nicht das iCloud Konto sein).
Viele Grüße
Psy
Ich wüsste nicht wie - momentan werden IOS Notizen im iCloud Mail Postfach gespeichert - mehr passiert ja nicht, wenn man Notizen anlegt oder Siri das machen lässt. Es wird ein Objekt erstellt im MailOrdner Notes - dort holt Fhem das dann per IMAP ab und parst den Header. Wenn die Notes nicht mehr im iCloud Mail Konto gespeichert werden, sondern im iCloud Drive, kommt man jedenfalls so wie hier beschrieben nicht mehr dran - und das ist ab iOS 9 so - kann man in der Beta schon testen. Wenn Du allerdings nicht auf iOS9 updatest, wird es weiterhin so funktionieren.
Also ich nutze nen gmx promail acc und kann auch dorthin meine notes speichern lassen. Hoffentlich geht das bei ios9 dann auch noch
Zitat von: PsychoD am 13 Juni 2015, 11:00:17
Meinst du mit "Attribut" das hier?
attr Siri userReadings Subject
Weil das scheint dir ja noch zu fehlen. Ansonsten: Gar nichts im FHEM log?
Hallo,
kam leider erst heute wieder dazu, weiter zu basteln.
Das Attribut (attr) habe ich gesetzt, allerdings erhalte ich kein Reading.
Als Anhang ein Bild. Im Log wird leider nichts verzeichnet.
Ich denke es liegt an folgendem:
ZitatDann nur noch ein Notify das die Notizen verarbeitet:
Siri.*Subject:.* {
for ( ($EVENT) =~ (s/Subject: //g) ) {
for ( ($EVENT) =~ (s/an/on/g) ) {
for ( ($EVENT) =~ (s/aus/off/g) ) {
{fhem("set $EVENT")}
}}}
}
Das Notify bekomme ich allerdings nicht erstellt, bzw. weiß nicht genau, wo ich die Zeilen noch einfügen muss.
Ebenso ist mir, sollte ich dann das Reading angezeigt bekommen, nicht klar wie bzw. eher was ich in meinem "example.py" eintippseln muss, um meine Geräte über FHEM zu steuern.
Eine wirkliche Anleitung für "Normalos" ist nicht zu finden - leider.
Niemand eine Idee was ich noch falsch mache?
Bin schon ganz nervös und würde gerne weiter machen ;)
@Breaked ich weiß zwar nicht wofür du eine example.py brauchst aber du hast noch kein notify angelegt
Oh.. Ich hab SiriApi8 mit diesem hier vermischt :-[
Wie lege ich denn das notify in diesem Beispiel hier an?
Meine bisherigen notifys sahen anders aus. Der Code ist mir gänzlich unbekannt.
Kurzer Denkanstoss wäre nett :)
@Breaked http://www.fhemwiki.de/wiki/Notify
Funktioniert nun.
Lediglich
attr Siri assistent_name Celine
klappt noch nicht. Es werden derzeit pauschal alle neuen Notizen gelöscht - eben wegen fehlendem Keyword.
Möchte ich dann "attr Siri assistent_name Siri" setzen, bekomme ich folgende Meldung:
Siri: unknown attribute assistent_name. Type 'attr Siri ?' for a detailed list.
Und ja, die 70_Siri.pm von HolyMoly hab ich verwendet.
Hast du mal in die 70_Siri.pm reingeschaut, ob du da "assistent_name" findest? Und mal einen reload der Datei gemacht?
Ja assistent_name finde ich dort und einen reload der 70_Siri.pm hab ich gemacht, sowie einen restart von fhem.
ZitatFalls jemand Probleme, wie ich, mit den Umlauten hatte, siehe mein Beitrag weiter oben
Code: [Auswählen]
Desweiteren habe ich gerade versucht "Siri schicke mir die Außentemperatur als Pushover" zu sagen,
das Modul schreibt dann aber in das Reading Subject : =?utf-8?Q?Siri_schicke_mir_die_Au=C3=9Fentemperatur_als_Pushover?=
Mhhh hat hier evtl jemand ne Idee ? Ich vermute wegen dem ß im Wort.
das lässt sich mit
sudo cpan install MIME::Parser beheben, nach einem reboot, lief das schonmal vernünftig bei mir.
Bleibt nur die Frage, warum er die 2 Worte "schalte die" oder aber auch "schalte das" oder aber auch "schalte der" in einem Satz nicht übernimmt, wenn ich die 2 Worte einzeln als Notiz vermerke, dann geht es.
Mir wird wohl nicht´s weiter übrig bleiben, als mich damit abzufinden, wenn hier keiner ne Idee hat.
Grüße Marcel
Das scheint bei mir auch noch nicht zu funktionieren..
Bekomme selbiges angezeigt, wenn ich zum Beispiel "Küche" sage. Über sudo cpan install MIME::Parser und nem reboot lässt es sich nicht beheben.
Puh, bei dem assistent_name weiß ich leider auch nicht - vielleicht kann der Autor helfen.
Läuft die Installation vm MIME::Parser denn ohne Fehler durch? Oder gibt es vielleicht eine Fehlermeldung?
Zitat von: Breaked am 19 Juni 2015, 09:01:57
Ja assistent_name finde ich dort und einen reload der 70_Siri.pm hab ich gemacht, sowie einen restart von fhem.
Das scheint bei mir auch noch nicht zu funktionieren..
Bekomme selbiges angezeigt, wenn ich zum Beispiel "Küche" sage. Über sudo cpan install MIME::Parser und nem reboot lässt es sich nicht beheben.
Keine Ahnung warum Assistent_name nicht geht. Ich habs folgendermaßen in der Config:
define Siri Siri imap.mail.me.com username password Notes
attr Siri assistent_name Celine
attr Siri delete_message 1
attr Siri userReadings Subject
define onSiri notify Siri.*Subject:.* { \
for ( ($EVENT) =~ (s/Subject: //g) ) { \
for ( ($EVENT) =~ (s/an/on/g) ) { \
for ( ($EVENT) =~ (s/aus/off/g) ) { \
fhem("set $EVENT");; \
}\
}\
} \
}
So, nachdem sich durch das ganze rumprobieren FHEM komplett verabschiedet hat und ich derweil noch an Neuinstallation bin, hat sich aber auch, warum auch immer, das Problem mit den Umlauten schonmal erledigt. Scheinbar war in der Grundconfig irgendwas nicht richtig eingestellt.
Zum assistent_name:
Mein Code sieht exakt so aus wie bei dir, HolyMoly.
Ich bin echt ratlos, wieso es bei mir so nicht funktionieren will - sogar bei einer Neuinstallation!
Hmm hatte das auch schon bei anderen Modulen dass sich attr nicht definieren ließen...
probiers mal mit global attr oder so
Hm, ne auch so will es nicht...
global: unknown attribute assistent_name. Type 'attr global ?' for a detailed list.
meinte bei global userattr hinzufügen... ist aber ein ekliger hack
Kann dir gerade nicht ganz folgen...
Hallo Breaked!
Verwendest Du das richtige Modul? Ich nutze das aus Antwort #4 . Der assistent_name ist als Attribut vorhanden.
Ich nutze kein notify. Habe alles in DOIF angelegt. Habe mich an die Anleitung Antwort #10 von juergen012 gehalten.
zum reinen schalten und dimmen habe ich gestern eine variante probiert die homekit verwendet. das ganze funktioniert sehr viel besser als die alte siri proxy methode und vermutlich auch besser als der umweg über notizen.
mehr hier: http://forum.fhem.de/index.php/topic,32652.msg312799.html#msg312799 beschrieben
gruss
andre
pa: das ganze geht so gut das ich mal schauen muss wie schwierig es ist ein echtes fhem modul dür homekit zu bauen. die siri integration würde man dann umsonst bekommen.
hi,
hat hier jemand siri fhem steuerung per notizfunktion laufen und nutzt dafür NICHT icloud sondern einen anderen mail-anbieter? ab iOS9 geht es nicht mehr über icloud und ich bin aktuell nach einer alternative am suchen und die homekit-anbindung läuft bei mir zumindest nur eher teilweise bis mäßig und ich möchte eigentlich auf siri+fhem nicht verzichten. :/
gruss,
hive
Ab iOS9 läuft es nicht mehr. Der Grund ist aber nicht der E-Mail Anbieter.
Unter iOS9 werden die Notizen die Siri verschickt nicht mehr im Mail Postfach abgelegt.
Die landen dann in der iCloud.
Ich probiere auch gerade http://forum.fhem.de/index.php/topic,32652.msg312799.html#msg312799 aus.
Danke für deine Rückmeldung. Das ist ja gerade das was mich wundert, denn man kann in den Einstellungen von den Notizen den Account angeben, den Siri für Notizen verwenden soll und dort habe ich meinen (bezahlten) Gmail-Account (mit IDLE) eingetragen. Aber das scheint Siri mal sonstwo vorbei zu gehen mehr oder weniger. Wenn ich was diktiere, dann wird es zwar in der Notes app unter meinem Gmail Account brav angezeigt, aber wenn ich per Browser in meinen Gmail Account schaue, weiss das nix davon. Gebe ich hingegen an der gleichen Stelle auf dem iPhone, wo Siri angeblich die Sprachnotiz abgelegt hat, nun das ganze händisch ein "Schalte das Licht im Arbeitszimmer ein", funktionuckelt es wunderbar und mir geht hier ein Licht auf.
Ich könnte mir vorstellen, das dies einfach noch ein Bug in der Beta ist. Es macht ja keinen Sinn das man Siri sagen kann das es "Account XY" nutzen soll, wenn es dann eh alles per iCloud macht?! :/
Der Weg Siri über Notizen ist eine absolute Sackgasse ... Ich würde diesen nicht weiter verfolgen ::)
*schnief* ... und dabei lief das so gut und man konnte schöne schweinereien machen :/
aber ich sehe ein, das "der weg" über homekit geht, aber solange es da noch nichts "stabiles" gibt, waren die notizen eine tolle alternative.
ich bin an homebridge dran, aber es verhält sich höchst seltsam bei mir und ich weiss nicht woran es liegt. manchmal sehe ich alle geräte in der suche, manchmal keine, manchmal kann ich ein gerät in die homekit db aufnehmen, manchmal hängt der vorgang, manchmal wird der std-code nicht erkannt ...
aktuell hab ich das alles auf einer ubuntu vm (wo auch mein fhem drauf ist) laufen, welches ich als vm im lan bridge mode unter vmware fusion auf meinem mac mini server laufen habe. ich werde homebridge nochmal direkt auf dem mac mini unter 10.10.4 probieren, mal sehen ob das was bringt
Ich habe hier den ganzen Thread nun einmal durchgelesen und weiss das hier eigentlich Ende ist.
Aber ich möchte nur eines ergänzen, eine Sackgasse war das ganze doch vorher auch schon weil es an nur einen einzigen Apple Account gebunden war. Das in einer Familie 5 verschieden iPhones kursieren hätte in diesem Szenario doch gar nicht funktioniert - oder habe ich hier einen Denkfehler?
Zitat von: stratege-0815 am 21 September 2015, 13:25:09
Ich habe hier den ganzen Thread nun einmal durchgelesen und weiss das hier eigentlich Ende ist.
Aber ich möchte nur eines ergänzen, eine Sackgasse war das ganze doch vorher auch schon weil es an nur einen einzigen Apple Account gebunden war. Das in einer Familie 5 verschieden iPhones kursieren hätte in diesem Szenario doch gar nicht funktioniert - oder habe ich hier einen Denkfehler?
Les dir lieber den hier durch: http://forum.fhem.de/index.php?topic=32652