Mesh: Add Node Reset API in FRWK
[platform/core/connectivity/bluetooth-frwk.git] / bt-service / services / include / bt-service-mesh-config-client.h
1 /*
2  * Bluetooth-frwk
3  *
4  * Copyright (c) 2020 Samsung Electronics Co., Ltd.
5  *
6  * @author: Anupam Roy <anupam.r@samsung.com>
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *              http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  */
21
22 #ifndef BT_SERVICE_MESH_CONFIG_CLIENT_H_
23 #define BT_SERVICE_MESH_CONFIG_CLIENT_H_
24
25 #include <glib.h>
26 #include <sys/types.h>
27 #include "bluetooth-api.h"
28 #include "bluetooth-mesh-api.h"
29 #include <json-c/json.h>
30 #include "oal-mesh.h"
31
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35
36 int _bt_mesh_node_discover_vendor_features(const char *app_cred,
37                 const char *sender,
38                         bluetooth_mesh_node_features_t *req);
39
40 int _bt_mesh_browse_remote_node(const char *app_cred,
41                 const char *sender,
42                         bluetooth_mesh_node_discover_t *req);
43
44 int _bt_mesh_network_reset_node(const char *app_cred, const char *sender,
45                 bluetooth_mesh_node_info_t *node);
46
47 bool _bt_mesh_check_pending_request(uint32_t opcode,
48                 uint16_t dest, uint8_t net_uuid[]);
49
50 void _bt_mesh_config_client_devkey_msg_handler(
51                 event_mesh_devkey_message_t *event);
52
53 int _bt_mesh_node_configure_key(const char *app_cred,
54                 const char *sender,
55                         bluetooth_mesh_key_configure_t *req);
56
57 int _bt_mesh_ttl_execute_remote_node(const char *app_cred,
58                 const char *sender,
59                         bluetooth_mesh_node_ttl_info_t *req);
60
61 int _bt_mesh_node_model_appkey_execute(const char *app_cred,
62                 const char *sender,
63                         bluetooth_mesh_model_configure_t *req);
64
65 int _bt_mesh_node_model_get_appkey_list(const char *app_cred,
66                 const char *sender,
67                         bluetooth_mesh_model_configure_t *req);
68
69 int _bt_mesh_node_model_get_subscription_list(const char *app_cred,
70                 const char *sender,
71                         bluetooth_mesh_model_configure_t *req);
72
73 int _bt_mesh_model_configure_group_subscription(const char *app_cred,
74                 const char *sender,
75                         bluetooth_mesh_model_configure_t *req);
76
77 int _bt_mesh_model_configure_virtual_group_subscription(const char *app_cred,
78                 const char *sender,
79                         bluetooth_mesh_model_configure_t *req);
80
81 int _bt_mesh_model_set_publication(const char *app_cred,
82                 const char *sender,
83                         bluetooth_mesh_model_configure_t *req);
84
85 int _bt_mesh_model_get_publication(const char *app_cred,
86                 const char *sender,
87                         bluetooth_mesh_model_configure_t *req);
88
89 #ifdef __cplusplus
90 }
91 #endif /* __cplusplus */
92 #endif /* BT_SERVICE_MESH_CONFIG_CLIENT_H_ */