Guest User

Untitled

a guest
Aug 2nd, 2020
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.56 KB | None | 0 0
  1. /*
  2. my_accessory.c
  3. Define the accessory in C language using the Macro in characteristics.h
  4.  
  5. Created on: 2020-05-15
  6. Author: Mixiaoxiao (Wang Bin)
  7. */
  8.  
  9. #include <homekit/homekit.h>
  10. #include <homekit/characteristics.h>
  11.  
  12. void my_accessory_identify(homekit_value_t _value) {
  13. printf("accessory identify\n");
  14. }
  15.  
  16. // Switch (HAP section 8.38)
  17. // required: ON
  18. // optional: NAME
  19.  
  20. // format: bool; HAP section 9.70; write the .setter function to get the switch-event sent from iOS Home APP.
  21. homekit_characteristic_t cha_switch_on = HOMEKIT_CHARACTERISTIC_(ON, false);
  22.  
  23. // format: string; HAP section 9.62; max length 64
  24. homekit_characteristic_t cha_name = HOMEKIT_CHARACTERISTIC_(NAME, "PC Switch2");
  25.  
  26. homekit_accessory_t *accessories[] = {
  27. HOMEKIT_ACCESSORY(.id = 1, .category = homekit_accessory_category_switch, .services = (homekit_service_t*[]) {
  28. HOMEKIT_SERVICE(ACCESSORY_INFORMATION, .characteristics = (homekit_characteristic_t*[]) {
  29. HOMEKIT_CHARACTERISTIC(NAME, "PC"),
  30. HOMEKIT_CHARACTERISTIC(MANUFACTURER, "Axel Dabee"),
  31. HOMEKIT_CHARACTERISTIC(SERIAL_NUMBER, "0123456"),
  32. HOMEKIT_CHARACTERISTIC(MODEL, "ESP8266/ESP32"),
  33. HOMEKIT_CHARACTERISTIC(FIRMWARE_REVISION, "1.0"),
  34. HOMEKIT_CHARACTERISTIC(IDENTIFY, my_accessory_identify),
  35. NULL
  36. }),
  37. HOMEKIT_SERVICE(SWITCH, .characteristics = (homekit_characteristic_t*[]) {
  38. &cha_switch_on,
  39. &cha_name,
  40. NULL
  41. })
  42. }),
  43. NULL
  44. };
  45.  
  46. homekit_server_config_t config = {
  47. .accessories = accessories,
  48. .password = "123-45-321"
  49. };
Add Comment
Please, Sign In to add comment