gateway
- Defines main information about supported protocol/gateway.
- If plugin has type then this field should be defined. Plugin can have only one gateway and all created devices by this plugin will have connection with described gateway.
- The firmware adds defined gateway automatically after installing of plugin and removes it after uninstalling of plugin.
Required : only if type of plugin is
Type :
gateway/name
- Short name of gateway or plugin.
Required : yes
Type : string
gateway/label
- Full name of gateway or plugin.
Required : yes
Type : string
gateway/setItemValueResponsePolicy
- Linux firmware only
- Defines main logic of sending answer on the hub.item.value.set request for the plugin.
Required : no
Possible values:
- — that response on hub.item.value.set request will be send by firmware immediately after request was received.
- — plugin is responsible for sending response on the hub.item.value.set request. When gateway/setItemValueCommand script is executed for item with custom policy additional (3rd) parameter is added: (string). Plugin is responsible to call core.send_response() method with this in order to send response on value set request. If plugin was unable to send response withing 2 minutes then firmware will send timeout error as answer on this call.
gateway/forceRemoveDeviceCommand
- hub.device.force_remove request for devices of the plugin will be redirected to the defined script.
- Remove a device from the controller.
Required : no
signature :
Field | Type | Required | Description |
---|---|---|---|
device_id | string | + | Device object id |
gateway/checkDeviceCommand
- hub.device.check request for devices of the plugin will be redirected to the defined script.
- Force request of latest values or status of device.
Required : no
signature :
Field | Type | Required | Description |
---|---|---|---|
device_id | string | + | Device object id |
check | string | – | Sync values with physical device or check status of device (reachable or not). Possible values: , . If this field is not defined than value and status should be checked. |
items | array of strings | – | Ids of items which values need to check. If this field is not defined than all values should be checked. |
gateway/setItemValueCommand
- hub.item.value.set request for items of the plugin will be redirected to the defined script.
- One of parameters “item_id” or “item_ids” should be specified.
Required: yes
signature:
Field | Type | Required | Description |
---|---|---|---|
item_id | string | – | Item object id |
item_ids | array of strings | – | List of items to send multicast request |
value | depends on item type | + | New item value. |
gateway/addItemDictionaryValueCommand
- hub.item.dictionary.value.add request for items of the plugin will be redirected to the defined script.
- Adds new value to dictionary type of items.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
item_id | string | + | Item object id |
value_type | strings | + | Type of value in dictionary |
value | depends on item type | + | Value to add |
gateway/setItemDictionaryValueCommand
- hub.item.dictionary.value.set request for items of the plugin will be redirected to the defined script.
- Change dictionary record value.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
item_id | string | + | Item object id |
value_type | strings | + | Type of value in dictionary |
value | depends on item type | + | Value to add |
gateway/removeItemDictionaryValueCommand
- hub.item.dictionary.value.remove request for items of the plugin will be redirected to the defined script.
- Delete dictionary record.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
item_id | string | + | Item object id |
key | string | + | Dictionary record id |
gateway/clearItemDictionaryCommand
- hub.item.dictionary.clear request for items of the plugin will be redirected to the defined script.
- Delete all records of dictionary
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
item_id | string | + | Item object id |
gateway/resetSettingCommand
- hub.device.setting.reset request for device settings of the plugin will be redirected to the defined script.
- Reset setting to default.
- One of and parameters should be specified, takes precedence.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
setting_id | string | – | Setting object id |
device_id | string | – | Device object id |
gateway/setSettingValueCommand
- hub.device.setting.value.set request for device settings of the plugin will be redirected to the defined script.
- Change setting value.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
setting_id | string | + | Setting object id |
value | depends on setting type | – | Value to set. Not required for action settings. |
gateway/setSettingDictionaryValueCommand
- hub.device.setting.dictionary.value.set request for device settings of the plugin will be redirected to the defined script.
- Change dictionary setting record value.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
setting_id | string | + | Setting object id |
key | string | + | Record id |
value | depends on setting type | – | Value to set. If not specified, dictionary record should be deleted. |
gateway/updateDeviceFirmwareCommand
- hub.devices.firmware.update request for device of the plugin will be redirected to the defined script.
- Start updating of smart device firmware.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
setting_id | string | + | Setting object id |
key | string | + | Record id |
value | depends on setting type | – | Value to set. If not specified, dictionary record should be deleted. |
gateway/createAbstractSubscriptionCommand
- Request to create abstract subscription forwarded by hub.cloud.subscription.create
- Create abstract subscription.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
request | object | + | Forwarded original request |
gateway/updateAbstractSubscriptionCommand
- Request to update abstract subscription forwarded by hub.cloud.subscription.update.
- Update abstract subscription.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
request | object | + | Forwarded original request |
subscriptionRecord | object | + | Database record of the abstract subscription |
mappingOperations | object | + | Dictionary of update operations for abstract subscription mappings |
mappingOperations.add | object | – | List of capability,variable pairs to add |
mappingOperations.update | object | – | List of capability,variable pairs to update |
mappingOperations.remove | object | – | List of capability,variable pairs to remove |
mappingOperations.keep | object | – | List of capability,variable pairs to keep |
gateway/deleteAbstractSubscriptionCommand
- Request to delete abstract subscription forwarded by hub.cloud.subscription.delete.
- Delete abstract subscription.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
request | object | + | Forwarded original request |
subscriptionRecord | object | + | Database record of the abstract subscription |
gateway/dispatchAbstractSubscriptionCommand
- Request to dispatch abstract subscription data from Abstract Subscriptions mechanism to a corresponding gateway forwarded by hub.cloud.subscription.dispatch.
- Updates value of an abstract subscription. Can be used to hande data that doesn’t correspond to the Item Value Types system.
Required: no
signature:
Field | Type | Required | Description |
---|---|---|---|
gatewayName | string | + | A gateway name to redirect request to. |
_id | string | + | An item identifier to which the payload belongs to. Should belong to the gateway pointed by the parameter. |
value | any | + | A payload from Abstract Subscriptions mechanism to update the item. |