Modul mit Parent "UDP Socket"

Ich baue gerade ein Modul das als Parent einen „UDP-Socket“ hat.
Dazu ein paar Fragen.
Wo wird gespeichert welche Instanz (ID) von „UDP-Socket“ mit meiner Instanz verbunden ist?
Warum ist im „$this->SendDataToParent“ nochmals die IP und der Port angegeben.
Beide Angaben sind doch schon in der verbundenen Instanz vom „UDP-Socket“ eingestellt!

public function Create()
{
	//Never delete this line!
	parent::Create();

	$this->RequireParent('{82347F20-F541-41E1-AC5B-A636FD3AE2D8}');
}
public function Send(string $Text, string $ClientIP, int $ClientPort)
{
	$this->SendDataToParent(json_encode(['DataID' => '{C8792760-65CF-4C53-B5C7-A30FCC84FEFE}', "ClientIP" => $ClientIP, "ClientPort" => $ClientPort, "Buffer" => $Text]));
}

public function ReceiveData($JSONString)
{
	$data = json_decode($JSONString);
	IPS_LogMessage('Device RECV', utf8_decode($data->Buffer . ' - ' . $data->ClientIP . ' - ' . $data->ClientPort));
}

Die ID/Verbindung wird intern von IP-Symcon verwaltet. Da hast du keinen Einfluss drauf. RequireParent erstellt einfach einen UDP Socket für dich. Falls du Einstellungen Vorschlagen willst, schau dir unbedingt GetConfigurationForParent —IP-Symcon :: Automatisierungssoftware an.

Du nutzt scheinbar aktuell den „komplexeren“ Datenfluss der eher für den Server Socket gedacht ist. Nutz am besten das simplen Datenfluss: Datenfluss —IP-Symcon :: Automatisierungssoftware

Dann werden auch die Einstellungen vom Socket genutzt.

paresy

Ich hab das Modul mit dem Modul-Generator erzeugt und einfach mal geschaut was da rauskommt.

Der nutzt scheinbar den komplexen Datenfluss. Der ist auch cool, wenn du direkt mit mehreren Geräten kommunizieren willst und die Werte im UDP Socket nicht beachten willst was Host/Port angeht.

paresy

Die Programmierung von Modulen macht echt Spaß.
Ich hatte jetzt erst lust und Zeit mich damit zu beschäftigen.
Die Systematik ist echt gut gemacht. :+1:

Wir geben uns auch echt viel Mühe bei der Doku und falls du die noch nicht entdeckt hast die Webinare auf unserem YouTube Kanal. :slight_smile: Danke für dein positives Feedback!

paresy

Damit habe ich angefangen!
Was ich etwas vermisse ist der Zugriff auf die visuellen Komponenten im WebFront. Chart und…