Dokumentation vervollständigt, Flows für Version 0.4.0 vorbereitet.
This commit is contained in:
58
74_AMAD.pm
58
74_AMAD.pm
@ -231,10 +231,10 @@ sub AMAD_RetrieveAutomagicInfoFinished($$$)
|
||||
|
||||
# $hash->{RETRIEVECACHE} = $data; # zu Testzwecken
|
||||
|
||||
my @valuestring = split('@@', $data);
|
||||
my @valuestring = split('@@@@', $data);
|
||||
my %buffer;
|
||||
foreach (@valuestring) {
|
||||
my @values = split(' ', $_);
|
||||
my @values = split('@@', $_);
|
||||
$buffer{$values[0]} = $values[1];
|
||||
}
|
||||
|
||||
@ -260,13 +260,13 @@ sub AMAD_HTTP_POST($$)
|
||||
|
||||
if ($hash->{STATE} eq "initialized")
|
||||
{
|
||||
Log3 $name, 3, "AMAD ($name) - AMAD_HTTP_POST: set command only works if STATE active, please wait next interval run";
|
||||
return "set command only works if STATE active, please wait next interval run";
|
||||
Log3 $name, 3, "AMAD ($name) - AMAD_HTTP_POST: set command only works if STATE active, please wait for next interval run";
|
||||
return "set command only works if STATE active, please wait for next interval run";
|
||||
}
|
||||
if ($hash->{STATE} eq "error")
|
||||
{
|
||||
Log3 $name, 3, "AMAD ($name) - AMAD_HTTP_POST: error while send Set command. Please check IP or PORT";
|
||||
return "error while send Set command. Please check IP or PORT";
|
||||
Log3 $name, 3, "AMAD ($name) - AMAD_HTTP_POST: error while send Set command. Please check IP, PORT or wait for next interval run.";
|
||||
return "error while send Set command. Please check IP, PORT or wait for next interval run.";
|
||||
}
|
||||
|
||||
$hash->{STATE} = "Send HTTP POST";
|
||||
@ -355,7 +355,9 @@ sub AMAD_SelectSetCmd($$@)
|
||||
my $mod = join(" ", @data);
|
||||
|
||||
my $url = "http://" . $host . ":" . $port . "/fhem-amad/setCommands/setScreenOnOff?screen=$mod";
|
||||
|
||||
|
||||
AMAD_GetUpdateLocal($hash);
|
||||
Log3 $name, 4, "AMAD ($name) - Starte Update GetUpdateLocal";
|
||||
return AMAD_HTTP_POST ($hash,$url);
|
||||
}
|
||||
|
||||
@ -385,6 +387,13 @@ sub AMAD_SelectSetCmd($$@)
|
||||
|
||||
|
||||
=pod
|
||||
=begin html
|
||||
<a name="AMAD"></a>
|
||||
<h3>AMAD - Automagic Android Device</h3>
|
||||
<ul>
|
||||
At the moment no english documentation is available
|
||||
</ul>
|
||||
=end html
|
||||
=begin html_DE
|
||||
<a name="AMAD"></a>
|
||||
<h3>AMAD - Automagic Android Device</h3>
|
||||
@ -401,8 +410,10 @@ sub AMAD_SelectSetCmd($$@)
|
||||
<li>Ladestatus - Netztei angeschlossen / nicht angeschlossen</li>
|
||||
<li>Batteriestatus in %</li>
|
||||
<li>Bildschirmhelligkeit</li>
|
||||
<li>Bildschirnstatus An/Aus</li>
|
||||
<li>Media Lautstärke des Lautsprechers am Gerät</li>
|
||||
<li>Media Lautstärke des Bluetooth Lautsprechers</li>
|
||||
<li>Zustand von Automagic auf dem Gerät</li>
|
||||
</ul>
|
||||
<br><br>
|
||||
Als Extra können noch aktueller Titel, Interpret und Album des verwendeten Mediaplayers angezeigt werden.
|
||||
@ -424,7 +435,7 @@ sub AMAD_SelectSetCmd($$@)
|
||||
<li>eine Nachricht senden welche <b>angesagt</b> wird (TTS)</li>
|
||||
</ul>
|
||||
<br><br>
|
||||
Für all diese Aktionen und Informationen wird auf dem Androidgerät Automagic und ein so genannter Flow benötigt. Die App müst
|
||||
Für all diese Aktionen und Informationen wird auf dem Androidgerät Automagic und ein so genannter Flow benötigt. Die App müßt
|
||||
Ihr Euch besorgen, die Flows bekommt Ihr von mir zusammen mit dem AMAD Modul.
|
||||
<br><br>
|
||||
<b>Wie genau verwendet man nun AMAD?</b>
|
||||
@ -433,7 +444,7 @@ sub AMAD_SelectSetCmd($$@)
|
||||
<li>Installiert Euch die App "Automagic Premium" aus dem App Store oder die Testversion von <a href="https://automagic4android.com/de/testversion">hier</a></li>
|
||||
<li>ladet Euch das AMAD Modul und die Flowfiles von <a href="https://github.com/LeonGaultier/fhem-AMAD">GitHub</a> runter</li>
|
||||
<li>installiert die zwei Flows und aktiviert erstmal nur den "Information" Flow, eventuell bei den <a href="https://github.com/LeonGaultier/fhem-AMAD/tree/master/Flow_Updates">
|
||||
FlowUpdates</a> mal schauen ob es was neueres gibt und den entsprechenden Flow updaten oder den alten löschen und den neuen einzelnen installieren</li>
|
||||
FlowUpdates</a> mal schauen ob es was neueres gibt und den entsprechenden Flow auf dem Gerät löschen und den neuen Flow von GitHub installieren</li>
|
||||
<li>kopiert die Moduldatei 74_AMAD.pm nach $FHEMPATH/FHEM. Geht auf die FHEM Frontendseite und gebt dort in der Kommandozeile <i>reload 74_AMAD.pm</i> ein</li>
|
||||
</ul>
|
||||
<br><br>
|
||||
@ -453,7 +464,7 @@ sub AMAD_SelectSetCmd($$@)
|
||||
sowie den, in den Flows des Trigger HTTP Request, angegebenen Port fest.<br>INTERVAL ist der Zeitabstand in dem ein erneuter Informationsabruf stattfinden soll. Alle x Sekunden.
|
||||
Bei mir hat sich 180 gut bewährt, also alle 3 Minuten<br>
|
||||
<u><b>Bitte gebt für sofortige Erfolge als Port 8090 ein, das ist der Port der in den mitgelieferten Automagic Flows als Trigger Port eingetragen ist.<br>
|
||||
Dieser kann später mit Erfahrung auch geädert werden</b></u>
|
||||
Dieser kann später mit Erfahrung auch geändert werden</b></u>
|
||||
</ul>
|
||||
<br><br>
|
||||
Fertig! Nach anlegen des Devices sollten bereits die ersten Readings reinkommen.
|
||||
@ -471,9 +482,20 @@ sub AMAD_SelectSetCmd($$@)
|
||||
<li>screenBrightness - Bildschirmhelligkeit von 0-255</li>
|
||||
<li>volumeMusikBluetooth - Media Lautstärke von angeschlossenden Bluetooth Lautsprechern</li>
|
||||
<li>volumeMusikSpeaker - Media Lautstärke der internen Lautsprecher</li>
|
||||
<li>screen - Bildschirm An oderAus</li>
|
||||
<li>automagicState - Statusmeldungen von der AutomagicApp</li>
|
||||
<br>
|
||||
Die Readings volumeMusikBluetooth und volumeMusikSpeaker spiegeln die jeweilige Medialautstärke der angeschlossenden Bluetoothlautsprechern oder der internen Lautsprecher.<br>
|
||||
Sofern man die jeweiligen Lautstärken ausschließlich über den Set Befehl setzt, wird eine der beiden immer mit dem defaultVolume Reading über ein stimmen.
|
||||
Die Readings volumeMusikBluetooth und volumeMusikSpeaker spiegeln die jeweilige Medialautstärke der angeschlossenden Bluetoothlautsprechern oder der internen Lautsprecher wieder.<br>
|
||||
Sofern man die jeweiligen Lautstärken ausschließlich über den Set Befehl setzt, wird eine der beiden immer mit dem defaultVolume Reading über ein stimmen.<br><br>
|
||||
Die Readings "currentMusicAlbum", "currentMusicArtist", "currentMusicTrack" werden nicht vom Modul AMAD gesteuert, sondern ausschließlich vom Automagic Flow. Hierfür ist es notwendig
|
||||
das der Flow entsprechend Deiner Netzwerkumgebung und Deines Androidgerätes angepasst wird.<br>
|
||||
Öffne den Flow SetCommands und folge dem Strang welcher ganz ganz links aussen lang geht. Dieser trifft auf eine Raute. Die Raute symbolisiert eine Bedingung. Es wird gefragt,
|
||||
ob ein bestimmtes WLan Netz vorhanden ist. Tragt bitte hier Euren Router oder Access Point ein. Als nächstes folgt Ihr dem Strang weiter und trifft auf 3 Rechtecke.<br>
|
||||
In jedem der 3 Rechtecke ist ein Befehl zum setzen eines der drei Readings eingetragen. Ihr müsst lediglich in allen drein die IP Eures FHEM Servers eintragen, sowie den korrekte
|
||||
DeviceNamen welchen Ihr in FHEM für dieses Androidgerät angegeben habt.<br><br>
|
||||
Das Reading automagicState muss explizit aktiviert werden. Hierfür geht Ihr in den Flow Information und dann ganz nach rechts. Dort steht eine einsame Raute (Bedingung) ohne Anbuindung
|
||||
an das Rechteck mit der Pause. Drückt auf das Rechteck mit der Pause und zieht das Plus bis runter auf die Raute. Nun habt Ihr eine Verbindung. Ab der Android 5.x Version setzt Ihr
|
||||
unter Einstellungen:Ton&Benachrichtigungen:Benachrichtigungszugriff ein Haken bei Automagic. Leider kann ich nicht sagen wie es sich bei Versionen der 4.xer Reihe verhält.
|
||||
</ul>
|
||||
<br><br>
|
||||
<a name="AMADset"></a>
|
||||
@ -488,6 +510,18 @@ sub AMAD_SelectSetCmd($$@)
|
||||
<li>screenBrightness - setzt die Bildschirmhelligkeit, von 0-255</li>
|
||||
<li>screenMsg - versendet eine Bildschirmnachricht</li>
|
||||
<li>ttsMsg - versendet eine Nachricht welche als Sprachnachricht ausgegeben wird</li>
|
||||
<br>
|
||||
Wenn Ihr das "set screenBrightness" verwenden wollt, muss eine kleine Anpassung im Flow SetCommand vorgenommen werden. Öffnet die Aktion (eines der Vierecke ganz ganz unten)
|
||||
SetzeSystemeinstellung:System und macht einen Haken bei "Ich habe die Einstellungen überprüft, ich weiss was ich tue".
|
||||
</ul>
|
||||
<br><br>
|
||||
<a name="AMADstate"></a>
|
||||
<b>STATE</b>
|
||||
<ul><br>
|
||||
Es gibt drei STATE Zustände.
|
||||
<li>initialized - Ist der Status kurz nach einem define, ein Set Befehl ist hier noch nicht möglich.</li>
|
||||
<li>error - beim letzten "get Information" gab es eine Fehlermeldung daher werden die Set Befehle ausgesetzt bis der nächsten "get Information" Durchlauf ohne Fehler beendet wird.</li>
|
||||
<li>activ - das Modul ist im aktiven Status und "Set Befehle" können gesetzt werden.</li>
|
||||
</ul>
|
||||
<br><br><br>
|
||||
<u><b>Anwendungsbeispiele:</b></u>
|
||||
|
Reference in New Issue
Block a user