mongoose-os-apps / shelly-homekit

Apple HomeKit firmware for Shelly's
Other
1.8k stars 129 forks source link

Adding Accessory, can we use Switch name? #237

Closed andyblac closed 1 month ago

andyblac commented 3 years ago

When adding a new accessory can we use the Switch Names from webUI in HomeKit setup (see screenshots), at the moment when we add a new accessory the "Switch Name" is used from the Device ID.

Screenshot 2020-10-27 at 17 59 55 IMG_0362

emartife commented 3 years ago

With version 2.7.3 after configuring it you have to reboot, so the correct name appears when it is added to HomeKit

andyblac commented 3 years ago

in 2.7.3 the switch name is indeed used, but on adding the accessory it show the wrong switch name, it shows "Device Name", but once added it does show the "Switch Name"

rojer commented 3 years ago

hm. i guess we could se accessory name = service name if service is the only one in within the accessory

andyblac commented 3 years ago

if adding when in bridge mode, everything works as expected both the hub, accessories are added with all corect names. IMG_0514 IMG_0515 IMG_0516 IMG_0517 IMG_0518 IMG_0520 IMG_0521

it only when adding a single accessory it shows wrong name: IMG_0519

andyblac commented 3 years ago

it could just be a iOS thing?

rojer commented 3 years ago

no, it's our thing, will do

rojer commented 3 years ago

done, will be in alpha2

rojer commented 3 years ago

had to back this one out due to DNS name conflicts, see description in https://github.com/mongoose-os-apps/shelly-homekit/commit/acb57e02caef82438a2c82da5c67265a8c76fda0

rojer commented 3 years ago

requires https://github.com/mongoose-os-libs/dns-sd/issues/5

andyblac commented 3 years ago

had to back this one out due to DNS name conflicts, see description in acb57e0

how about using the original shelly1-xxxxxx for A RECORD, but adding an CNAME for the device name ?, i've asked krill to do same in stock firmware as they need to keep shelly1-xxxxxxx as A RECORD due the way there app detection works.

https://en.wikipedia.org/wiki/CNAME_record

rojer commented 3 years ago

they will still fight for the same name if there is a clash, resulting in confusion. the spec outlines what the behavior should be, it just needs to be implemented.