// ------------------------------------------------------------------
// Common Definition of Device Address and Node Address
// ------------------------------------------------------------------
syntax = "proto3";
package siemens.common.address.v1;
//===================================================================
// Address Message Definitions
//===================================================================
message ConnectionCredential {
// the URI of a Connector schema the credential belongs to
string schema_uri = 1;
// Connector specific credentials to establish the connection
// Could be Token, Username + Password, Certificates, ...
string credentials = 2;
}
message ConnectionParameterSet {
// the URI of a specific Connector schema
string schema_uri = 1;
// A json string containing the connection parameters according to the
// path $defs/config_connection/parameters in the base schema
// 'https://siemens.com/connectivity_suite/schemas/base/1.0.0/config.json'
// specialized for the specific schema given above with 'schema_uri'
// providing properties like ip address, ...
string parameter_json = 2;
// A json string containing the connection subdriver configuration according to the
// path $defs/config_connection/subdriver in the base schema
// 'https://siemens.com/connectivity_suite/schemas/base/1.0.0/config.json'
string subdriver_json = 3;
repeated ConnectionCredential credentials = 4;
}
message DatapointConfiguration {
// the name of the datapoint
string datapoint_name = 1;
// The configurations for the datapoints which has to be added
DatapointParameterSet datapoint_parameter_set = 2;
// The access mode for this datapoint "r", "w" or "rw"
string access_mode = 3;
// The owner of this datapoint
string owner = 4;
// A json string containing the datapoint array lower bounds according to the
// path $defs/connection_datapoint/array_lower_bounds in the base schema
// 'https://siemens.com/connectivity_suite/schemas/base/1.0.0/config.json'
// specialized for the specific schema given above with 'schema_uri'
repeated int32 array_lower_bounds = 5;
}
// Benötigt bei generic read/write, bestandteil von configuration
message DatapointParameterSet {
// the URI of a specific Connector schema for the parameter
// must be only set, if the schema is different to the schema uri of the connection
// string schema_uri = 1;
// A json string containing the datapoint address according to the
// path $defs/connection_datapoint/address in the base schema
// 'https://siemens.com/connectivity_suite/schemas/base/1.0.0/config.json'
// specialized for the specific schema given by the schema uri of the connection
string address_json = 2;
// A json string containing the datapoint specific parameters according to the
// path $defs/connection_datapoint/parameters in the base schema
// 'https://siemens.com/connectivity_suite/schemas/base/1.0.0/config.json'
// specialized for the specific schema given above with 'schema_uri'
string parameter_json = 3;
// This is the device specific datatype and not the Connectivity Suite datatype.
// The types are defined by the driver.
string connector_specific_datatype = 4;
// Size of the array dimension(s)
// Examples:
// [] ( empty ) - scalar value
// [2] - 1-dim array with size 2
// [0] - 1-dim array with dynamic size, i.e. size is part of payload
// [2,3] - 2-dim array with size 2 x 3
// [2,0] - 2-dim array with dynamic size 2 x n, i.e. size of 2nd dimension is part of payload
repeated int32 array_dimensions = 5;
}
// this is an array of browsenames which together form one browse path
// to identify one Node during browsing (e.g. starting node)
message BrowsePath {
repeated string names = 1;
}
// Address of the device / instance you want to communicate with
message Destination {
oneof target {
// e.g. PROFINET name, IP-Address, PA-Address, ...
ConnectionParameterSet connection_parameter_set = 1;
// alternative, if a connection exist and can be referenced by name
string connection_name = 2;
}
}
// This is a work-around for "repeated oneof" in protobuf. See https://github.com/protocolbuffers/protobuf/issues/2592
message NodeAddress {
oneof type {
// A json string containing the datapoint address according to the
// path $defs/connection_datapoint/address in the base schema
// 'https://siemens.com/connectivity_suite/schemas/base/1.0.0/config.json'
// specialized for the specific schema given by the schema uri of the connection
string datapoint_json = 1;
// should work for any browse server
BrowsePath browse_path = 2;
}
}
Meldung | Feld | Typ | Label | Beschreibung |
---|---|---|---|---|
ConnectionCredential (Verbindungsberechtigung) | schema_uri | string | Der URI eines Connectorschemas, zu dem die Anmeldeinformationen gehören | |
Beglaubigungsschreiben | string | Connectorspezifische Anmeldeinformationen zum Herstellen der Verbindung | ||
ConnectionParameterSet | schema_uri | string | Der URI eines bestimmten Connector-Schemas | |
parameter_json | string | Eine JSON-Zeichenfolge, die die Verbindungsparameter enthält | ||
subdriver_json | string | Eine JSON-Zeichenfolge, die die Konfiguration des Verbindungsuntertreibers enthält | ||
Beglaubigungsschreiben | ConnectionCredential (Verbindungsberechtigung) | repeated | ||
Datenpunkt-Konfiguration | datapoint_name | string | Der Name des Datenpunkts | |
datapoint_parameter_set | DatapointParameterSet | Die Konfigurationen für die Datenpunkte, die hinzugefügt werden müssen | ||
access_mode | string | Der Zugriffsmodus für diesen Datenpunkt "r", "w" oder "rw" | ||
Eigentümer | string | Der Eigentümer dieses Datenpunkts | ||
array_lower_bounds | int32 | repeated | Eine JSON-Zeichenfolge, die die Untergrenzen des Datenpunktarrays enthält | |
DatapointParameterSet | address_json | string | Eine JSON-Zeichenfolge, die die Datenpunktadresse enthält | |
parameter_json | string | Eine JSON-Zeichenfolge, die die datenpunktspezifischen Parameter enthält | ||
connector_specific_datatype | string | Dabei handelt es sich um den gerätespezifischen Datentyp und nicht um den Connectivity Suite-Datentyp | ||
array_dimensions | int32 | repeated | Größe der Array-Dimension(en) | |
BrowsePath (englisch) | Namen | string | repeated | Dabei handelt es sich um ein Array von Browsenames, die zusammen einen Browse-Pfad bilden |
Ziel | connection_parameter_set | ConnectionParameterSet | z.B. PROFINET-Name, IP-Adresse, PA-Adresse, ... | |
connection_name | string | Alternativ, wenn eine Verbindung vorhanden ist und über den Namen referenziert werden kann | ||
Knotenadresse | datapoint_json | string | Eine JSON-Zeichenfolge, die die Datenpunktadresse enthält | |
browse_path | BrowsePath (englisch) | Sollte für jeden Browse-Server funktionieren |