Datafox DFCom - API  04.03.11.00
Dokumentation zur Datafox Kommunikationsbibliothek (DFComDLL.dll / DFCom_x64.dll)
df_active_mode.h-Dateireferenz
#include "df_defines.h"

gehe zum Quellcode dieser Datei

Funktionen

int DF_API_CALL DFCStartActiveConnection (const char *networkAddress, int listenPort, int deviceAddress, int timeout, int aliveTimeout, int maxConnections, int infoFlags, int unused_setTo0, int *errorNumber)
 Initalisiert und Startet das Bibiotheksmodule für den Active-Mode. Mehr ...
 
int DF_API_CALL DFCStopActiveConnection (int *errorNumber)
 Stoppt das Bibiotheksmodule für den Active-Mode. Mehr ...
 
int DF_API_CALL DFCGetFirstActiveConnectionId ()
 Liefert die Erste Verbindungs-Id mit einer Verbindung im Active-Mode. Mehr ...
 
int DF_API_CALL DFCGetFirstActiveChannelID ()
 Liefert die Erste Verbindungs-Id mit einer Verbindung im Active-Mode. Mehr ...
 
int DF_API_CALL DFCGetNextActiveConnectionId (int previousId)
 Liefert die Nächste Verbindungs-Id mit einer Verbindung im Active-Mode. Mehr ...
 
int DF_API_CALL DFCGetNextActiveChannelID (int previousId)
 Liefert die Nächste Verbindungs-Id mit einer Verbindung im Active-Mode. Mehr ...
 
int DF_API_CALL DFCGetInfoActiveChannel (int connectionId, char *value, int *valueLength)
 Liefert Informationen zu einer Verbindung im Active-Mode. Mehr ...
 
int DF_API_CALL DFCSetRecordAvailable (int enabled)
 Liefert Informationen zu einer Verbindung im Active-Mode. Mehr ...
 
int DF_API_CALL DFCRecordAvailable (int *connectionId, int *deviceAddress, char *infoText, int *infoTextLength, int *errorNumber)
 Liefert die nächste Verbindung im Active-Mode welche Datensätze gemeldet hat. Mehr ...
 
int DF_API_CALL DFCBindDeviceToChannel (int connectionId, int deviceType, int deviceSerial, const char *deviceIp, int *errorNumber)
 Bindet ein Gerät im Active-Mode anhand von Gerätetyp und Seriennummer oder Geräte-Ip an eine vorgegebene Verbindungs-Id. Mehr ...
 

Dokumentation der Funktionen

◆ DFCBindDeviceToChannel()

int DF_API_CALL DFCBindDeviceToChannel ( int  connectionId,
int  deviceType,
int  deviceSerial,
const char *  deviceIp,
int *  errorNumber 
)

Bindet ein Gerät im Active-Mode anhand von Gerätetyp und Seriennummer oder Geräte-Ip an eine vorgegebene Verbindungs-Id.

Die Funktion kann vor Ausführung von DFCStartActiveConnection() oder zur Laufzeit aufgerufen werden. Durch sie können Verbindungen im Active-Mode an feste Verbindungs-Id's geknüpft werden.
Über die Funktion DFCIsChannelOpen() kann geprüft werden ob eine Verbindung besteht. Die gebundenen Verbidnungs-Id's tauchen auch bei einem Abruf mittels DFCGetFirstActiveChannelID() und DFCGetNextActiveChannelID() auf.

Export
DFComDLL als _DFCBindDeviceToChannel@20
DFCom_x64 als DFCBindDeviceToChannel
Parameter
[in]connectionIdZu verwendende Verbindungs-Id. Wertebereich 1 - 250.
[in]deviceType
  • Gerätenummer, Liste siehe DFCGetVersionFirmware(). Zu dieser Angabe ist auch die Angabe der Seriennummer (deviceSerial) notwendig. Da nur beide Angaben eine eindeutige Geräteidentifikation darstellen.
  • Wird eine -1 angegeben und es liegt keine Angabe zu deviceIp vor, entfernt dieses eine vorhandene Gerätebindung zu der Verbindungs-Id.
[in]deviceSerialSeriennummer des Gerätes.
[in]deviceIpIp-Adresse des zu bindenden Gerätes oder nullptr wenn eine Bindung über Gerätenummer und Seriennummer erfolgen soll.
[out]errorNumberFehlernummer bei fehlerhafter Ausführung.
Rückgabewerte
0Fehler bei Ausführung.
1Ausführung war erfolgreich.
Seit
04.01.05 enthalten

◆ DFCGetFirstActiveChannelID()

int DF_API_CALL DFCGetFirstActiveChannelID ( )

Liefert die Erste Verbindungs-Id mit einer Verbindung im Active-Mode.

Wurde mindesten eine Verbindung im Active-Mode entgegengenommen wird die zugeordnete Verbindung-Id geliefert. Der Wertebereich ist bei Anwendung von Mapping DFCBindDeviceToChannel() 1 - 250. Bei dynamischer Zuweisung entsprechend 251 - 391.

Export
DFComDLL als _DFCGetFirstActiveChannelID@0
DFCom_x64 als DFCGetFirstActiveChannelID
Rückgabe
Liefert -1 wenn keine Verbindung im Active-Mode besteht, ansonsten wird die Erste Verbindungs-Id zurückgegeben.
Seit
04.01.05 enthalten

◆ DFCGetFirstActiveConnectionId()

int DF_API_CALL DFCGetFirstActiveConnectionId ( )

Liefert die Erste Verbindungs-Id mit einer Verbindung im Active-Mode.

Wurde mindesten eine Verbindung im Active-Mode entgegengenommen wird die zugeordnete Verbindung-Id geliefert. Der Wertebereich ist bei Anwendung von Mapping DFCBindDeviceToChannel() 1 - 250. Bei dynamischer Zuweisung entsprechend 251 - 391.

Export
DFComDLL als _DFCGetFirstActiveConnectionId@0
DFCom_x64 als DFCGetFirstActiveConnectionId
Rückgabe
Liefert -1 wenn keine Verbindung im Active-Mode besteht, ansonsten wird die Erste Verbindungs-Id zurückgegeben.
Seit
04.01.05 enthalten

◆ DFCGetInfoActiveChannel()

int DF_API_CALL DFCGetInfoActiveChannel ( int  connectionId,
char *  value,
int *  valueLength 
)

Liefert Informationen zu einer Verbindung im Active-Mode.

Es werden alle ermittelten und hinterlegten Werte zur Verbindung geliefert.
Beim Start des Active-Mode mit DFCStartActiveConnection() können zusätzlich zu liefernde Werte angegeben werden.

Export
DFComDLL als _DFCGetInfoActiveChannel@12
DFCom_x64 als DFCGetInfoActiveChannel@
Parameter
[in]connectionIdZu verwendende Verbindungs-Id.
[out]valueEs werden immer die Information über den Verbundenen Gerätetypen und dessen Seriennummer geliefert.
Zusätzlich werden die angeforderten Werte aus der Angabe bei DFCStartActiveConnection() geliefert.
Alle Angaben werden mit einem \r getrennt in folgender fester Reihenfolge geliefert. Werte die nicht Ermittelt wurden, da ggf. nicht erwünscht, werden entspreched leer, jedoch nicht ausgelassen.
PositionBedeutung
1Gerätenummer anhand des Kürzels der Firmwareversion. Liste siehe DFCGetVersionFirmware()
2Seriennummer. Siehe DFCGetSeriennummer()
3Firmwareversion. (z. B. 04.03.010.PZE)
4IP Adresse und Port des Gerätes (z. B. 192.68.0.1:8000)
5MAC-Adresse (z.B. 00-20-4a-e7-1c-25)
[in,out]valueLengthAls in die maximale Länge von value, als out die in value übergebene Zeichenfolge.
Rückgabewerte
0Fehler bei Ausführung.
1Ausführung war erfolgreich.
Seit
04.01.05 enthalten

◆ DFCGetNextActiveChannelID()

int DF_API_CALL DFCGetNextActiveChannelID ( int  previousId)

Liefert die Nächste Verbindungs-Id mit einer Verbindung im Active-Mode.

Es wird eine ggf. folgende Verbindungs-Id mit einer Verbindung im Active-Mode gesucht und zurückgeliefert. Der Wertebereich ist bei Anwendung von Mapping DFCBindDeviceToChannel() 1 - 250. Bei dynamischer Zuweisung entsprechend 251 - 391.

Export
DFComDLL als _DFCGetNextActiveChannelID@4
DFCom_x64 als DFCGetNextActiveChannelID
Rückgabe
Liefert -1 wenn keine weitere Verbindung im Active-Mode besteht, ansonsten wird die Nächste Verbindungs-Id zurückgegeben.
Seit
04.01.05 enthalten

◆ DFCGetNextActiveConnectionId()

int DF_API_CALL DFCGetNextActiveConnectionId ( int  previousId)

Liefert die Nächste Verbindungs-Id mit einer Verbindung im Active-Mode.

Es wird eine ggf. folgende Verbindungs-Id mit einer Verbindung im Active-Mode gesucht und zurückgeliefert. Der Wertebereich ist bei Anwendung von Mapping DFCBindDeviceToChannel() 1 - 250. Bei dynamischer Zuweisung entsprechend 251 - 391.

Export
DFComDLL als _DFCGetNextActiveConnectionId@4
DFCom_x64 als DFCGetNextActiveConnectionId
Rückgabe
Liefert -1 wenn keine weitere Verbindung im Active-Mode besteht, ansonsten wird die Nächste Verbindungs-Id zurückgegeben.
Seit
04.01.05 enthalten

◆ DFCRecordAvailable()

int DF_API_CALL DFCRecordAvailable ( int *  connectionId,
int *  deviceAddress,
char *  infoText,
int *  infoTextLength,
int *  errorNumber 
)

Liefert die nächste Verbindung im Active-Mode welche Datensätze gemeldet hat.

Es werden alle ermittelten und hinterlegten Werte zur Verbindung geliefert.
Beim Start des Active-Mode mit DFCStartActiveConnection() können zusätzlich zu liefernde Werte angegeben werden.

Export
DFComDLL als _DFCRecordAvailable@20
DFCom_x64 als DFCRecordAvailable
Parameter
[out]connectionIdNächste Verbindungs-Id, welche Datensätze gemeldet hat.
[out]deviceAddressNächste Geräteadresse, welche Datensätze gemeldet hat.
[out]infoTextDiese Angabe ist die gleiche wie beim Aufruf von DFCGetInfoActiveChannel(). Siehe dort.
[in,out]infoTextLengthAls in die maximale Länge von infoText, als out die in infoText übergebene Zeichenfolge.
[out]errorNumberFehlernummer bei fehlerhafter Ausführung.
Rückgabewerte
0Fehler bei Ausführung.
1Ausführung war erfolgreich.
Seit
04.01.05 enthalten

◆ DFCSetRecordAvailable()

int DF_API_CALL DFCSetRecordAvailable ( int  enabled)

Liefert Informationen zu einer Verbindung im Active-Mode.

Es werden alle ermittelten und hinterlegten Werte zur Verbindung geliefert.
Beim Start des Active-Mode mit DFCStartActiveConnection() können zusätzlich zu liefernde Werte angegeben werden.

Export
DFComDLL als _DFCSetRecordAvailable@4
DFCom_x64 als DFCSetRecordAvailable
Parameter
[in]enabledBei Angabe von 0 werden eingehende Datensatzmeldungen ignoriert. Vorhandene zwischengespeicherte werden entsprechend gelöscht. Bei Angabe von 1 werden eingehenden Datensatzmeldungen für den Abruf mittels DFCRecordAvailable() zwischengepsichert.
Rückgabewerte
0Fehler bei Ausführung.
1Ausführung war erfolgreich.
Seit
04.01.05 enthalten

◆ DFCStartActiveConnection()

int DF_API_CALL DFCStartActiveConnection ( const char *  networkAddress,
int  listenPort,
int  deviceAddress,
int  timeout,
int  aliveTimeout,
int  maxConnections,
int  infoFlags,
int  unused_setTo0,
int *  errorNumber 
)

Initalisiert und Startet das Bibiotheksmodule für den Active-Mode.

Nach erfolgreicher Ausführung wird auf dem angegebenen Port auf eingehende Geräteverbindungen gewartet.
Bei der entgegennahme werden entsprechende Informationen ermittelt und die Verbindung über eine ggf. dynamisch vergebene Verbindungs-Id oder über ein anzugebendes Mapping (DFCBindDeviceToChannel()) zugängelich gemacht.
Die Annahme von "Datensatzmeldungen" ist standardmäßig aktiv und kann durch Aufruf von DFCSetRecordAvailable() wie gewünscht eingestellt werden.

Export
DFComDLL als _DFCStartActiveConnection@36
DFCom_x64 als DFCStartActiveConnection
Warnung
  • Diese Funktion öffnet einen Listen-Socket für die Entgegennahme von Verbindungen. Bitte stellen Sie sicher, dass Ihre Firewall - Konfiguration dieses zulässt und nicht blockiert.
  • Der angegebene Schnittstellentimeout bezieht sich auf alle entgegengenommenen Verbindungen und muss demnach so gewählt werden, dass die Verbindungsart mit den höchsten Packetlaufzeiten berücksichtigt wird. Betreiben Sie zum Beispiel Geräte im LAN sowie WAN (per GPRS) ist die Vorgabe für WAN (per GPRS) zu wählen.
Zu beachten
Für die Einrichtung des Active-Mode im Gerät, stehen Ihnen auch Systemvariablen, speziell Variablen für Active-Mode, Präfix COM zur Verfügung.
Parameter
[in]networkAddressAdresse der Netzwerkschnittstelle von der Verbindungen entgegengenommen werden sollen. Standardwert 0.0.0.0, dieses Bedeutet es wird von allen Netzwerkschnittstellen die Verbindungen entgegengenommen.
[in]listenPortPort auf dem die Verbindungsanfragen einlaufen müssen. Standardwert 8000.
[in]deviceAddressDie von der Bibliothek zu verwendende Gerätenummer. Standardwert ist 0. Hierbei handelt es sich nicht um die Gerätenummer des später anzusprechenden Gerätes. Diese Angabe hier wird als Absenderadresse in den Protokollpacketen verwendet.
[in]timeoutZu verwendender Schnittstellentimeout in Millisekunden. Standardwert 5000.
[in]aliveTimeoutDieser Wert gibt in Sekunden an, in welchem Zyklus ein Datenpacket zwischen Gerät und Bibliothek gewechselt werden muss um sicherzustellen, dass die Verbindung noch besteht.
Dieser Wert wird bei der Verbindungsentgegennahme auch an das Gerät weitergeleitet, damit dieses ebenfalls eine Verbindungsunterbrechung erkennt.
[in]maxConnectionsMaximal anzunehmende Verbidnungen. Standardwert 20, Maximalwert 140.
[in]infoFlagsEs werden immer die Information über den Verbundenen Gerätetypen und dessen Seriennummer geliefert.
Zusätzlich können Sie folgende Informationen anfordern. Diese werden bei der Verbindungsentgegennahme einmalig ermittelt und zwischengespeichert.
BitnummerWertBedeutung
11Firmwareversion (z. B. 04.03.010.PZE)
22IP Adresse und Port des Gerätes (z. B. 192.68.0.1:8000)
34MAC-Adresse (z.B. 00-20-4a-e7-1c-25)
...Nicht verwendet. Immer mit 0 übergeben.
Um zusätzlich die Informationen über Firmwareversion und MAC-Adresse abzurufen, muss entsprechend der Wert (1 + 4 =) 5 angegeben werden. Alle Angaben werden mit einem \r getrennt in folgender fester Reihenfolge geliefert. Werte die nicht Ermittelt wurden, da ggf. nicht erwünscht, werden entspreched leer, jedoch nicht ausgelassen.
PositionBedeutung
1Gerätenummer anhand des Kürzels der Firmwareversion. Liste siehe DFCGetVersionFirmware()
2Seriennummer. Siehe DFCGetSeriennummer()
3Firmwareversion. (z. B. 04.03.010.PZE)
4IP Adresse und Port des Gerätes (z. B. 192.68.0.1:8000)
5MAC-Adresse (z.B. 00-20-4a-e7-1c-25)
[in]unused_setTo0Reserviert. Standardwert 0.
[out]errorNumberFehlernummer bei fehlerhafter Ausführung.
Rückgabewerte
0Fehler bei Ausführung.
1Ausführung war erfolgreich.
Seit
04.01.05 enthalten

◆ DFCStopActiveConnection()

int DF_API_CALL DFCStopActiveConnection ( int *  errorNumber)

Stoppt das Bibiotheksmodule für den Active-Mode.

Ggf. vorhandene Verbindungen des Active-Mode werden geschlossen. Alle gespeicherten Daten über die Verbindungen und derren aktuelle Zustände werden gelöscht.

Export
DFComDLL als _DFCStopActiveConnection@4
DFCom_x64 als DFCStopActiveConnection
Parameter
[out]errorNumberFehlernummer bei fehlerhafter Ausführung.
Rückgabewerte
0Fehler bei Ausführung.
1Ausführung war erfolgreich.
Seit
04.01.05 enthalten

© 2003-2018 Datafox GmbH