dsm-api-v2
Typedefs | Functions
Group

This group of API calls addresses groups and their properties. More...

Typedefs

typedef void(* ZoneGroupInfo_by_id_request_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupIdReq)
 Returns information of a group.
typedef void(* ZoneGroupInfo_by_id_response_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint8_t GroupId, uint8_t StateMachineGroupId, uint16_t NumberOfDevices, const uint8_t *Name, uint8_t StopTimeout, uint8_t RemoteStopTimeout)
 Returns information of a group.
typedef void(* ZoneGroupInfo_by_index_request_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t Index)
 Returns information of a group.
typedef void(* ZoneGroupInfo_by_index_response_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint8_t GroupId, uint8_t StateMachineGroupId, uint16_t NumberOfDevices, const uint8_t *Name, uint8_t StopTimeout, uint8_t RemoteStopTimeout)
 Returns information of a group.
typedef void(* ZoneGroupModify_add_request_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupId, uint8_t StateMachineGroupId)
 Add group to the given zone.
typedef void(* ZoneGroupModify_add_response_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId)
 Add group to the given zone.
typedef void(* ZoneGroupModify_remove_request_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupId)
 Remove a group from the given zone.
typedef void(* ZoneGroupModify_remove_response_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId)
 Remove a group from the given zone.
typedef void(* ZoneGroupProperties_set_name_request_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupId, const uint8_t *Name)
 Set the name of a group.
typedef void(* ZoneGroupProperties_set_name_response_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId)
 Set the name of a group.
typedef void(* ZoneGroupProperties_set_stop_timeout_request_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupId, uint8_t StopTimeout)
 Set the STOP timeout of a group.
typedef void(* ZoneGroupProperties_set_stop_timeout_response_callback_t )(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId)
 Set the STOP timeout of a group.

Functions

int ZoneGroupInfo_by_id (DsmApiHandle_t handle, dsid_t dSMdSID, uint16_t ZoneId, uint8_t GroupIdReq, uint8_t *GroupId, uint8_t *StateMachineGroupId, uint16_t *NumberOfDevices, uint8_t *Name, uint8_t *StopTimeout, uint8_t *RemoteStopTimeout)
 Returns information of a group.
int ZoneGroupInfo_by_index (DsmApiHandle_t handle, dsid_t dSMdSID, uint16_t ZoneId, uint8_t Index, uint8_t *GroupId, uint8_t *StateMachineGroupId, uint16_t *NumberOfDevices, uint8_t *Name, uint8_t *StopTimeout, uint8_t *RemoteStopTimeout)
 Returns information of a group.
int ZoneGroupModify_add (DsmApiHandle_t handle, dsid_t dSMdSID, uint16_t ZoneId, uint8_t GroupId, uint8_t StateMachineGroupId)
 Add group to the given zone.
int ZoneGroupModify_remove (DsmApiHandle_t handle, dsid_t dSMdSID, uint16_t ZoneId, uint8_t GroupId)
 Remove a group from the given zone.
int ZoneGroupProperties_set_name (DsmApiHandle_t handle, dsid_t dSMdSID, uint16_t ZoneId, uint8_t GroupId, const uint8_t *Name)
 Set the name of a group.
int ZoneGroupProperties_set_stop_timeout (DsmApiHandle_t handle, dsid_t dSMdSID, uint16_t ZoneId, uint8_t GroupId, uint8_t StopTimeout)
 Set the STOP timeout of a group.

Detailed Description

This group of API calls addresses groups and their properties.


Typedef Documentation

typedef void(* ZoneGroupInfo_by_id_request_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupIdReq)

Returns information of a group.

Select the group by group ID.

Request callback function prototype for call ZoneGroupInfo_by_id.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_REQUEST, MessageId = ZONE_GROUP_INFO and ModifierId = ZONE_GROUP_INFO_BY_ID

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
[in]ZoneIdZone ID.
[in]GroupIdReqID of requested group.
typedef void(* ZoneGroupInfo_by_id_response_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint8_t GroupId, uint8_t StateMachineGroupId, uint16_t NumberOfDevices, const uint8_t *Name, uint8_t StopTimeout, uint8_t RemoteStopTimeout)

Returns information of a group.

Select the group by group ID.

Response callback function prototype for call ZoneGroupInfo_by_id.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_RESPONSE, MessageId = ZONE_GROUP_INFO and ModifierId = ZONE_GROUP_INFO_BY_ID

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
[in]GroupIdGroup ID.
[in]StateMachineGroupIdDefines the behavior of buttons that are part of this group.
[in]NumberOfDevicesNumber of devices that are part of this group.
[in]NameThe name of this group (21 character, zero terminated string).
[in]StopTimeoutSTOP timeout based on this dSMs devices.
[in]RemoteStopTimeoutSTOP timeout set from remote via dSM-API.
typedef void(* ZoneGroupInfo_by_index_request_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t Index)

Returns information of a group.

Select the group by sequential index (0 based).

Request callback function prototype for call ZoneGroupInfo_by_index.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_REQUEST, MessageId = ZONE_GROUP_INFO and ModifierId = ZONE_GROUP_INFO_BY_INDEX

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
[in]ZoneIdZone ID.
[in]IndexIndex of requested group.
typedef void(* ZoneGroupInfo_by_index_response_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint8_t GroupId, uint8_t StateMachineGroupId, uint16_t NumberOfDevices, const uint8_t *Name, uint8_t StopTimeout, uint8_t RemoteStopTimeout)

Returns information of a group.

Select the group by sequential index (0 based).

Response callback function prototype for call ZoneGroupInfo_by_index.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_RESPONSE, MessageId = ZONE_GROUP_INFO and ModifierId = ZONE_GROUP_INFO_BY_INDEX

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
[in]GroupIdGroup ID.
[in]StateMachineGroupIdDefines the behavior of buttons that are part of this group.
[in]NumberOfDevicesNumber of devices that are part of this group.
[in]NameThe name of this group (21 character, zero terminated string).
[in]StopTimeoutSTOP timeout based on this dSMs devices.
[in]RemoteStopTimeoutSTOP timeout set from remote via dSM-API.
typedef void(* ZoneGroupModify_add_request_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupId, uint8_t StateMachineGroupId)

Add group to the given zone.

User groups have group IDs 16-63. The StateMachineGroupId defines the behavior of buttons that are part of this group.

Request callback function prototype for call ZoneGroupModify_add.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_REQUEST, MessageId = ZONE_GROUP_MODIFY and ModifierId = ZONE_GROUP_MODIFY_ADD

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
[in]ZoneIdZone ID.
[in]GroupIdGroup ID.
[in]StateMachineGroupId0=The dSM signals all button actions with EventDeviceAction_event_callback_t. 1-15=The button actions are handled according to this standard group's behavior.
typedef void(* ZoneGroupModify_add_response_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId)

Add group to the given zone.

User groups have group IDs 16-63. The StateMachineGroupId defines the behavior of buttons that are part of this group.

Response callback function prototype for call ZoneGroupModify_add.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_RESPONSE, MessageId = ZONE_GROUP_MODIFY and ModifierId = ZONE_GROUP_MODIFY_ADD

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
typedef void(* ZoneGroupModify_remove_request_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupId)

Remove a group from the given zone.

Standard groups (0-15) can not be removed.

Request callback function prototype for call ZoneGroupModify_remove.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_REQUEST, MessageId = ZONE_GROUP_MODIFY and ModifierId = ZONE_GROUP_MODIFY_REMOVE

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
[in]ZoneIdZone ID.
[in]GroupIdGroup ID.
typedef void(* ZoneGroupModify_remove_response_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId)

Remove a group from the given zone.

Standard groups (0-15) can not be removed.

Response callback function prototype for call ZoneGroupModify_remove.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_RESPONSE, MessageId = ZONE_GROUP_MODIFY and ModifierId = ZONE_GROUP_MODIFY_REMOVE

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
typedef void(* ZoneGroupProperties_set_name_request_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupId, const uint8_t *Name)

Set the name of a group.

Request callback function prototype for call ZoneGroupProperties_set_name.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_REQUEST, MessageId = ZONE_GROUP_PROPERTIES and ModifierId = ZONE_GROUP_PROPERTIES_SET_NAME

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
[in]ZoneIdZone ID.
[in]GroupIdGroup ID.
[in]NameThe new name of this group (21 character, zero terminated string).
typedef void(* ZoneGroupProperties_set_name_response_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId)

Set the name of a group.

Response callback function prototype for call ZoneGroupProperties_set_name.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_RESPONSE, MessageId = ZONE_GROUP_PROPERTIES and ModifierId = ZONE_GROUP_PROPERTIES_SET_NAME

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
typedef void(* ZoneGroupProperties_set_stop_timeout_request_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId, uint16_t ZoneId, uint8_t GroupId, uint8_t StopTimeout)

Set the STOP timeout of a group.

Request callback function prototype for call ZoneGroupProperties_set_stop_timeout.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_REQUEST, MessageId = ZONE_GROUP_PROPERTIES and ModifierId = ZONE_GROUP_PROPERTIES_SET_STOP_TIMEOUT

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call
[in]ZoneIdZone ID.
[in]GroupIdGroup ID.
[in]StopTimeoutThe new STOP timeout in [s].
typedef void(* ZoneGroupProperties_set_stop_timeout_response_callback_t)(uint8_t error_code, void *arg, dsid_t sourceId, dsid_t destinationId)

Set the STOP timeout of a group.

Response callback function prototype for call ZoneGroupProperties_set_stop_timeout.

To register this callback function, call the DsmApiSetCallback function with MessageType = DS485_CONTAINER_RESPONSE, MessageId = ZONE_GROUP_PROPERTIES and ModifierId = ZONE_GROUP_PROPERTIES_SET_STOP_TIMEOUT

Parameters:
[in]errorError result of the (potential) previous call.
[in]argUser data
[in]sourceIdSource address of the call
[in]destinationIdDestination address of the call

Function Documentation

int ZoneGroupInfo_by_id ( DsmApiHandle_t  handle,
dsid_t  dSMdSID,
uint16_t  ZoneId,
uint8_t  GroupIdReq,
uint8_t *  GroupId,
uint8_t *  StateMachineGroupId,
uint16_t *  NumberOfDevices,
uint8_t *  Name,
uint8_t *  StopTimeout,
uint8_t *  RemoteStopTimeout 
)

Returns information of a group.

Select the group by group ID.

This call has a timeout of 5 seconds.

To receive asynchronous responses to this call (e.g. when addressing broadcast) register the ZoneGroupInfo_by_id_response_callback_t callback. To receive this request from other bus members register the ZoneGroupInfo_by_id_request_callback_t callback.

Parameters:
[in]handleHandle to the library instance
[in]dSMdSIDDestination dSM of the call
[in]ZoneIdZone ID.
[in]GroupIdReqID of requested group.
[out]GroupIdGroup ID.
[out]StateMachineGroupIdDefines the behavior of buttons that are part of this group.
[out]NumberOfDevicesNumber of devices that are part of this group.
[out]NameThe name of this group (21 character, zero terminated string). (pass a reference to a preallocated buffer of at least 21 bytes.)
[out]StopTimeoutSTOP timeout based on this dSMs devices.
[out]RemoteStopTimeoutSTOP timeout set from remote via dSM-API.
Returns:
0: success (return parameters are valid); <0: Library error; >0: dSM error code
int ZoneGroupInfo_by_index ( DsmApiHandle_t  handle,
dsid_t  dSMdSID,
uint16_t  ZoneId,
uint8_t  Index,
uint8_t *  GroupId,
uint8_t *  StateMachineGroupId,
uint16_t *  NumberOfDevices,
uint8_t *  Name,
uint8_t *  StopTimeout,
uint8_t *  RemoteStopTimeout 
)

Returns information of a group.

Select the group by sequential index (0 based).

This call has a timeout of 5 seconds.

To receive asynchronous responses to this call (e.g. when addressing broadcast) register the ZoneGroupInfo_by_index_response_callback_t callback. To receive this request from other bus members register the ZoneGroupInfo_by_index_request_callback_t callback.

Parameters:
[in]handleHandle to the library instance
[in]dSMdSIDDestination dSM of the call
[in]ZoneIdZone ID.
[in]IndexIndex of requested group.
[out]GroupIdGroup ID.
[out]StateMachineGroupIdDefines the behavior of buttons that are part of this group.
[out]NumberOfDevicesNumber of devices that are part of this group.
[out]NameThe name of this group (21 character, zero terminated string). (pass a reference to a preallocated buffer of at least 21 bytes.)
[out]StopTimeoutSTOP timeout based on this dSMs devices.
[out]RemoteStopTimeoutSTOP timeout set from remote via dSM-API.
Returns:
0: success (return parameters are valid); <0: Library error; >0: dSM error code
int ZoneGroupModify_add ( DsmApiHandle_t  handle,
dsid_t  dSMdSID,
uint16_t  ZoneId,
uint8_t  GroupId,
uint8_t  StateMachineGroupId 
)

Add group to the given zone.

User groups have group IDs 16-63. The StateMachineGroupId defines the behavior of buttons that are part of this group.

This call has a timeout of 5 seconds.

To receive asynchronous responses to this call (e.g. when addressing broadcast) register the ZoneGroupModify_add_response_callback_t callback. To receive this request from other bus members register the ZoneGroupModify_add_request_callback_t callback.

Parameters:
[in]handleHandle to the library instance
[in]dSMdSIDDestination dSM of the call
[in]ZoneIdZone ID.
[in]GroupIdGroup ID.
[in]StateMachineGroupId0=The dSM signals all button actions with EventDeviceAction_event_callback_t. 1-15=The button actions are handled according to this standard group's behavior.
Returns:
0: success (return parameters are valid); <0: Library error; >0: dSM error code
int ZoneGroupModify_remove ( DsmApiHandle_t  handle,
dsid_t  dSMdSID,
uint16_t  ZoneId,
uint8_t  GroupId 
)

Remove a group from the given zone.

Standard groups (0-15) can not be removed.

This call has a timeout of 5 seconds.

To receive asynchronous responses to this call (e.g. when addressing broadcast) register the ZoneGroupModify_remove_response_callback_t callback. To receive this request from other bus members register the ZoneGroupModify_remove_request_callback_t callback.

Parameters:
[in]handleHandle to the library instance
[in]dSMdSIDDestination dSM of the call
[in]ZoneIdZone ID.
[in]GroupIdGroup ID.
Returns:
0: success (return parameters are valid); <0: Library error; >0: dSM error code
int ZoneGroupProperties_set_name ( DsmApiHandle_t  handle,
dsid_t  dSMdSID,
uint16_t  ZoneId,
uint8_t  GroupId,
const uint8_t *  Name 
)

Set the name of a group.

This call has a timeout of 5 seconds.

To receive asynchronous responses to this call (e.g. when addressing broadcast) register the ZoneGroupProperties_set_name_response_callback_t callback. To receive this request from other bus members register the ZoneGroupProperties_set_name_request_callback_t callback.

Parameters:
[in]handleHandle to the library instance
[in]dSMdSIDDestination dSM of the call
[in]ZoneIdZone ID.
[in]GroupIdGroup ID.
[in]NameThe new name of this group (21 character, zero terminated string).
Returns:
0: success (return parameters are valid); <0: Library error; >0: dSM error code
int ZoneGroupProperties_set_stop_timeout ( DsmApiHandle_t  handle,
dsid_t  dSMdSID,
uint16_t  ZoneId,
uint8_t  GroupId,
uint8_t  StopTimeout 
)

Set the STOP timeout of a group.

This call has a timeout of 5 seconds.

To receive asynchronous responses to this call (e.g. when addressing broadcast) register the ZoneGroupProperties_set_stop_timeout_response_callback_t callback. To receive this request from other bus members register the ZoneGroupProperties_set_stop_timeout_request_callback_t callback.

Parameters:
[in]handleHandle to the library instance
[in]dSMdSIDDestination dSM of the call
[in]ZoneIdZone ID.
[in]GroupIdGroup ID.
[in]StopTimeoutThe new STOP timeout in [s].
Returns:
0: success (return parameters are valid); <0: Library error; >0: dSM error code
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines