HSL 2.0-Framework  1.9
Beschreibung des Frameworks
Öffentliche Methoden | Aufstellung aller Elemente
hsl20_2_udp.hsl20_2_udp.Multicast Klassenreferenz

Alle Methoden für die Kommunikation per UDP-Multicast. Mehr ...

Abgeleitet von hsl20_2_udp.hsl20_2_udp.UdpBase.

Öffentliche Methoden

def set_address (self, server_ip, multicast_ip, port)
 Setzt die Server-Adresse und die Multicast-Adresse, unter der Daten empfangen und gesendet werden können. Mehr ...
 
def send (self, data)
 Sendet Daten in die Multicast-Gruppe. Mehr ...
 
def start_server (self)
 Startet den UDP-Empfangsserver. Mehr ...
 
- Öffentliche Methoden geerbt von hsl20_2_udp.hsl20_2_udp.UdpBase
def __init__ (self, framework, context_map)
 Konstruktor. Mehr ...
 
def set_on_data (self, callback)
 Setzt einen Callback für den Datenempfang. Mehr ...
 
def set_on_error (self, callback)
 Setzt einen Callback für den Fehlerfall. Mehr ...
 
def start_server (self)
 Startet den UDP-Empfangsserver. Mehr ...
 

Ausführliche Beschreibung

Alle Methoden für die Kommunikation per UDP-Multicast.

Veraltet:
Diese Klasse sollte nicht mehr eingesetzt werden. In den Beispielen wird gezeigt, wie sie durch Standardmodule von Python ersetzt werden kann.

Bietet die Kommunikation per UDP/IP in beide Richtungen.

Wird abgeleitet von UdpBase.

Beispiel

1 class UDP_Client(hsl20_2.BaseModule):
2 
3  def __init__(self, homeserver_context):
4  ...
5  #####################################################
6 
7  def on_init(self):
8  self.client=None
9 
10  def on_input_value(self, index, value):
11  if index == self.PIN_I_DATA:
12  if self.client == None:
13  self.client = self.FRAMEWORK.create_udp_multicast()
14  self.client.set_address("", self._get_input_value(self.PIN_I_IP), 4711)
15  self.client.send(value)

Beispiel 2 beinhaltet einen Multicast UDP-Client. Trifft auf Eingang 1 (PIN_I_DATA) ein Telegramm ein, wird dieses per UDP in die Multicast-Gruppe gesendet.

Zu beachten
Die Klasse arbeitet asynchron. Keine der angebotenen Methoden blockiert.
Änderungen V1.9:
Namespace 'hsl20_1' umbenannt in 'hsl20_2'

Dokumentation der Elementfunktionen

def hsl20_2_udp.hsl20_2_udp.Multicast.send (   self,
  data 
)

Sendet Daten in die Multicast-Gruppe.

Parameter
datastring
Daten
Ausnahmebehandlung
AttributeError
Wird ausgelöst, wenn noch keine Multicast-Adresse oder kein Port definiert wurde.
def hsl20_2_udp.hsl20_2_udp.Multicast.set_address (   self,
  server_ip,
  multicast_ip,
  port 
)

Setzt die Server-Adresse und die Multicast-Adresse, unter der Daten empfangen und gesendet werden können.

Parameter
server_ipstring
IP-Adresse. Wird ein Leerstring angegeben, werden die Daten unter der HomeServer-Netzwerkadresse empfangen.
multicast_ipstring
Multicast-Adresse. Gibt die Multicast-Gruppe an, unter der die Daten empfangen und gesendet werden können.
portint
IP-Port, unter dem die Daten empfangen und gesendet werden können.
Ausnahmebehandlung
RuntimeError
Wird diese Methode aufgerufen während der Server bereits gestartet wurde, wird eine RuntimeError-Exception ausgelöst.
def hsl20_2_udp.hsl20_2_udp.Multicast.start_server (   self)

Startet den UDP-Empfangsserver.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei: