Sysclient
Interface for the sysclient.
File information
Classes
ISysclient
class ISysclient {
public:
static class ISysclient * Create(class IIoMux * const iomux, class ISocketProvider * tcpSocketProvider, class ISocketProvider * tlsSocketProvider, class USysclient * uSysclient, const char * serverURI, class IInstanceLog * const log, const char * webserverPassword, const char * provisioningCode, const char * macAddress);
virtual void SendIdentify(const char * challenge, const char * provisioningCode, const char * mac, const char * product, const char * version, const char * type);
virtual void SendCustomIdentify(const void * buff, size_t len);
virtual void Close();
};
Public functions
Create (static function)
-
The function is used to create a sysclient object.
Parameters
| class IIoMux * const iomux | To hold the architecture string |
| class ISocketProvider * tcpSocketProvider | The TCP socket provider |
| class ISocketProvider * tlsSocketProvider | The TLS socket provider |
| class USysclient * uSysclient | The USysclient instance to receive the callbacks. |
| const char * serverURI | The server URI (e.g. the Devices App URL) |
| class IInstanceLog * const log | The length of the buffer |
| const char * webserverPassword | The webserver password, which could be NULL |
| const char * provisioningCode | The provisioning code given by Devices |
| const char * macAddress | The MAC address of the device |
Return value
Returns the sysclient object.
SendIdentify
-
The function is used to send the Identify message, which is built using the parameters.
Parameters
| const char * challenge | The challenge, which could be set to NULL if there is no challenge yet |
| const char * provisioningCode | The provisioning code provided by Devices |
| const char * mac | The MAC address without whitespaces, ":" or "-" and in lowercase |
| const char * product | The product name |
| const char * version | The version (i.e. 13r1, 13r2...) |
| const char * type | The type of the device in JSON format (e.g. for a phone it will be { "type": "PHONE" }) |
SendCustomIdentify
-
The function is used to send a custom Identify message.
Parameters
| const char * buffer | The buffer with the JSON message |
| size_t len | The length of the buffer |
Close
-
Closes the sysclient object. After it is closed, the function SysClientClosed will be called.
USysclient
class USysclient {
public:
virtual void SysclientConnected(class ISysclient * sysclient);
virtual void SetProvisioningCode(const char * provisioningCode);
virtual void SetManagerSysClientPassword(const char * password);
virtual void SetPasswords(const char * admin_pwd);
virtual void SetConfig(char * buffer);
virtual const char * GetManagerSysClientPassword();
virtual void SysClientClosed(class ISysclient * sysclient);
};
Public functions
SysclientConnected
-
The function is used to create a sysclient object.
Parameters
| class ISysclient * sysclient | The ISysclient instance which will receive the callbacks. |
SetProvisioningCode
-
The function will be called with the provisioning code.
Parameters
| const char * provisioningCode | The provisioning code provided by Devices |
SetManagerSysClientPassword
-
The function will be called with the manager sysclient password for the device.
Parameters
| const char * password | The manager sysclient password for the device |
SetPasswords
-
This function will be called with the admin password.
Parameters
| const char * admin_pwd | The admin password |
SetConfig
-
Called with the config data of the device sent by Devices. This will be called several times and the last time the flag "last" will be set to too.
Parameters
| char * buffer | The buffer with config data on JSON format |
GetManagerSysClientPassword
-
The function returns the manager sysclient password.
Return value
Returns the manager sysclient password.
SysClientClosed
-
After the sysclient object is closed, this function is called so that the object can be deleted.
Parameters
| class ISysclient * sysclient | The ISysclient instance which will receive the callbacks. |