ich nutzte als Anzeige für IPS ein Android-Tablett und darauf die App „fully kiosk browser“. Das funktioniert hervorragend, bis auf eine Kleinigkeit: die Video-Streams meiner IP-Cams werden nicht angezeigt (URL ist z.B. http://<ip>/video.cgi). Der Firefox auf dem Tablett zeigt richtig an.
Welche Einstellung im „fully kiosk browser“ verhindert die Anzeige?
Ich nutze den gleichen Browser, zeige aber nur ein Standbild meiner jeweiligen Kamera an.
Externe Streams (z.b Autobahn Cam´s) werden ohne Probleme angezeigt.
Dafür habe ich ein anderes Problem. Nach einem Tag aktualisiert der Browser nicht mehr die Zustände wie Schalter ec…
Es geht dann erst wieder nach einem Neustart des „fully kiosk browsers“.
Bei Problemen kannst Du den Entwickler anschreiben, der ist sehr offen und unkompliziert.
Ich hatte auch schon Wünsche geäußert, diese wurden prompt erledigt.
Der Fully Kiosk hat eine Remote Api, damit starte ich diesen einmal täglich neu.
<?
$IP=IPS_GetObject(IPS_GetObject(IPS_GetParent($_IPS['SELF']))['ParentID'])['ObjectInfo'];
//echo $IP;
if (Sys_Ping($IP, 1000)== true)
{
fopen("http://$IP:2323/?cmd=restartApp&password=passwort","r"); // Fully Kiosk Browser neu starten.
}
?>
Über einen Bewegungsmelder neben dem Tablet steuere ich auch das Ein-/Ausschalten des Displays über den Fully Kiosk.
Danke für den Hinweis.
Ich hatte allerdings auch schon mehrfach mit dem Entwickler Kontakt. Er konnte nicht weiter helfen da es wohl nach seiner Aussage an Android selbst liegt,
Dein Tip mit dem täglichen Neustart ist ein guter Ansatz.
Ich arbeite mit der Bewegungserkennung in seiner Software. Funktioniert außer im Dunkeln sehr gut.
Frage an JavaScript-Profies: Warum kann der JS-Code nicht im „HEAD“ stehen, sondern muss nach dem HTML ID-Container stehen? Kann man das auch anders lösen?
Das Grundproblem bleibt: die Schnittstelle im Fully ist an dieser Stelle Java-Script-basiert. Wie bekommt man diese Daten nach PHP, bzw. nach IPS?
Sorry das sich hier zwei Themen zum Fully-Browser inzwischen mischen. Für die anfängliche Frage konnte ich einen Workaround zusammen mit dem hilfsbereiten Fully-Entwickler finden: den Stream in einen HTML <img> Container verpacken. Und das sieht so aus:
Der Fully-Browser läuft bei mir auf Android 4.4.2 und Samsung GT-P5210. Die User:Password-Lösung funktioniert im Fully leider hier nicht. Laut Entwickler ist die WebEngine in Andriod 4.4 Ursache „meiner“ Probleme (soweit ich ermitteln konnte ist diese WebEngine nicht weiter update-bar).
Besonderheit zum Skript:
Da ich es in IPS bislang nicht geschafft habe mit dem Seitenteiler 6 Fenster zu erzeugen, habe ich meine 6 CAMs via HTML-Tabelle zusammengefasst.
Da ich über die REST-API nicht an Daten wie „Batterie Level“ komme, habe ich einen Parser für die Fully-Website geschrieben. Damit stehen nun alle Daten nach belieben zur Verfügung. Falls das jemand besser gelöst hat… bin ich ganz Ohr.
<?
$IP="192.168.168.22"; //IP-Adresse
$PW="2654"; //Passwort
$homepage = file_get_contents('http://'.$IP.':2323/?password='.$PW); // Fully Device Info Page als HTML einlesen
$Inhalt=explode("<h1>Fully Info</h1>", $homepage); //HTML-Code bei "Fully Info" unterteilen
$Inhalt=$Inhalt[1]; //mit Fully Info-Daten weiter
$Inhalt = explode("
", $Inhalt); //Daten zeilenweise aufteilen
$data=array(); //Daten-Array definieren
foreach($Inhalt as $Zeile) //Zeilenweise abarbeiten
{
if ($Zeile!=="") //leere Zeilen ignorieren
{
$Zeile=str_replace('<tr class="table-row"><td class="table-cell">', '', $Zeile); //bestimmten HTML-Tag löschen
$Zeile=str_replace('</td><td class="table-cell">', '=>', $Zeile); //bestimmen HTML-Tag löschen/ersetzen
$Zeile=str_replace('</td></tr>', '', $Zeile); //HTML-Tag löschen
$Zeile=strip_tags($Zeile); // restlich HTML-Tag löschen
if ($Zeile!="" and $Zeile!="Device Info") //Daten in Array schreiben
{
$Zeile=explode("=>",$Zeile); // Key und Value erzeugen
$data=array_merge($data, array($Zeile[0] => $Zeile[1])); //neuen Array an Data-Array anhängen
}
}
}
$data2=json_encode($data); //Daten ins JSON-Format konvertieren
SetValue(12883 /*[Zuhause\Hardware\Fully Kiosk Browser\Fully Kiosk Browser\JSON]*/, $data2); //Daten in eine Variable schreiben
?>
Kann jemand mal kurz beschreiben wie vorgehen muss um mit IPS zugriff auf den Fully Browser im Heimnetz zu bekommen?
Bedingungen in Fully, welche IP Adresse wo… muss man ein Passwort verwenden e.c.
Mir ist es noch nicht gelungen Zugriff zu bekommen.
Du mußt die Adresse Deines Tablet wissen, dann kannst zum Beispiel die oben aufgeführten Scripte nutzen
zuvor eine stringvariable erstellen wohin es geschrieben wird.
Wenn das Script ausgeführt werden soll muß die Full Kiosk app laufen
<?
$IP="192.168.0.191"; //IP-Adresse
$PW="xyz"; //Passwort
$homepage = file_get_contents('http://'.$IP.':2323/?password='.$PW); // Fully Device Info Page als HTML einlesen
$Inhalt=explode("<h1>Fully Info</h1>", $homepage); //HTML-Code bei "Fully Info" unterteilen
$Inhalt=$Inhalt[1]; //mit Fully Info-Daten weiter
$Inhalt = explode("
", $Inhalt); //Daten zeilenweise aufteilen
$data=array(); //Daten-Array definieren
foreach($Inhalt as $Zeile) //Zeilenweise abarbeiten
{
if ($Zeile!=="") //leere Zeilen ignorieren
{
$Zeile=str_replace('<tr class="table-row"><td class="table-cell">', '', $Zeile); //bestimmten HTML-Tag löschen
$Zeile=str_replace('</td><td class="table-cell">', '=>', $Zeile); //bestimmen HTML-Tag löschen/ersetzen
$Zeile=str_replace('</td></tr>', '', $Zeile); //HTML-Tag löschen
$Zeile=strip_tags($Zeile); // restlich HTML-Tag löschen
if ($Zeile!="" and $Zeile!="Device Info") //Daten in Array schreiben
{
$Zeile=explode("=>",$Zeile); // Key und Value erzeugen
$data=array_merge($data, array($Zeile[0] => $Zeile[1])); //neuen Array an Data-Array anhängen
}
}
}
$data2=json_encode($data); //Daten ins JSON-Format konvertieren
SetValue(28627 /*[Full Kiosk Tablett\String Variable Tablett]*/, $data2); //Daten in eine Variable schreiben
?>
Laut seiner Webseite funktioniert der Remote Zugriff nur in der Plus Version.
Hast Du evtl. nur die freie?
Ich weiß gar nicht mehr wie es bei mir war, der läuft nun schon gut 2 Jahre bei mir völlig problemfrei.
Aufgrund der Funktionsvielfalt und dem guten Support des Entwicklers ist der aber seine 5€ wert.
( meine Meinung )
Ich habe z.Zt. nur die freie. Aber laut Fully Homepage soll man 1 Monat alles nutzen können. Aber ich bekomme immer nur die Meldungen failed to open stream… Verbindungsaufbau abgelehnt.
Ich habe kein Passwort vergeben und daher
$PW=""; //Passwort
Kann es daran liegen?
Edit: Ohne Passwort geht nicht und man muss noch unter Fully / Settings / Remot Administrations … einige Dinge freigeben. Dann läuft es. (Es erscheint ein Wasserzeichen auf dem Bildschirm Fullversion kaufen)
„Über einen Bewegungsmelder neben dem Tablet steuere ich auch das Ein-/Ausschalten des Displays über den Fully Kiosk.“
Hallo Lördy
ich versuche mich gerade an der Fkt. En/Ausschalten Display über Bewegungsmelder.
ich habe Deine Script so angelegt. Beide laufen ohne Fehler, aber es tut sich am Tablet nichts.
Das Akkuscript aus den Beitrag weiter funktioniert einwandfrei.
Muss man bei den Settings noch etwas einschalten?
Ich habe meinen Fehler gefunden, Wenn man nicht alles 1:1 überträgt. Es funktioniert alles. Danke
Hast Du die Bewegungserkennung über die Kamera schon versucht, damit mache ich es und es funktioniert ganz gut.
Aber auch das Ein- oder Ausschalten überIP-Symcon geht, zB so:
Hast Du den Aufruf mal mit einem Browser geprüft?
Einfach den Aufruf in der Adresszeile eintragen und Enter, da müsste dann eine Rückmeldung kommen.
Über die Kamera läuft bei mir nicht stabil. Und im Dunkeln fast gar nicht.
Wenn ich jetzt nachts zum Kühlschrank tapse fühle ich mich immer erwischt :–)
Ein und Ausschalten funktioniert.
Über die Kamera habe ich auch keine positiven Erfahrungen sammeln können. Je nach Helligkeit geht es. Ein Bewegungsmelder arbeitet zuverlässiger.
Auslesen (Get device info) geht. Steuern über REST INTERFACE geht auch.
Wie steuere (Control device) ich aber z.B. die Displayhelligkeit? (void fully.setScreenBrightness(float level))