/************************************************************************************************** * Copyright (c) Fenda Technologies Co., Ltd. 2020-2021. All rights reserved. * Description: 天气接口函数 * Author: ball.caojianguang * Create: 2020-6-4 ************************************************************************************************/ #ifndef _USER_WEATHER_SERVER_H_ #define _USER_WEATHER_SERVER_H_ #include #include "ble_protocol.h" #define WEATHER_TEMP_NUM_MAX 5 //4.16.1 App 下发实时和预报天气 enum { LOCATE_NAME_TYPE = 0x01, UPDATE_TIME_TYPE, NOW_TEMPER_TYPE, NOW_WEATHER_ICON_TYPE = 0x31, NOW_WEATHER_TEXT_TYPE, FORECAST_ITEM_LEN_TYPE = 0xFE, FORECAST_ITEM_TIME_TYPE = 0x04, FORECAST_ITEM_WEATHER_ICON_TYPE, FORECAST_ITEM_WEATHER_TEXT_TYPE = 0x0A, FORECAST_ITEM_AQI_TYPE = 0x06, FORECAST_ITEM_AQI_TEXT_TYPE, FORECAST_ITEM_TEMPER_MAX_TYPE, FORECAST_ITEM_TEMPER_MIN_TYPE, WEARTHER_TYPE_MAX, }; //4.16.2 设备通知 App 更新天气 enum { UPDATE_WEARTHER_TYPE = 0x01, UPDATE_WEARTHER_TYPE_MAX, }; //实况风力枚举量 enum { RT_WIND_SCALE_ZERO = 1, //0级 RT_WIND_SCALE_ONE, RT_WIND_SCALE_TWO, RT_WIND_SCALE_THREE, RT_WIND_SCALE_FOUR, RT_WIND_SCALE_FIVE, RT_WIND_SCALE_SIX, RT_WIND_SCALE_SEVEN, RT_WIND_SCALE_EIGHT, RT_WIND_SCALE_NINE, RT_WIND_SCALE_TEN, RT_WIND_SCALE_ELEVEN, RT_WIND_SCALE_TWELVE, RT_WIND_SCALE_THIRTEEN, RT_WIND_SCALE_FOURTEEN, RT_WIND_SCALE_FIFTEEN, RT_WIND_SCALE_SIXTEEN, RT_WIND_SCALE_SEVENTEEN, RT_WIND_SCALE_EIGHTEEN, RT_WIND_SCALE_MAX, }; //预报风力枚举量 enum { FORECAST_WIND_SCALE_ONE = 1, //1级 FORECAST_WIND_SCALE_TWO, FORECAST_WIND_SCALE_THREE, FORECAST_WIND_SCALE_FOUR, FORECAST_WIND_SCALE_FIVE, //5级 FORECAST_WIND_SCALE_SIX, FORECAST_WIND_SCALE_SEVEN, FORECAST_WIND_SCALE_EIGHT, FORECAST_WIND_SCALE_NINE, FORECAST_WIND_SCALE_TEN, //10级 FORECAST_WIND_SCALE_MAX, }; //风向枚举量 enum { NORTHEAST = 1, EAST, SOUTHEAST, SOUTH, SOUTHWEST, WEST, NORTHWEST, NORTH, }; //APP 设置天气开关 enum { WeatherSwitchType = 0x01, WeatherTemperatureUnitType, weather_switch_type_max, }; /******************************** * 天气--4.16 命令ID **********************************/ enum { APP_distribution_RT_weather_ID = 0x01, DVE_req_weather_ID, APP_set_weather_switch, WEATHER_SERVERE_MAX_ID = 6, }; void BleDistributeRTAndForecastWeather(uint8_t *in_data, uint16_t in_len, uint8_t *out_data, uint16_t *out_len); void BLE_DeviceNotifyAppUpdateweather(void); void BleAppSetWeatherSwitch(uint8_t *in_data, uint16_t in_len, uint8_t *out_data, uint16_t *out_len); extern const p_func_t WeatherServerFunc[WEATHER_SERVERE_MAX_ID]; #endif