8.1 Tipos de datos incorporados
8.1.1 Tipo ConfigBase
Tipo de configuración básico
class ConfigBase{
string GetConfigString(string key, string default);
int GetConfigInt(string key, string default);
}8.1.1.1 Obtener parámetro de configuración de cadena
Definición:
GetConfigString(key, default) -> stringCategoría: Método
Parámetro:
key: tipo string,Nombre de configuracióndefault: tipo string,Valor predeterminado
Retorno:
stringContenido de configuración obtenido, devuelve el valor predeterminado si está vacíoEjemplo:
8.1.1.2 Obtener parámetro de configuración entero
Definición:
GetConfigInt(key, default) -> intCategoría: Método
Parámetro:
key: tipo string,Nombre de configuracióndefault: tipo int,Valor predeterminado
Retorno:
intContenido de configuración obtenido, devuelve el valor predeterminado si está vacíoEjemplo:
8.1.2 Tipo Device
Tipo de dispositivo de recopilación de datos, hereda de ConfigBase, puede usar métodos de ConfigBase
class Device : ConfigBase{
string name;
string code;
string type;
json current;
json last;
int state;
int id;
}8.1.2.2 ID del dispositivo
Definición:
idCategoría: Propiedad
Tipo:
intDescripción: Devuelve el ID del dispositivo
Ejemplo:
8.1.2.3 Nombre del dispositivo
Definición:
nameCategoría: Propiedad
Tipo:
stringDescripción: Devuelve el nombre del dispositivo
Ejemplo:
8.1.2.4 Código del dispositivo
Definición:
codeCategoría: Propiedad
Tipo:
stringDescripción: Devuelve el código del dispositivo
Ejemplo:
8.1.2.5 Datos de recopilación actual del dispositivo
Definición:
currentCategoría: Propiedad
Tipo: table
Descripción: Devuelve los datos de recopilación actual del dispositivo
Ejemplo:
8.1.2.6 Datos de recopilación anterior del dispositivo
Definición:
lastCategoría: Propiedad
Tipo: table
Descripción: Devuelve los datos de recopilación anterior del dispositivo
Ejemplo:
8.1.3 Tipo Variable
Tipo de variable de recopilación de datos, hereda de ConfigBase, puede usar métodos de ConfigBase
class Variable{
int Write(json value);
Device device;
string name;
bool writable;
bool readable;
json current;
json last;
}8.1.3.1 Escribir valor en variable
Definición:
Write(value)Categoría: Método
Parámetro:
value: tipo any,Valor a escribir, el tipo depende de la configuración del tipo de datos de la variable
Ejemplo:
8.1.3.2 Nombre de la variable
Definición:
nameCategoría: Propiedad
Tipo:
stringDescripción: Nombre de la variable
Ejemplo:
8.1.3.3 Datos de recopilación actual de la variable
Definición:
currentCategoría: Propiedad
Tipo:
tableDescripción: Datos de recopilación actual de la variable
Ejemplo:
8.1.3.4 Datos de recopilación anterior de la variable
Definición:
lastCategoría: Propiedad
Tipo:
tableDescripción: Datos de recopilación anterior de la variable
Ejemplo:
8.1.3.5 Dispositivo al que pertenece la variable
Definición:
deviceCategoría: Propiedad
Tipo: Device
Descripción: Dispositivo al que pertenece la variable
Ejemplo:
8.1.4 Tipo Publisher
Tipo de plataforma de push
8.1.4.1 Obtener datos de recopilación originales
Definición:
GetOriginMessage() -> tableCategoría: Método
Retorno:
tableDevuelve los datos de recopilación originalesFormato de datos:
8.1.5 Tipo Mqtt
Cliente Mqtt para push
class MqttClient{
int Connect();
int PushMessage(string message, string topic, int qos, int retained);
int CheckConnect();
int Subscribe(string message, int qos);
string address;
string username;
string password;
string client_id;
int keepalive;
string will_msg;
int will_qos;
bool connected;
function on_connect;
function on_disconnect;
function on_message;
function on_connect;
string ca;
string cert;
string key;
string key_pass;
string ssl_version;
}8.1.5.1 Conectar a Mqtt
- Definición:
Connect() -> int - Categoría: Método
- Retorno:
intDevuelve el estado de conexión, 0 para ok, distinto de 0 para fallo de conexión
8.1.5.2 Push al servidor mqtt
- Definición:
PushMessage(message,topic,qos,retained) -> int - Categoría: Método
- Parámetro:
message:stringtipo string,Mensaje a enviartopic:stringtipo string,Topic destino del pushqos:inttipo int,QoS del push, 0 o 1 o 2retained:inttipo int,Si es mensaje retenido, 0 o 1
- Retorno:
intDevuelve el estado de push, 0 para ok, distinto de 0 para fallo de conexión
8.1.5.3 Verificar estado de conexión actual del servidor
- Definición:
CheckConnect() -> int - Categoría: Método
- Retorno:
intDevuelve el estado de conexión, 0 para ok, distinto de 0 para fallo de conexión
8.1.5.4 Suscribir topic
- Definición:
Subscribe(topic,qos) -> int - Categoría: Método
- Parámetro:
topic:stringtipo string,Topic a suscribirqos:inttipo int,0 o 1 o 2
- Retorno:
intDevuelve el estado de push, 0 para ok, distinto de 0 para fallo de conexión
8.1.5.5 Dirección del servidor Mqtt
- Definición:
address - Categoría: Propiedad
- Tipo: string
- Descripción: Formato: tcp://127.0.0.1:1883
8.1.5.6 Nombre de usuario de autenticación Mqtt
- Definición:
username - Categoría: Propiedad
- Tipo: string
8.1.5.7 Nombre de usuario de autenticación Mqtt
- Definición:
username - Categoría: Propiedad
- Tipo: string
8.1.5.13 QOS de testamento Mqtt
- Definición:
will_qos - Categoría: Propiedad
- Tipo: int
- Descripción: 0 o 1 o 2
8.1.5.14 Estado de conexión actual de Mqtt
- Definición:
connected - Categoría: Propiedad
- Tipo: Bool
- Descripción: Estado de conexión actual, true / false
8.1.5.15 Evento Mqtt Connected
- Definición:
on_connect - Categoría: Propiedad
- Tipo: function()
- Descripción: Se llama cuando la conexión al servidor mqtt tiene éxito, sin parámetros
8.1.5.16 Evento Mqtt Disconnected
- Definición:
on_disconnect - Categoría: Propiedad
- Tipo: function()
- Descripción: Se llama cuando el servidor mqtt se desconecta, sin parámetros
8.1.5.17 Evento de mensaje de suscripción Mqtt
- Definición:
on_message - Categoría: Propiedad
- Tipo: function(topic,message)
- Parámetro:
topic:stringtipo string,Topic del mensaje de suscripción recibidomessage:stringtipo string,Contenido del mensaje de suscripción recibido
- Descripción: Se activa cuando mqtt recibe un mensaje de suscripción, recibe dos parámetros