2 * Copyright (c) 2016 Samsung Electronics Co., Ltd. All rights reserved.
4 * Contact: Suresh Kumar N (suresh.n@samsung.com)
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
19 #ifndef __ZIGBEE_SERVICE_TYPE_H__
20 #define __ZIGBEE_SERVICE_TYPE_H__
22 #include <zigbee_types.h>
24 /* --------------------------------------------------------------------------------------
26 * -------------------------------------------------------------------------------------*/
28 * @brief Definition for service coex start structure.
32 char channel; /**< Channel */
33 } ZigbeeServiceCoexStart_t;
36 * @brief Definition for service permit join structure.
40 char permit_join; /* 1 - Allow, 0 - Disallow */
41 int duration; /**< Duration */
42 } ZigbeeServicePermitJoin_t;
45 * @brief Definition for service leave request structure.
49 char eui64[ZIGBEE_EUI64_SIZE]; /**< EUI64 (an IEEE address) */
50 char remove_child; /* Remove child */
51 char rejoin; /**< Re-join */
52 } ZigbeeServiceLeaveRequest_t;
55 * @brief Definition for service get endpoint list structure.
59 char eui64[ZIGBEE_EUI64_SIZE]; /**< EUI64 (an IEEE address) */
60 } ZigbeeServiceGetEndpointList_t;
63 * @brief Definition for service get cluster list structure.
67 char eui64[ZIGBEE_EUI64_SIZE]; /**< EUI64 (an IEEE address) */
68 char endpoint; /**< Endpoint */
69 } ZigbeeServiceGetClusterList_t;
72 * @brief Definition for service get node type structure.
76 char eui64[ZIGBEE_EUI64_SIZE]; /**< EUI64 (an IEEE address) */
77 } ZigbeeServiceGetNodeType_t;
79 /* --------------------------------------------------------------------------------------
81 * -------------------------------------------------------------------------------------*/
83 * @brief Definition for get network info structure.
87 char eui64[ZIGBEE_EUI64_SIZE]; /**< EUI64 (an IEEE address) */
88 short node_id; /**< Node ID (an Network address) */
89 short pan_id; /**< PAN ID (an Network address) */
90 char channel; /**< Channel number */
91 char radio_tx_power; /**< Power (dBm) */
92 } ZigbeeServiceGetNetworkInfo_t;
94 /* --------------------------------------------------------------------------------------
96 * -------------------------------------------------------------------------------------*/
99 * @brief Definition for service 'enabled' response.
103 char enabled; /**< Enabled / Disabled result */
104 } ZigbeeServiceServiceState_t;
107 * @brief Definition for service 'form_network_done' response.
111 short pan_id; /**< PAN ID */
112 } ZigbeeServiceServiceFormNetworkDone_t;
115 * @brief Definition for service 'child_rejoind' response.
119 char eui64[ZIGBEE_EUI64_SIZE]; /**< EUI64 (an IEEE address) */
120 } ZigbeeServiceServiceChildRejoined_t;
123 * @brief Definition for service 'child_reft' response.
127 char eui64[ZIGBEE_EUI64_SIZE]; /**< EUI64 (an IEEE address) */
128 char status; /**< status */
129 } ZigbeeServiceServiceChildLeft_t;
132 * @brief Definition for service 'leave_network_done' response.
136 short pan_id; /**< PAN ID */
137 } ZigbeeServiceServiceLeaveNetworkDone_t;
140 * @brief Definition for service 'get_node_type' response.
144 char node_type; /**< Node Type */
145 } ZigbeeServiceServiceNodeType_t;
149 #endif /* __ZIGBEE_SERVICE_TYPE_H__ */