Neo Menü per HTTP Request oder Intent aufrufen.

Haussteuerung mittels mediola

Moderator: Co-Administratoren

Nicow84
Beiträge: 1
Registriert: 28.08.2019, 20:49

Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von Nicow84 » 28.08.2019, 21:04

Hallo, Folgende Frage bzw Szenario.
Ich würde gerne bei bestimmten Aktionen per CCU einen HTTP Request auf dem Gerät ausführen auf dem die Fernbedienung installiert ist.
Beispiel:
Jemand klingelt an der Doorbird -> Request an die CCU -> CCU spricht Sonos an oder Lampen etc (bis hier her funktioniert die Kette) zusätzlich würde ich gerne einen Request an mein Tablet senden das mir dann das passende Untermenü (Seite) in der Neo App öffnet. Anwendungsbeispiele gibt es dafür viele, (per Geste schalte ich meine Alarmanlage scharf, sind alle Türen geschlossen -> keine Anzeige, sollte eine Tür offen sein würde ich gerne das entsprechende Popup in Neo angezeigt bekommen.

Gibt es in der Mediola Software entsprechende Möglichkeiten? Was sind Alternativen die das möglich machen? Ich vermute mal das es bei allen Webbasierenden Fernbedienungen (Visualisierungen) möglich sein muss?
Besten Dank.

Fonzo
Beiträge: 6673
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von Fonzo » 29.08.2019, 00:03

Nicow84 hat geschrieben:
28.08.2019, 21:04
Gibt es in der Mediola Software entsprechende Möglichkeiten?
Entweder Du legst eine Sytemvariable auf den Status der Seite, als Aktion wählst Du dann so was wie Seitenwechsel oder Popup öffnen. Wenn Du die Systemvariable auf der CCU änderst und die Bedingung erfüllt ist, öffnet sich dann das Popup bzw. wird die Aktion ausgeführt, die eingestellt wurde.

Alternative wäre z.B. den NEO Server mit dem NEO Plugin Automation Manager auf der CCU3 zu nutzten, da kann man dann einen Task einrichten und dann zusätzlich zu den Dingen, die die CCU so oder so durchführen soll, auch einen Seitenwechsel in der NEO Remote anweisen.
Nicow84 hat geschrieben:
28.08.2019, 21:04
Was sind Alternativen die das möglich machen?
Grundsätzlich kannst Du einen Seitenwechsel in einer NEO Remote auslösen durch ein Event das über einen Broadcast auf einem UDP Socket auf Port 1902 stattfindet. Dazu braucht Du nur irgendein Tool das einen UDP Broadcast verschicken kann. Ich selber nutzte dazu IP-Symcon.

Code: Alles auswählen

<?php
$remote = "Acer Iconia";
$page = "Kamera";
MEDIOLA_PUSH_Sitechange($remote, $page);

function MEDIOLA_PUSH_Sitechange($remote, $page)
{
    $port = 1902; //Push Port
    $broadcast = "192.168.55.255"; // Broadcastadresse für eigenes Subnetz
    $msg = '{XC_EVT}{"func":"changePage","remote":"'.$remote.'","page":"'.$page.'"}'; 
    $len = strlen($msg);//Länge der Message
    $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
    socket_set_option($sock, SOL_SOCKET, SO_BROADCAST, 1);
    socket_sendto($sock, $msg, $len, 0, $broadcast, $port);
    socket_close($sock);
}
Der Remotename sowie der Seitename ist an die eigene NEO Remote anzupassen. Die Broadcastadresse muss an das eigene Subnetz angepasst werden.

Chemieka
Beiträge: 649
Registriert: 03.01.2017, 17:39
Hat sich bedankt: 4 Mal
Danksagung erhalten: 9 Mal

Re: Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von Chemieka » 02.09.2019, 11:30

Ich mach das so ähnlich mit meinem Samsung Tab A dort habe ich Tasker drauf. Das Tab muss aber gerootet sein.
Klingelt es bei mir an der Tür, geht am Tab das Kamerabild dazu auf und das Tab wird aufgeweckt.
Für das Aufwecken nehme ich einen HTTP Request.

Aber wenn du schon bis zur CCU kommst, dann brauchst du doch wirklich nur eine Systemvariable, welche dann die Seite in Mediola umschaltet.
Das mach ich so, um auf die Kamerabildseite zu kommen. nach 30 Sekunden wechselt er zurück (hab ich so eingestellt) und die Variable stellt sich auch zurück.
PI3+ mit RaspberryMatic; PI4 mit IOBroker; Samsung Tab A mit Mediola Visualisierung; Harmony Hub; Philips Hue; Drei IP Cams; Zwei Leseköpfe an den Stromzählern; Reedkontakt (Arduino) am Wasserzähler; Drucksensor (Arduino); CUL433 für Intertechno und Somfy RTS; Nuki Bridge

davimas
Beiträge: 36
Registriert: 11.09.2017, 11:27
Hat sich bedankt: 8 Mal

Re: Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von davimas » 09.09.2019, 15:02

Hey,

Ich klink mich mal hier ein.....ich denke der Threadersteller meint es so > auf dem Handy, soll die Neo App aufgehen. Automatisch :wink:

Das wäre natürlich spitze, klappt wohl aber nur auf Android mit Tasker.


by, David

Fonzo
Beiträge: 6673
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von Fonzo » 09.09.2019, 16:15

davimas hat geschrieben:
09.09.2019, 15:02
ich denke der Threadersteller meint es so > auf dem Handy, soll die Neo App aufgehen.
Das sind zwei unterschiedliche Sachen, wenn man man wie gefragt eine passende NEO Seite öffnen will, dann muss man auch gezielt diese NEO Seite laden über ein Event (siehe oben). Wenn es nur darum geht die NEO App aufzuwecken, wenn das Gerät im Ruhemodus ist, reicht eine einfach Push Nachricht aus.
davimas hat geschrieben:
09.09.2019, 15:02
Automatisch :wink:
Und was verstehst Du unter automatisch? Irgendeinen Auslöser muss es ja geben, sei es ein Bewegungsmelder oder ein bestimmtes Ereignis. In dem Fall wird dann ein Push Event geschickt, dann öffnet sich auch die App bzw. eine bestimmte Seite.
davimas hat geschrieben:
09.09.2019, 15:02
Das wäre natürlich spitze, klappt wohl aber nur auf Android mit Tasker.
Das geht genau so mit iOS, allerdings nur im geführten Zugriff, da iOS auf Sicherheit ausgelegt ist. Wenn die NEO App also im geführten Zugriff aktiv ist, kann auch aus dem Ruhezustand eines iPad die NEO App wieder geweckt werden durch eine Push Nachricht.

Matten Matten
Beiträge: 278
Registriert: 09.12.2018, 17:14
System: CCU
Hat sich bedankt: 67 Mal
Danksagung erhalten: 21 Mal
Kontaktdaten:

Re: Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von Matten Matten » 30.05.2021, 21:13

Fonzo hat geschrieben:
29.08.2019, 00:03
Nicow84 hat geschrieben:
28.08.2019, 21:04
Gibt es in der Mediola Software entsprechende Möglichkeiten?
Entweder Du legst eine Sytemvariable auf den Status der Seite, als Aktion wählst Du dann so was wie Seitenwechsel oder Popup öffnen. Wenn Du die Systemvariable auf der CCU änderst und die Bedingung erfüllt ist, öffnet sich dann das Popup bzw. wird die Aktion ausgeführt, die eingestellt wurde.

Alternative wäre z.B. den NEO Server mit dem NEO Plugin Automation Manager auf der CCU3 zu nutzten, da kann man dann einen Task einrichten und dann zusätzlich zu den Dingen, die die CCU so oder so durchführen soll, auch einen Seitenwechsel in der NEO Remote anweisen.
Nicow84 hat geschrieben:
28.08.2019, 21:04
Was sind Alternativen die das möglich machen?
Grundsätzlich kannst Du einen Seitenwechsel in einer NEO Remote auslösen durch ein Event das über einen Broadcast auf einem UDP Socket auf Port 1902 stattfindet. Dazu braucht Du nur irgendein Tool das einen UDP Broadcast verschicken kann. Ich selber nutzte dazu IP-Symcon.

Code: Alles auswählen

<?php
$remote = "Acer Iconia";
$page = "Kamera";
MEDIOLA_PUSH_Sitechange($remote, $page);

function MEDIOLA_PUSH_Sitechange($remote, $page)
{
    $port = 1902; //Push Port
    $broadcast = "192.168.55.255"; // Broadcastadresse für eigenes Subnetz
    $msg = '{XC_EVT}{"func":"changePage","remote":"'.$remote.'","page":"'.$page.'"}'; 
    $len = strlen($msg);//Länge der Message
    $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
    socket_set_option($sock, SOL_SOCKET, SO_BROADCAST, 1);
    socket_sendto($sock, $msg, $len, 0, $broadcast, $port);
    socket_close($sock);
}
Der Remotename sowie der Seitename ist an die eigene NEO Remote anzupassen. Die Broadcastadresse muss an das eigene Subnetz angepasst werden.
Danke für die Info, das funktioniert auch super, Kann man auch popups öffnen? wenn ja wie muss "$msg" dann aussehen?

EDIT:
Hat sich erledigt, hab ich hier gefunden! danke
Gruß
Matten Matten

Fonzo
Beiträge: 6673
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von Fonzo » 31.05.2021, 14:46

Matten Matten hat geschrieben:
30.05.2021, 21:13
Hat sich erledigt, hab ich hier gefunden!
Das kommt darauf an was Du genau machen willst. Wenn Du nur einfach ein Popup öffnen willst ohne Formatierung dann geht das so.

Wenn Du allerdings das Popup formiert hast, musst Du auch die passende Formatierung in den Settings übergeben, ansonsten würde das Popup ohne passende Formatierung geöffnet. Die Settings werden als JSON übergeben.

Die $msg ohne Formatierung besteht aus

Code: Alles auswählen

$msg = '{XC_EVT}{"func":"popup","remote":"'.$remote.'","action":"open", "popup":"'.$popup.'"}';
mit Formatierung dann so

Code: Alles auswählen

$msg = '{XC_EVT}{"func":"popup","remote":"'.$remote.'","action":"open", "popup":"'.$popup.'","settings":"' . $settings . '"}';


Wobei die Settings z.B. so aussehen

Code: Alles auswählen

$settings = '{\"anim\":{\"open\":\"slide-from-bottom\",\"open_duration\":400,\"close\":\"slide-to-bottom\",\"close_duration\":400},\"bg\":{\"color\":\"#000000\",\"alpha\":0},\"css\":\"background-color: transparent\",\"pos\":{\"align\":\"left_bottom\",\"alignTo\":\"page\",\"x\":-5,\"y\":-110},\"style\":{\"radius\":\"5px\",\"shadow\":\"2px 2px 4px 3px rgba(0,0,0,0.8)\"}}';
Die Settings umfassen so was wie Animation, Schattenwurf, Eckenradius usw.

Matten Matten
Beiträge: 278
Registriert: 09.12.2018, 17:14
System: CCU
Hat sich bedankt: 67 Mal
Danksagung erhalten: 21 Mal
Kontaktdaten:

Re: Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von Matten Matten » 31.05.2021, 15:23

Fonzo hat geschrieben:
31.05.2021, 14:46
Matten Matten hat geschrieben:
30.05.2021, 21:13
Hat sich erledigt, hab ich hier gefunden!
Das kommt darauf an was Du genau machen willst. Wenn Du nur einfach ein Popup öffnen willst ohne Formatierung dann geht das so.

Wenn Du allerdings das Popup formiert hast, musst Du auch die passende Formatierung in den Settings übergeben, ansonsten würde das Popup ohne passende Formatierung geöffnet. Die Settings werden als JSON übergeben.

Die $msg ohne Formatierung besteht aus

Code: Alles auswählen

$msg = '{XC_EVT}{"func":"popup","remote":"'.$remote.'","action":"open", "popup":"'.$popup.'"}';
mit Formatierung dann so

Code: Alles auswählen

$msg = '{XC_EVT}{"func":"popup","remote":"'.$remote.'","action":"open", "popup":"'.$popup.'","settings":"' . $settings . '"}';


Wobei die Settings z.B. so aussehen

Code: Alles auswählen

$settings = '{\"anim\":{\"open\":\"slide-from-bottom\",\"open_duration\":400,\"close\":\"slide-to-bottom\",\"close_duration\":400},\"bg\":{\"color\":\"#000000\",\"alpha\":0},\"css\":\"background-color: transparent\",\"pos\":{\"align\":\"left_bottom\",\"alignTo\":\"page\",\"x\":-5,\"y\":-110},\"style\":{\"radius\":\"5px\",\"shadow\":\"2px 2px 4px 3px rgba(0,0,0,0.8)\"}}';
Die Settings umfassen so was wie Animation, Schattenwurf, Eckenradius usw.
Danke dafür! Das hatte mir dann noch gefehlt.

Mir ist auch aufgefallen das die Tablets manchmal nicht reagieren und erst nach einem kompetenten Neustart des Gerätes erst wieder auf die Befehle reagieren. Scheint mit der Zeit einzuschlafen. Oder so.

Aber das popup mit gerundeten ecken und so weiter aufzurufen ist wirklich schöner. Danke nochmals dafür.

Vielleicht bekomme ich noch heraus warum die tablets mit der Zeit nicht mehr reagieren.

Gibt es vielleicht irgendwie die Möglichkeit den port auf dem sie "lauschen" aufrecht zu erhalten?
Ich muss dazu sagen ich realisiere das ganze via RedMatic flow.

Gruß
Matten Matten

Fonzo
Beiträge: 6673
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von Fonzo » 31.05.2021, 16:14

Matten Matten hat geschrieben:
31.05.2021, 15:23
Gibt es vielleicht irgendwie die Möglichkeit den port auf dem sie "lauschen" aufrecht zu erhalten?
Ob die NEO Remote lauscht ist ja zunächst mal eine Sache der NEO Remote selber, also vom Hersteller Mediola. Ich hatte damit bisher persönlich aber noch keine Probleme. Wenn Du umgekehrt auf ein AIO Gateway "lauschen" wollen würdest, ist es dann die Sache des Systems, was Du nutzt, die Verbindung aufrecht zu erhalten. Ich selber nutzte IP-Symcon, da besteht eine dauerhafte Verbindung zum AIO Gateway.
Matten Matten hat geschrieben:
31.05.2021, 15:23
Ich muss dazu sagen ich realisiere das ganze via RedMatic flow.
Kann ich Dir nicht beantworten, da ich RedMatic nicht benutzte. Macht aber aus meiner persönlichen Sicht auch keinen Sinn. Es macht Sinn dauerhaft eine Socket Verbindung zum AIO Gateway zu haben, wenn dort Events ausgewertet werden sollen. Bei einer NEO Remote ist es dagegen ja ausreichend nur den Befehl zu senden, die NEO Remote muss da ja reagieren.

Matten Matten
Beiträge: 278
Registriert: 09.12.2018, 17:14
System: CCU
Hat sich bedankt: 67 Mal
Danksagung erhalten: 21 Mal
Kontaktdaten:

Re: Neo Menü per HTTP Request oder Intent aufrufen.

Beitrag von Matten Matten » 31.05.2021, 16:26

Ich habe kein Aio Gateway. Mein System ist eine Raspberrymatic ccu mit dem addon RedMatic von dort aus kann ich die UDP Befehle senden. Die aio Neo Software hab ich damals gekauft und verlängere ja auch fleißig das sus damit alles auf dem aktuellen Entwicklungsstand bleibt. Und mir fehlte lediglich die Funktion ein popup unabhängig welcher seite ich bin zu öffnen/schließen. Ich schaue mal was ich da machen kann damit das zuverlässig funktioniert. Aber ersteinmal muss ich mir eine passende config für die popups (einblenden, ecken gerundet etc.) bauen.
die NEO Remote muss da ja reagieren.
macht sie leider warum auch immer nach einer Zeit lang nicht. :oops: :oops:

Gruß
Matten Matten

Antworten

Zurück zu „mediola“