1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
/*
* Copyright (c) 2017 Samsung Electronics Co., Ltd.
*
* Contact: Jin Yoon <jinny.yoon@samsung.com>
* Geunsun Lee <gs86.lee@samsung.com>
* Eunyoung Lee <ey928.lee@samsung.com>
* Junkyu Han <junkyu.han@samsung.com>
* Jeonghoon Park <jh1979.park@samsung.com>
*
* Licensed under the Flora License, Version 1.1 (the License);
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://floralicense.org/license/
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an AS IS BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef __POSITION_FINDER_WEBUTIL_H__
#define __POSITION_FINDER_WEBUTIL_H__
typedef enum {
WEB_UTIL_SENSOR_NONE = 0,
WEB_UTIL_SENSOR_MOTION = (1 << 0), /* IR motion sensor */
WEB_UTIL_SENSOR_FLAME = (1 << 1), /* flame sensor */
WEB_UTIL_SENSOR_HUMIDITY = (1 << 2), /* humidity sensor */
WEB_UTIL_SENSOR_TEMPERATURE = (1 << 3), /* temperature sensor */
WEB_UTIL_SENSOR_VIB = (1 << 4), /* vibration sensor */
WEB_UTIL_SENSOR_CO2 = (1 << 5), /* CO2 sensor */
WEB_UTIL_SENSOR_SOUND = (1 << 6), /* noise sensor */
WEB_UTIL_SENSOR_TILT = (1 << 7), /* tilt sensor */
WEB_UTIL_SENSOR_LIGHT = (1 << 8), /* light sensor */
WEB_UTIL_SENSOR_COLLISION = (1 << 9), /* collision sensor */
WEB_UTIL_SENSOR_OBSTACLE = (1 << 10), /* obstacle avoidance sensor */
WEB_UTIL_SENSOR_ULTRASONIC_DISTANCE = (1 << 11), /* ultrasonic distance sensor */
WEB_UTIL_SENSOR_RAIN = (1 << 12), /* rain sensor */
WEB_UTIL_SENSOR_TOUCH = (1 << 13), /* touch sensor */
WEB_UTIL_SENSOR_GAS = (1 << 14), /* gas sensor */
} web_util_sensor_type_e;
typedef struct _web_util_sensor_data_s web_util_sensor_data_s;
struct _web_util_sensor_data_s {
int motion;
int flame;
double humidity;
double temperature;
int virbration;
double co2;
int soundlevel;
int tilt;
int light;
int collision;
int obstacle;
double distance;
int rain;
int touch;
int gas;
web_util_sensor_type_e enabled_sensor;
char *hash;
};
int web_util_noti_init(void);
void web_util_noti_fini(void);
int web_util_noti_post(const char *resource, const char *json_data);
int web_util_noti_get(const char *resource, char **res);
int web_util_json_init(void);
int web_util_json_fini(void);
int web_util_json_begin(void);
int web_util_json_end(void);
int web_util_json_data_array_begin(void);
int web_util_json_data_array_end(void);
int web_util_json_add_int(const char* key, long long int value);
int web_util_json_add_double(const char* key, double value);
int web_util_json_add_boolean(const char* key, bool value);
int web_util_json_add_string(const char* key, const char *value);
int web_util_json_add_sensor_data(const char* sensorpi_id, web_util_sensor_data_s *sensor_data);
char *web_util_get_json_string(void);
#endif /* __POSITION_FINDER_WEBUTIL_H__ */
|