CloudOfThingsClient
Description
The CloudOfThingsClient object is used to connect to the Cloud of Things. A tenant is required to use the cloud and each device has to be registered.
- › Inherits:
Overview
Properties
Methods
Signals
Enumerations
Properties
clientId
This property holds the clientId of this device. Normally this is the MAC address of eth0.
- › Type:
String
- › Signal:
clientIdChanged()
- › Attributes:
Readonly
error
This property holds the most recently occurred error or CloudOfThingsClient.NoError if no error occurred. If the same error occurs multiple times this property does not change. Use the errorOccurred() signal to detect multiple occurrences of the same error.
- › Type:
- › Signal:
errorChanged()
- › Attributes:
Readonly
errorString
This property holds the current human readable error string corresponding to the current value in the error property. It may include additional information such as failure reasons or locations.
- › Type:
String
- › Signal:
errorStringChanged()
- › Attributes:
Readonly
iccid
This property holds the ICCID of the currently used SIM card. Every change of this property is transmitted to Cloud of Things. See MobileNetworkInterface for more information.
- › Type:
String
- › Signal:
iccidChanged()
- › Attributes:
Writable
imei
This property holds the IMEI of the modem device. Every change of this property is transmitted to Cloud of Things. See MobileNetworkInterface for more information.
- › Type:
String
- › Signal:
imeiChanged()
- › Attributes:
Writable
imsi
This property holds the IMSI of the currently used SIM card. Every change of this property is transmitted to Cloud of Things. See MobileNetworkInterface for more information.
- › Type:
String
- › Signal:
imsiChanged()
- › Attributes:
Writable
objects
This property holds a list of objects. This can be used for objects that require a CloudOfThingsClient as parent.
registrator
This property holds the device registrator used to either do the bootstrap or connect with given credentials.
- › Type:
- › Signal:
registratorChanged()
- › Attributes:
Readonly
remoteConnectionManager
This property holds a remote connection manager. If its property CloudOfThingsRemoteConnectionManager.enabled is true you can configure remote connections in the cloud. Restrict the trusted end points to CloudOfThingsRemoteConnectionManager.allowedEndpoints.
This property was introduced in InCore 1.1.
- › Type:
- › Signal:
remoteConnectionManagerChanged()
- › Attributes:
Readonly
tenant
This property holds the name of the tenant at the Cloud of Things. Currently it is only used to communicate with the cloud for remote access. It is identical to your cloud access via <tenant>.ram.m2m.telekom.com.
- › Type:
String
- › Attributes:
Writable
transport
This property holds the communication layer which decides which protocol is used to cummunicate with the Cloud of Things.
This property was introduced in InCore 2.0.
- › Type:
- › Signal:
transportChanged()
- › Attributes:
Readonly
Signals
errorOccurred()
This signal is emitted whenever an error has occurred, regardless of whether the error property has changed or not. In contrast to the change notification signal of the error property this signal is also emitted several times if a certain error occurs several times in succession.
objectsDataChanged(SignedInteger index)
This signal is emitted whenever the List.dataChanged() signal is emitted, i.e. the item at index in the objects list itself emitted the dataChanged() signal.
Enumerations
Error
This enumeration describes all errors which can occur in CloudOfThingsClient objects. The most recently occurred error is stored in the error property.
Name |
Value |
Description |
|---|---|---|
|
|
No error occurred or was detected. |
|
|
tenant is not set. |
Example
import InCore.Foundation 2.5
import InCore.CloudOfThings 2.5
Application {
//timer for manually reconnects
Timer {
id: timer
repeat: false
interval: 5000
onTriggered: transport.connectToHost()
}
CloudOfThingsClient {
id: client
tenant: "mustercloud"
transport {
id: transport
protocol: CloudOfThingsTransport.MQTT
tenantForMQTT: "nb-iot"
cleanSessionMQTT: false
//set high interval values to reduce traffic
requestOperationsIntervalMQTT: 10 * 60 * 1000
autoConnect: false
keepAlive: 2000
//log important state changes
onConnected: console.log( "Cloud of Things client connected" )
onErrorChanged: console.log( "oh... error occurred", errorString )
onDisconnected: timer.restart()
}
remoteConnectionManager {
enabled: true
//default [ "*" ]
allowedEndpoints: [ "localhost", "vnc.yourTestServ.er" ]
}
registrator {
isRegistered: true
password: "y0urAwes@meP4ssword"
}
//do your stuff here
/*
CloudOfThingsMeasurementWriter
{
...
}
CloudOfThingsEventWriter
{
...
}
*/
}
}