Dreamboxen mit IPS steuern

Genau das hab ich gesucht , sorry für die Noob Fragen, wir fangen gerade erst mit IPS an :slight_smile:

   if (ENIGMA2_GetAvailable($ipadr))

Der Mechanismus ist doch schon implementiert?

Ich hab mich jetzt mal genau an die Anweisungen im Post #101 gehalten und es installiert , wenn die Box nicht erreichbar ist , wird in Verfügbarkeit , keine 0 oder 1 übergeben sondern nix, daher bringt er dann ne Fehlermeldung .

Ihr seid ja alle schon sehr viel weiter ,denk ich, aber für die nicht Cracks ist es schwer was von euch nach zubauen wenn es keine Anleitung gibt.

Hallo,

@all
Ich habe festgestellt das man keine Nachrichten mit Leerzeichen senden kann.
Folgendes habe ich in den Funktionen ergänzt:

$message = str_replace(' ','_',$message);

oder %20 als Leerzeichen

Oh, super.

Gibt es hierzu eine Doku?
„ß“ geht auch nicht. Gibt bestimmt noch mehr.

$Newsticker = str_replace(’+’, ’ ',$Newsticker);
$Newsticker = str_replace(„Ä“,„Ä“,$Newsticker);
$Newsticker = str_replace(„ä“,„ä“,$Newsticker);
$Newsticker = str_replace(„Ö“,„Ö“,$Newsticker);
$Newsticker = str_replace(„ö“,„ö“,$Newsticker);
$Newsticker = str_replace("%F6",„ö“,$Newsticker);
$Newsticker = str_replace("%FC",„ü“,$Newsticker);
$Newsticker = str_replace(„Ãœ“,„Ü“,$Newsticker);
$Newsticker = str_replace(„ü“,„ü“,$Newsticker);
$Newsticker = str_replace(„ß“,„ß“,$Newsticker);

hier mal schnell aus einem Skript kopiert

Wenn diese %20 und %Irgendwas funktioniert, dann solltet ihr mal urldecode bzw. urlencode versuchen statt immer mehr Zeichen zu finden, die doch nicht klappen :wink:

Toni

Hallo Toni,

funktioniert so nicht. Ich hab mal TemperData installiert und rausgefunden das ein ä - %c3%a4 wird.
Ich hab´s dann mal mit

$message = utf8_encode($message);

probiert. Leider ohne Erfolg.

Kannst Du mir einen Tipp geben?

UTF8 und URL verwechselt? :wink:

Nein,

ich hab es mit

$message = urldecode($message);

auch versucht.

Was genau willst du denn erreichen? Was hast du und wo willst du hin?

Wenn du %irgendwas aus einem ä machen willst musst du es doch codieren und nicht decodieren. ä ist doch schon Klartext. Da gibts nicht viel zu decodieren. Wenn du ausserdem Unicode brauchst musst es natürlch zusätzlich codieren.

Ok,
ich hab´s kapiert.:rolleyes:

So funktioniert`s:

$message = utf8_encode($message);
$message = urlencode($message);

Vielen Dank für den Denkanstoß.:smiley:

Immer wieder gern :wink:

Moin Leute ,

könnte mal einer einen aktuellen Export machen und so den aktuellen Stand teilen ?

Rakete liest ja mit und hat dazu ja das perfekte Werkzeug erschaffen :slight_smile:

Danke schonmal

Hallo,
ich habe Probleme bei der Anleitung aus Post 101.
Ich weiß nicht so richtig, was ich in dem Skript „Sender Anzeigen“ verlinken soll.
Es sieht jetzt aktuell so aus.

<?
include "46951.ips.php"; // e2_function Skript
include "12893.ips.php"; // KonstantenArray Skript

$AktuellerSender = "Keine Information";

$AktuellerSender = ENIGMA2_GetCurrentServiceName($k_VU['IP']);
list($AktuelleSenderinformation, $Fortschrittsanzeige) = ENIGMA2_GetCurrentFilm($k_VU['IP']);;
$AktuelleSenderreferenz = ENIGMA2_GetCurrentServiceReference($k_VU['IP']);
$URL = "<a href='http://".$k_VU['IP']."/web/stream.m3u?ref=$AktuelleSenderreferenz'>$AktuellerSender</a>";
list($snrdb, $snr, $ber, $acg) = ENIGMA2_SignalStatus($k_VU['IP']);

If ($AktuellerSender == "")
    {
   SetValueString(49187, "Keine Information");
   SetValueString(17708, "");
    SetValueInteger(28731, 0);
    SetValueInteger(15253, 0);
    }
   else
   {
    SetValueString(49187, $URL);
    SetValueString(17708 /*[VU+\Files\TV Informationen\Aktuelle Programminformationen]*/, "$AktuelleSenderinformation");
   SetValueInteger(28731 /*[VU+\Files\TV Informationen\Sendungsfortschritt]*/, $Fortschrittsanzeige);
    SetValueInteger(15253 /*[VU+\Files\TV Informationen\Empangspegel (AGC)]*/, $acg);
    }
?>

EDIT: jetzt geht es :smiley:

Hallo Leute,
eine Frage hätte ich dann doch noch :slight_smile:
Wie bekomm ich auf meine VU+ eine Meldung „Es klingelt an der Haustür“ die ich dann mit OK wegklicken kann?
Habe hier in dem Thread das gefunden

$message = urlencode(„Es klingelt an der Haustür“);
$xmlResult = new SimpleXMLElement(file_get_contents(„http://192.168.xxx.xx/web/messagetext=$message&type=3&timeout=5“));

Könnte mir jemand sagen, wie ich das in einen fertiges Skript packe?

WWW Reader anlegen und mit diesen hier senden:

$message = utf8_encode($message);
$message = urlencode($message);
//Eigenschaft verändern
WWWReader_SetPage(15541 /*[WWW Reader]*/,"http://192.168.xxx.xxx/web/message?text=".$message."&type=1&timeout=10");
IPS_ApplyChanges(15541 /*[WWW Reader]*/);
WWWReader_UpdatePage(15541 /*[WWW Reader]*/);

Hi,
ich habe jetzt

  1. einen Text Parser erstellt
  2. übergeordet einen WWW Reader erstellt
  3. ein Skript mit dem Inhalt erstellt

$message = utf8_encode($message);
$message = urlencode($message);
//Eigenschaft verändern
WWWReader_SetPage(15541 /*[WWW Reader]*/,"http://192.168.xxx.xxx/web/message?text=".$message."&type=1&timeout=10");
IPS_ApplyChanges(15541 /*[WWW Reader]*/);
WWWReader_UpdatePage(15541 /*[WWW Reader]*/);

Wie kann ich jetzt die Message anpassen? Also zB wenn es an der Tür klingelt, soll auch auf der VU erscheinen „Es klingelt“

EDIT: Wenn ich es einfach so mache

<?

$message = „Es hat geklingelt.“;
//Eigenschaft verändern
WWWReader_SetPage(10581 /[WWW Reader]/,„http://192.168.178.3/web/message?text=".$message."&type=1&timeout=10“);
IPS_ApplyChanges(10581 /[WWW Reader]/);
WWWReader_UpdatePage(10581 /[WWW Reader]/);

?>

dann bekomm ich diesen Error, wenn ich das Skript manuell ausführe.

„Warning: HTTP/1.1 400 Bad Request in C:\ips\scripts\26711.ips.php on line 7“

Probier mal:
http://192.168.178.3/web/message?text=Es hat geklingelt&type=1&timeout=10
im Browser