Tasmota/lib/libesp32_div/ESP32-HomeKit/src/hap_apple_chars.h
2021-03-17 13:33:55 +01:00

1426 lines
55 KiB
C
Executable File

/*
* ESPRESSIF MIT License
*
* Copyright (c) 2020 <ESPRESSIF SYSTEMS (SHANGHAI) PTE LTD>
*
* Permission is hereby granted for use on ESPRESSIF SYSTEMS products only, in which case,
* it is free of charge, to any person obtaining a copy of this software and associated
* documentation files (the "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the Software is furnished
* to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all copies or
* substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
*/
/** HAP Apple Characteristics
*
* This offers helper APIs for all the standard HomeKit Characteristics defined by Apple
*/
#ifndef _HAP_APPLE_CHARS_H_
#define _HAP_APPLE_CHARS_H_
#include <stdint.h>
#include <stdbool.h>
#include <hap.h>
#ifdef __cplusplus
extern "C" {
#endif
#define HAP_CHAR_UUID_ADMINISTRATOR_ONLY_ACCESS "1"
#define HAP_CHAR_UUID_BRIGHTNESS "8"
#define HAP_CHAR_UUID_COOLING_THRESHOLD_TEMPERATURE "D"
#define HAP_CHAR_UUID_CURRENT_DOOR_STATE "E"
#define HAP_CHAR_UUID_CURRENT_HEATING_COOLING_STATE "F"
#define HAP_CHAR_UUID_CURRENT_RELATIVE_HUMIDITY "10"
#define HAP_CHAR_UUID_CURRENT_TEMPERATURE "11"
#define HAP_CHAR_UUID_FIRMWARE_REVISION "52"
#define HAP_CHAR_UUID_HARDWARE_REVISION "53"
#define HAP_CHAR_UUID_HEATING_THRESHOLD_TEMPERATURE "12"
#define HAP_CHAR_UUID_HUE "13"
#define HAP_CHAR_UUID_IDENTIFY "14"
#define HAP_CHAR_UUID_LOCK_CONTROL_POINT "19"
#define HAP_CHAR_UUID_LOCK_CURRENT_STATE "1D"
#define HAP_CHAR_UUID_LOCK_LAST_KNOWN_ACTION "1C"
#define HAP_CHAR_UUID_LOCK_MANAGEMENT_AUTO_SECURITY_TIMEOUT "1A"
#define HAP_CHAR_UUID_LOCK_TARGET_STATE "1E"
#define HAP_CHAR_UUID_LOGS "1F"
#define HAP_CHAR_UUID_MANUFACTURER "20"
#define HAP_CHAR_UUID_MODEL "21"
#define HAP_CHAR_UUID_MOTION_DETECTED "22"
#define HAP_CHAR_UUID_NAME "23"
#define HAP_CHAR_UUID_OBSTRUCTION_DETECTED "24"
#define HAP_CHAR_UUID_ON "25"
#define HAP_CHAR_UUID_OUTLET_IN_USE "26"
#define HAP_CHAR_UUID_ROTATION_DIRECTION "28"
#define HAP_CHAR_UUID_ROTATION_SPEED "29"
#define HAP_CHAR_UUID_SATURATION "2F"
#define HAP_CHAR_UUID_SERIAL_NUMBER "30"
#define HAP_CHAR_UUID_TARGET_DOOR_STATE "32"
#define HAP_CHAR_UUID_TARGET_HEATING_COOLING_STATE "33"
#define HAP_CHAR_UUID_TARGET_RELATIVE_HUMIDITY "34"
#define HAP_CHAR_UUID_TARGET_TEMPERATURE "35"
#define HAP_CHAR_UUID_TEMPERATURE_DISPLAY_UNITS "36"
#define HAP_CHAR_UUID_VERSION "37"
#define HAP_CHAR_UUID_AIR_PARTICULATE_DENSITY "64"
#define HAP_CHAR_UUID_AIR_PARTICULATE_SIZE "65"
#define HAP_CHAR_UUID_SECURITY_SYSTEM_CURRENT_STATE "66"
#define HAP_CHAR_UUID_SECURITY_SYSTEM_TARGET_STATE "67"
#define HAP_CHAR_UUID_BATTERY_LEVEL "68"
#define HAP_CHAR_UUID_CARBON_MONOXIDE_DETECTED "69"
#define HAP_CHAR_UUID_CONTACT_SENSOR_STATE "6A"
#define HAP_CHAR_UUID_CURRENT_AMBIENT_LIGHT_LEVEL "6B"
#define HAP_CHAR_UUID_CURRENT_HORIZONTAL_TILT_ANGLE "6C"
#define HAP_CHAR_UUID_CURRENT_POSITION "6D"
#define HAP_CHAR_UUID_CURRENT_VERTICAL_TILT_ANGLE "6E"
#define HAP_CHAR_UUID_HOLD_POSITION "6F"
#define HAP_CHAR_UUID_LEAK_DETECTED "70"
#define HAP_CHAR_UUID_OCCUPANCY_DETECTED "71"
#define HAP_CHAR_UUID_POSITION_STATE "72"
#define HAP_CHAR_UUID_PROGRAMMABLE_SWITCH_EVENT "73"
#define HAP_CHAR_UUID_STATUS_ACTIVE "75"
#define HAP_CHAR_UUID_SMOKE_DETECTED "76"
#define HAP_CHAR_UUID_STATUS_FAULT "77"
#define HAP_CHAR_UUID_STATUS_JAMMED "78"
#define HAP_CHAR_UUID_STATUS_LOW_BATTERY "79"
#define HAP_CHAR_UUID_STATUS_TAMPERED "7A"
#define HAP_CHAR_UUID_TARGET_HORIZONTAL_TILT_ANGLE "7B"
#define HAP_CHAR_UUID_TARGET_POSITION "7C"
#define HAP_CHAR_UUID_TARGET_VERTICAL_TILT_ANGLE "7D"
#define HAP_CHAR_UUID_STATUS_SECURITY_SYSTEM_ALARM_TYPE "8E"
#define HAP_CHAR_UUID_CHARGING_STATE "8F"
#define HAP_CHAR_UUID_CARBON_MONOXIDE_LEVEL "90"
#define HAP_CHAR_UUID_CARBON_MONOXIDE_PEAK_LEVEL "91"
#define HAP_CHAR_UUID_CARBON_DIOXIDE_DETECTED "92"
#define HAP_CHAR_UUID_CARBON_DIOXIDE_LEVEL "93"
#define HAP_CHAR_UUID_CARBON_DIOXIDE_PEAK_LEVEL "94"
#define HAP_CHAR_UUID_AIR_QUALITY "95"
#define HAP_CHAR_UUID_ACCESSORY_FLAGS "A6"
#define HAP_CHAR_UUID_LOCK_PHYSICAL_CONTROLS "A7"
#define HAP_CHAR_UUID_CURRENT_AIR_PURIFIER_STATE "A9"
#define HAP_CHAR_UUID_CURRENT_SLAT_STATE "AA"
#define HAP_CHAR_UUID_SLAT_TYPE "C0"
#define HAP_CHAR_UUID_FILTER_LIFE_LEVEL "AB"
#define HAP_CHAR_UUID_FILTER_CHANGE_INDICATION "AC"
#define HAP_CHAR_UUID_RESET_FILTER_INDICATION "AD"
#define HAP_CHAR_UUID_TARGET_AIR_PURIFIER_STATE "A8"
#define HAP_CHAR_UUID_TARGET_FAN_STATE "BF"
#define HAP_CHAR_UUID_CURRENT_FAN_STATE "AF"
#define HAP_CHAR_UUID_ACTIVE "B0"
#define HAP_CHAR_UUID_SWING_MODE "B6"
#define HAP_CHAR_UUID_CURRENT_TILT_ANGLE "C1"
#define HAP_CHAR_UUID_TARGET_TILT_ANGLE "C2"
#define HAP_CHAR_UUID_OZONE_DENSITY "C3"
#define HAP_CHAR_UUID_NITROGEN_DIOXIDE_DENSITY "C4"
#define HAP_CHAR_UUID_SULPHUR_DIOXIDE_DENSITY "C5"
#define HAP_CHAR_UUID_PM_2_5_DENSITY "C6"
#define HAP_CHAR_UUID_PM_10_DENSITY "C7"
#define HAP_CHAR_UUID_VOC_DENSITY "C8"
#define HAP_CHAR_UUID_SERVICE_LABEL_INDEX "CB"
#define HAP_CHAR_UUID_SERVICE_LABEL_NAMESPACE "CD"
#define HAP_CHAR_UUID_COLOR_TEMPERATURE "CE"
#define HAP_CHAR_UUID_CURRENT_HEATER_COOLER_STATE "B1"
#define HAP_CHAR_UUID_TARGET_HEATER_COOLER_STATE "B2"
#define HAP_CHAR_UUID_CURRENT_HUMIDIFIER_DEHUMIDIFIER_STATE "B3"
#define HAP_CHAR_UUID_TARGET_HUMIDIFIER_DEHUMIDIFIER_STATE "B4"
#define HAP_CHAR_UUID_WATER_LEVEL "B5"
#define HAP_CHAR_UUID_RELATIVE_HUMIDITY_DEHUMIDIFIER_THRESHOLD "C9"
#define HAP_CHAR_UUID_RELATIVE_HUMIDITY_HUMIDIFIER_THRESHOLD "CA"
#define HAP_CHAR_UUID_PROGRAM_MODE "D1"
#define HAP_CHAR_UUID_IN_USE "D2"
#define HAP_CHAR_UUID_SET_DURATION "D3"
#define HAP_CHAR_UUID_REMAINING_DURATION "D4"
#define HAP_CHAR_UUID_VALVE_TYPE "D5"
#define HAP_CHAR_UUID_IS_CONFIGURED "D6"
#define HAP_CHAR_UUID_WATTAGE "DC"
#define HAP_CHAR_UUID_PRODUCT_DATA "220"
/** Create Brightness Characteristic
*
* This API creates the Brightness characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] brightness Initial value of brightness
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_brightness_create(int brightness);
/** Cooling Threshold Temperature Characteristic
*
* This API creates the Cooling Threshold Temperature characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] cooling_threshold_temp Cooling Threshold Value of Cooling Threshold Temperature characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_cooling_threshold_temperature_create(float cooling_threshold_temp);
/** Create Current Door State Characteristic
*
* This API creates the Current Door State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_door_state Initial value of Current Door State
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_door_state_create(uint8_t curr_door_state);
/** Create Current Heating Cooling State Characteristic
*
* This API creates the Current Heating Cooling State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_heating_cooling_state Initial value of current heating cooling state characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_heating_cooling_state_create(uint8_t curr_heating_cooling_state);
/** Current Relative Humidity Characteristic
*
* This API creates the Current Relative Humidity characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_rel_humidity Current Relative Humidity Value
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_relative_humidity_create(float curr_rel_humidity);
/** Current Temperature Characteristic
*
* This API creates the Current Temperature characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_temp Initial value of current temperature characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_temperature_create(float curr_temp);
/** Create Firmware Revision Characteristic
*
* This API creates the firmware revision characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] fw_rev Firmware Revision string
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_firmware_revision_create(char *fw_rev);
/** Create Hardware Revision Characteristic
*
* This API creates the name characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] hw_rev Hardware Revision string
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_hardware_revision_create(char *hw_rev);
/** Heating Threshold Temperature Characteristic
*
* This API creates the Heating Threshold Temperature characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] heating_threshold_temp Heating Threshold Value of Heating Threshold Temperature characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_heating_threshold_temperature_create(float heating_threshold_temp);
/** Create Hue Characteristic
*
* This API creates the hue characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] hue Initial value of hue
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_hue_create(float hue);
/** Create Identify Characteristic
*
* This API creates the Identify characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_identify_create(void);
/** Lock Current State Characteristic
*
* This API creates the Lock Current State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] lock_curr_state Current lock state value of characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_lock_current_state_create(uint8_t lock_curr_state);
/** Lock Target State Characteristic
*
* This API creates the Lock Target State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] lock_targ_state Target lock state value of characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_lock_target_state_create(uint8_t lock_targ_state);
/** Create Manufacturer Characteristic
*
* This API creates the Manufacturer characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] manufacturer Manufacturer string
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_manufacturer_create(char *manufacturer);
/** Create Model Characteristic
*
* This API creates the Model characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] model Model string
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_model_create(char *model);
/** Create Motion Detected Characteristic
*
* This API creates the Motion Detected characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] motion_detected Value of Motion Detected Charateristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_motion_detected_create(bool motion_detected);
/** Create Name Characteristic
*
* This API creates the Name characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] name Name string
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_name_create(char *name);
/** Create Obstruction Detected Characteristic
*
* This API creates the Obstruction Detected characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] obstr_detect Initial value of obstruction detected characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_obstruction_detect_create(bool obstr_detect);
/** Create On Characteristic
*
* This API creates the On characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] on Initial value of on
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_on_create(bool on);
/** Create Outlet in Use Characteristic
*
* This API creates the Outlet in Use characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] outlet_in_use Initial value of outlet in use
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_outlet_in_use_create(bool outlet_in_use);
/** Create Rotation Direction Characteristic
*
* This API creates the Rotation Direction characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] rotation_direction Initial value of Rotation Direction
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_rotation_direction_create(int rotation_direction);
/** Create Rotation Speed Characteristic
*
* This API creates the Rotation Speed characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] rotation_speed Initial value of Rotation Speed
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_rotation_speed_create(float rotation_speed);
/** Create Saturation Characteristic
*
* This API creates the saturation characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] saturation Initial value of saturation
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_saturation_create(float saturation);
/** Create Serial Number Characteristic
*
* This API creates the serial number characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] serial_num Serial Number string
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_serial_number_create(char *serial_num);
/** Create Target Door State Characteristic
*
* This API creates the Target Door State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_door_state Initial value of Target Door State
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_door_state_create(uint8_t targ_door_state);
/** Create Target Heating Cooling State Characteristic
*
* This API creates the Target Heating Cooling State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_heating_cooling_state Value of target heating cooling state characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_heating_cooling_state_create(uint8_t targ_heating_cooling_state);
/** Target Relative Humidity Characteristic
*
* This API creates the Target Relative Humidity characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_rel_humidity Target Relative Humidity Value
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_relative_humidity_create(float targ_rel_humidity);
/** Target Temperature Characteristic
*
* This API creates the Target Temperature characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_temp Target value of target temperature characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_temperature_create(float targ_temp);
/** Temperature Display Units Characteristic
*
* This API creates the Temperature Display Units characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] temp_disp_units Initial value of Temperature Display Units characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_temperature_display_units_create(uint8_t temp_disp_units);
/** Create Version Characteristic
*
* This API creates the version characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] version Version String
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_version_create(char *version);
/** Create Security System Current State Characteristic
*
* This API creates the Security System Current State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] security_sys_curr_state Initial value of Security System Current State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_security_system_current_state_create(uint8_t security_sys_curr_state);
/** Create Security System Target State Characteristic
*
* This API creates the Security System Target State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] security_sys_targ_state Initial value of Security System Target State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_security_system_target_state_create(uint8_t security_sys_targ_state);
/** Create Battery Level Characteristic
*
* This API creates the Battery Level characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] battery_level Initial value of Battery Level characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_battery_level_create(uint8_t battery_level);
/** Current Position Characteristic
*
* This API creates the Current Position characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_pos Initial value of Cuurent Position characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_position_create(uint8_t curr_pos);
/** Current Vertical Tilt Angle Characteristic
*
* This API creates the Current Vertical Tilt Angle characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_vert_tilt_angle Initial value of Current Vertical Tilt Angle characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_vertical_tilt_angle_create(int curr_vert_tilt_angle);
/** Hold Position Characteristic
*
* This API creates the Hold Position characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] hold_pos Initial value of Hold Position characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_hold_position_create(bool hold_pos);
/** Leak Detected Characteristic
*
* This API creates the Leak Detected characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] leak_detected Initial value of Leak Detected characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_leak_detected_create(uint8_t leak_detected);
/** Occupancy Detected Characteristic
*
* This API creates the Occupancy Detected characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] occupancy_detected Initial value of Occupancy Detected characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_occupancy_detected_create(uint8_t occupancy_detected);
/** Status Active Characteristic
*
* This API creates the Status Active characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] status_active Initial value of Status Active characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_status_active_create(bool status_active);
/** Smoke Detected Characteristic
*
* This API creates the Smoke Detected characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] smoke_detected Initial value of Smoke Detected characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_smoke_detected_create(uint8_t smoke_detected);
/** Status Fault Characteristic
*
* This API creates the Status Fault characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] status_fault Initial value of Status Fault characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_status_fault_create(uint8_t status_fault);
/** Status Low Battery Characteristic
*
* This API creates the Status Low Battery characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] status_low_battery Initial value of Status Low Battery characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_status_low_battery_create(uint8_t status_low_battery);
/** Status Tampered Characteristic
*
* This API creates the Status Tampered characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] status_tampered Initial value of Status Tampered characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_status_tampered_create(uint8_t status_tampered);
/** Target Horizontal Tilt Angle Characteristic
*
* This API creates the Target Horizontal Tilt Angle characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_horiz_tilt_angle Initial value of Target Horizontal Tilt Angle characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_horizontal_tilt_angle_create(int targ_horiz_tilt_angle);
/** Target Position Characteristic
*
* This API creates the Target Position characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_pos Initial value of Target Position characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_position_create(uint8_t targ_pos);
/** Target Vertical Tilt Angle Characteristic
*
* This API creates the Target Vertical Tilt Angle characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_vert_tilt_angle Initial value of Target Vertical Tilt Angle characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_vertical_tilt_angle_create(int targ_vert_tilt_angle);
/** Security System Alarm Type Characteristic
*
* This API creates the Security System Alarm Type characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] security_sys_alarm_type Initial value of Security System Alarm Type characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_security_system_alarm_type_create(uint8_t security_sys_alarm_type);
/** Charging State Characteristic
*
* This API creates the Charging State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] charging_state Charging State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_charging_state_create(uint8_t charging_state);
/** Carbon Monoxide Level Characteristic
*
* This API creates the Carbon Monoxide Level characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] carbon_monoxide_level Initial value of Carbon Monoxide Level characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_carbon_monoxide_level_create(float carbon_monoxide_level);
/** Carbon Monoxide Peak Level Characteristic
*
* This API creates the Carbon Monoxide Peak Level characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] carbon_monoxide_peak_level Initial value of Carbon Monoxide Peak Level characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_carbon_monoxide_peak_level_create(float carbon_monoxide_peak_level);
/** Carbon Dioxide Detected Characteristic
*
* This API creates the Carbon Dioxide Detected characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] carbon_dioxide_detected Initial value of Carbon Dioxide Detected characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_carbon_dioxide_detected_create(uint8_t carbon_dioxide_detected);
/** Carbon Dioxide Level Characteristic
*
* This API creates the Carbon Dioxide Level characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] carbon_dioxide_level Initial value of Carbon Dioxide Level characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_carbon_dioxide_level_create(float carbon_dioxide_level);
/** Carbon Dioxide Peak Level Characteristic
*
* This API creates the Carbon Dioxide Peak Level characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] carbon_dioxide_peak_level Initial value of Carbon Dioxide Peak Level characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_carbon_dioxide_peak_level_create(float carbon_dioxide_peak_level);
/** Carbon Monoxide Detected Characteristic
*
* This API creates the Carbon Monoxide Detected characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] carbon_monoxide_detected Initial value of Carbon Monoxide Detected characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_carbon_monoxide_detected_create(uint8_t carbon_monoxide_detected);
/** Contact Sensor State Characteristic
*
* This API creates the Contact Sensor State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] contact_sensor_state Initial value of Contact Sensor State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_contact_sensor_state_create(uint8_t contact_sensor_state);
/** Current Ambient Light Level Characteristic
*
* This API creates the Current Ambient Light Level characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_ambient_light_level Initial value of Current Ambient Light Level characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_ambient_light_level_create(float curr_ambient_light_level);
/** Current Horizontal Tilt Angle Characteristic
*
* This API creates the Current Horizontal Tilt Angle characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_horiz_tilt_angle Initial value of Current Horizontal Tilt Angle characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_horizontal_tilt_angle_create(int curr_horiz_tilt_angle);
/** Air Quality Characteristic
*
* This API creates the Air Quality characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] air_quality Initial value of Air Quality characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_air_quality_create(uint8_t air_quality);
/** Create Accessory Flags Characteristic
*
* This API creates the Accessory Flags characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] flags Initial value of flags
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_accessory_flags_create(uint32_t flags);
/** Create Product Data Characteristic
*
* This API creates the Product Data characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] product_data Value of the product data
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_product_data_create(hap_data_val_t *product_data);
/** Create Lock Physical Controls Characteristic
*
* This API creates the Lock Physical Controls characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] lock_physical_controls Initial value of Lock Physical Controls characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_lock_physical_controls_create(uint8_t lock_physical_controls);
/** Current Air Purifier State Characteristic
*
* This API creates the Current Air Purifier State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_air_purifier_state Initial value of Current Air Purifier State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_air_purifier_state_create(uint8_t curr_air_purifier_state);
/** Current Slat State Characteristic
*
* This API creates the Current Slat State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_slat_state Initial value of Current Slat State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_slat_state_create(uint8_t curr_slat_state);
/** Slat Type Characteristic
*
* This API creates the Slat Type characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] slat_type Value of Slat Type characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_slat_type_create(uint8_t slat_type);
/** Filter Life Level Characteristic
*
* This API creates the Filter Life Level characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] filter_life_level Initial value of Filter Life Level characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_filter_life_level_create(float filter_life_level);
/** Current Filter Change Indication Characteristic
*
* This API creates the Filter Change Indication characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] filter_change_indication Initial value of Filter Change Indication characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_filter_change_indication_create(uint8_t filter_change_indication);
/** Reset Filter Indication Characteristic
*
* This API creates the Reset Filter Indication characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] reset_filter_indication Initial value of Reset Filter Indication characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_reset_filter_indication_create(uint8_t reset_filter_indication);
/** Target Air Purifier State Characteristic
*
* This API creates the Target Air Purifier State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_air_purifier_state Initial value of Target Air Purifier State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_air_purifier_state_create(uint8_t targ_air_purifier_state);
/** Target Fan State Characteristic
*
* This API creates the Target Fan State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_fan_state Initial value of Target Fan State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_fan_state_create(uint8_t targ_fan_state);
/** Current Fan State Characteristic
*
* This API creates the Current Fan State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_fan_state Initial value of Current Fan State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_fan_state_create(uint8_t curr_fan_state);
/** Position State Characteristic
*
* This API creates the Position State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] pos_state Initial value of Position State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_position_state_create(uint8_t pos_state);
/** Programmable Switch Event Characteristic
*
* This API creates the Programmable Switch Event characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] programmable_switch_event Initial value of Programmable Switch Event characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_programmable_switch_event_create(uint8_t programmable_switch_event);
/** Active Characteristic
*
* This API creates the Active characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] active Initial value of active characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_active_create(uint8_t active);
/** Swing Mode Characteristic
*
* This API creates the Swing Mode characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] swing_mode Initial value of Swing Mode characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_swing_mode_create(uint8_t swing_mode);
/** Current Tilt Angle Characteristic
*
* This API creates the Current Tilt Angle characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_tilt_angle Initial value of Current Tilt Angle characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_tilt_angle_create(int curr_tilt_angle);
/** Target Tilt Angle Characteristic
*
* This API creates the Target Tilt Angle characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_tilt_angle Initial value of Target Tilt Angle characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_tilt_angle_create(int targ_tilt_angle);
/** Ozone Density Characteristic
*
* This API creates the Ozone Density characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] ozone_density Initial value of Ozone Density characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_ozone_density_create(float ozone_density);
/** Nitrogen Dioxide Density Characteristic
*
* This API creates the Nitrogen Dioxide Density characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] nitrogen_dioxide_density Initial value of Nitrogen Dioxide Density characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_nitrogen_dioxide_density_create(float nitrogen_dioxide_density);
/** Sulphur Dioxide Density Characteristic
*
* This API creates the Sulphur Dioxide Density characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] sulphur_dioxide_density Initial value of Sulphur Dioxide Density characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_sulphur_dioxide_density_create(float sulphur_dioxide_density);
/** PM2.5 Density Characteristic
*
* This API creates the PM2.5 Density characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] pm_2_5_density Initial value of PM2.5 Density characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_pm_2_5_density_create(float pm_2_5_density);
/** PM10 Density Characteristic
*
* This API creates the PM10 Density characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] pm_10_density Initial value of PM10 Density characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_pm_10_density_create(float pm_10_density);
/** VOC Density Characteristic
*
* This API creates the VOC Density characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] voc_density Initial value of VOC Density characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_voc_density_create(float voc_density);
/** Create Service Label Index Characteristic
*
* This API creates the Service Label Index characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] service_label_index Initial value of Service Label Index characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_service_label_index_create(uint8_t service_label_index);
/** Create Service Label Namespace Characteristic
*
* This API creates the Service Label Namespace characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] service_label_namespace Initial value of Service Label Namespace characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_service_label_namespace_create(uint8_t service_label_namespace);
/** Create Color Temperature Characteristic
*
* This API creates the color temperature characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] color_temp Initial value of Color Temperature
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_color_temperature_create(uint32_t color_temp);
/** Create Curr Heater Cooler State Characteristic
*
* This API creates the Curr Heater Cooler State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_heater_cooler_state Initial value of Curr Heater Cooler State
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_heater_cooler_state_create(uint8_t curr_heater_cooler_state);
/** Create Target Heater Cooler State Characteristic
*
* This API creates the Target Heater Cooler State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_heater_cooler_state Initial value of Target Heater Cooler State
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_heater_cooler_state_create(uint8_t targ_heater_cooler_state);
/** Create Current Humidifier Dehumidifier State Characteristic
*
* This API creates the Current Humidifier Dehumidifier State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] curr_humidifier_dehumidifier_state Initial value of Current Humidifier Dehumidifier State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_current_humidifier_dehumidifier_state_create(uint8_t curr_humidifier_dehumidifier_state);
/** Create Target Humidifier Dehumidifier State Characteristic
*
* This API creates the Target Humidifier Dehumidifier State characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] targ_humidifier_dehumidifier_state Initial value of Target Humidifier Dehumidifier State characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_target_humidifier_dehumidifier_state_create(uint8_t targ_humidifier_dehumidifier_state);
/** Create Water Level Characteristic
*
* This API creates the Water Level characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] water_level Initial value of Water Level characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_water_level_create(float water_level);
/** Create Relative Humidity Dehumidifier Threshold Characteristic
*
* This API creates the Relative Humidity Dehumidifier Threshold characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] rel_humidity_dehumidifier_threshold Initial value of Relative Humidity Dehumidifier Threshold characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_relative_humidity_dehumidifier_threshold_create(float rel_humidity_dehumidifier_threshold);
/** Create Relative Humidity Humidifier Threshold Characteristic
*
* This API creates the Relative Humidity Humidifier Threshold characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] rel_humidity_humidifier_threshold Initial value of Relative Humidity Humidifier Threshold characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_relative_humidity_humidifier_threshold_create(float rel_humidity_humidifier_threshold);
/** Create Program Mode Characteristic
*
* This API creates the Program Mode characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] prog_mode Initial value of Program Mode characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_program_mode_create(uint8_t prog_mode);
/** Create In Use Characteristic
*
* This API creates the In Use characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] in_use Initial value of In Use characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_in_use_create(uint8_t in_use);
/** Create Set Duration Characteristic
*
* This API creates the Set Duration characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] set_duration Initial value of Set Duration characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_set_duration_create(uint32_t set_duration);
/** Create Remaining Duration Characteristic
*
* This API creates the Remaining Duration characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] remaining_duration Initial value of Remaining Duration characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_remaining_duration_create(uint32_t remaining_duration);
/** Create Valve Type Characteristic
*
* This API creates the Valve Type characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] valve_type Initial value of Valve Type characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_valve_type_create(uint8_t valve_type);
/** Create Is Configured Characteristic
*
* This API creates the Is Configured characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] is_configured Initial value of Is Configured characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_is_configured_create(uint8_t is_configured);
/** Status Jammed Characteristic
*
* This API creates the Status Jammed characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] status_jammed Initial value of Status Jammed characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_status_jammed_create(uint8_t status_jammed);
/** Administrator Only Access Characteristic
*
* This API creates the Administrator Only Access characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] administrator_only_access Initial value of Administrator Only Access characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_administrator_only_access_create(bool administrator_only_access);
/** Lock Control Point Characteristic
*
* This API creates the Lock Control Point characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] lock_control_point Initial value of Lock Control Point characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_lock_control_point_create(hap_tlv8_val_t *lock_control_point);
/** Lock Last Known Action Characteristic
*
* This API creates the Lock Last Known Action characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] lock_last_known_action Initial value of Lock Last Known Action characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_lock_last_known_action_create(uint8_t lock_last_known_action);
/** Lock Management Auto Security Timeout Characteristic
*
* This API creates the Lock Management Auto Security Timeout characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] lock_management_auto_security_timeout Initial value of Lock Management Auto Security Timeout characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_lock_management_auto_security_timeout_create(uint32_t lock_management_auto_security_timeout);
/** Logs Characteristic
*
* This API creates the Logs characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] logs Initial value of Logs characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_logs_create(hap_tlv8_val_t *logs);
/** Air Particulate Density Characteristic
*
* This API creates the Air Particulate Density characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] air_particulate_density Initial value of Air Particulate Density characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_air_particulate_density_create(float air_particulate_density);
/** Air Particulate Size Characteristic
*
* This API creates the Air Particulate Size characteristic object with other metadata
* (format, constraints, permissions, etc.) set as per the HAP Specs
*
* @param[in] air_particulate_size Initial value of Air Particulate Size characteristic
*
* @return Pointer to the characteristic object on success
* @return NULL on failure
*/
hap_char_t *hap_char_air_particulate_size_create(uint8_t air_particulate_size);
hap_char_t *hap_char_wattage_create(float watts);
#ifdef __cplusplus
}
#endif
#endif /* _HAP_APPLE_CHARS_H_ */