jvmahon / Homebridge-HomeSeer4

Homebridge Plugin for HomeSeer 3 and 4
28 stars 8 forks source link

What exactly does Homebridge do? #97

Closed JCCcccspud closed 4 years ago

JCCcccspud commented 4 years ago

Would you consider writing a paragraph in the Wiki describing just exactly what Homebridge does. I am sure it is clear to you but it would be helpful to people like me.

Initially I thought it made Homekit and Homeseer talk to each other, but that doesn't seem to be the case. It seems more like Homebridge imports things into Homekit from Homeseer so you can use Homekit to control things that Homeseer would normally control like z-wave devices, and it allows you to use Siri to get Homeseer to do things. Is that basically right; it sends instructions to Homeseer to control Homeseer devices but not the other way around?

If so, once you install Homebridge you don't need the Homeseer interface anymore and would just use Homekit?

But, it does not seem to allow you to use Homeseer to control a device that Homekit can control but Homeseer cannot. For example, Homekit can control Hunter Douglas Blinds but Homeseer does not. It does not appear that after installing Homebridge I could then use Homeseer to control the blinds. Is that right?

Basically, I was thinking that it would allow one home automation device (Homeseer) to control everything including devices Homekit can control, but it seems that the single automation device would end up being Homekit, not Homeseer.

Sorry if this is a dumb question but I am sure there a lot of non-techies like me that this would be useful for. Thanks.

jvmahon commented 4 years ago

I don't have time to make an "official" Wiki entry on this, but I'll try to give you a quick explanation.

What is HomeBridge:

There is a detailed description provided here: https://homebridge.io/

Here's a very basic description - HomeBridge is like a programming language that let's someone write programs that "talk" to the Apple Home application on your phone using a set of command messagess created by Apple as part of that Apple calls "homekit".

Homebridge is not specific to HomeSeer or any other home control system, but its a starting point for "talking" to the Apple Home application on your phone by sending it messages with commands in them, or receiving back commands from the Apple Home application.

In order to actually accomplish this "talking" with the Apple Home application, someone has to then write a homebridge "plugin."

The homebridge "plugin" is the part that takes HomeBridge's ability to send and receive messages from the Apple Home application, and then let's you do something with that. There are many different plugins serving many different purposes. For example, I wrote the plugin "homebridge-homeseer4" to connect HomeBridge to HomeSeer. My plugin watches over HomeSeer and "sees" every device change that is happening on HomeSeer and then figures out what the proper HomeKit message should be and "asks" Homebridge to send that message. Similarly, if you do something on your Apple phone's Home Application (e.g., tap a light switch button), Homebridge will tell my plugin the button you tapped, and the plugin figures out how to tell HomeSeer what happened.

So, in order to use the plugin, you still must keep HomeSeer running - it is still performing the actual control of devices around your home. My plugin and HomeBridge are just a way to get commands from your phone, and to help your phone display the current status of devices.

There are many plugins for other purposes. For example, people have written plugins to control various brands of thermostats, for other home control systems like smarthings or hubitat, for controlling TVs, audio devices, etc. etc.

JCCcccspud commented 4 years ago

Thank you for your quick and detailed response (you must be an early riser). Unfortunately I think I asked the wrong question -- my fault.  I should have asked what your plugin does, not what Homebridge does.  I am not even sure I appreciated the distinction.  Mea culpa.  

What I had in mind for an intro paragraph would be something really simple like this (sorry if I get this completely wrong, but I am showing my ignorance; please let me know if I get it right): "What my Homeseer for Homebridge plugin does: (1) It allows you to control Homeseer using Siri.  (2) It allows you to control all your Homeseer devices through the Homekit interface so you don't need Homeseer Mobile any more.  (3) Since you can now control Homeseer devices through the Homekit interface, you can control all your devices -- both Homeseer devices and Homekit devices that Homeseer doesn't talk to -- through a single interface, which is Homekit." Then maybe add another sentence:  "What my Homeseer for Homebridge plugin doesn't do:  It does not allow Homeseer to control Homekit devices that Homeseer could not otherwise control.  But that shouldn't matter because you can control those through the same Homekit interface."

Did I basically get that right? Thanks.

On Tuesday, July 28, 2020, 4:52:57 AM CDT, jvmahon <notifications@github.com> wrote:  

I don't have time to make an "official" Wiki entry on this, but I'll try to give you a quick explanation.

What is HomeBridge:

There is a detailed description provided here: https://homebridge.io/

Here's a very basic description - HomeBridge is like a programming language that let's someone write programs that "talk" to the Apple Home application on your phone using a set of command messagess created by Apple as part of that Apple calls "homekit".

Homebridge is not specific to HomeSeer or any other home control system, but its a starting point for "talking" to the Apple Home application on your phone by sending it messages with commands in them, or receiving back commands from the Apple Home application.

In order to actually accomplish this "talking" with the Apple Home application, someone has to then write a homebridge "plugin."

The homebridge "plugin" is the part that takes HomeBridge's ability to send and receive messages from the Apple Home application, and then let's you do something with that. There are many different plugins serving many different purposes. For example, I wrote the plugin "homebridge-homeseer4" to connect HomeBridge to HomeSeer. My plugin watches over HomeSeer and "sees" every device change that is happening on HomeSeer and then figures out what the proper HomeKit message should be and "asks" Homebridge to send that message. Similarly, if you do something on your Apple phone's Home Application (e.g., tap a light switch button), Homebridge will tell my plugin the button you tapped, and the plugin figures out how to tell HomeSeer what happened.

So, in order to use the plugin, you still must keep HomeSeer running - it is still performing the actual control of devices around your home. My plugin and HomeBridge are just a way to get commands from your phone, and to help your phone display the current status of devices.

There are many plugins for other purposes. For example, people have written plugins to control various brands of thermostats, for other home control systems like smarthings or hubitat, for controlling TVs, audio devices, etc. etc.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

jvmahon commented 4 years ago

Good suggestion. I added a new introductory paragraph to the README.

It currently shows up when you look at https://github.com/jvmahon/Homebridge-HomeSeer4

After the next update, it will show up on npm.

The new paragraph is:

This plugin allows you to interface with Homeseer (www.homeseer.com) and control HomeSeer devices using an Apple iOS device / Siri / AppleTV. This gives a alternative to controlling your devices using the Homeseer Mobile application. Since you can now control Homeseer devices through the Homekit interface, you can now use the iOS Home application, or an Apple TV, to control both Homeseer devices and Homekit devices.

JCCcccspud commented 4 years ago

Thanks.  May I make another suggestion and ask another question. It wasn't that obvious to me how to install the plugin once I had Homebridge installed.  I saw your instructions for installing on Linux and, since Raspbian is a version of Linux, I used Putty to log into my Homeseer Zee2 and pasted:sudo npm -g install homebridge-homeseer4But nothing happened.  I did that because the following section of the Wiki refers to updating (not installing) the plugin, which I did not think applied since I had not installed a previous version.  Maybe I should have tried npm -g install homebridge-homeseer4@latestIt might be helpful to clarify the installation instructions.  In any event, what I finally did was log into Homebridge Config UI X which allows you to search for plugins.  I found yours and clicked install and it worked like a charm. My question deals with setting up the Json file.  I enabled ASCII commands in HS.  Then I went herehttps://github.com/jvmahon/homebridge-homeseer4/tree/master/config

What do I do next?  Can I copy and paste the config.simple.json example and paste it somewhere?  Where do I do that? Thanks again.

On Tuesday, July 28, 2020, 6:34:25 PM CDT, jvmahon <notifications@github.com> wrote:  

Good suggestion. I added a new introductory paragraph to the README.

It currently shows up when you look at https://github.com/jvmahon/Homebridge-HomeSeer4

After the next update, it will show up on npm.

The new paragraph is:

This plugin allows you to interface with Homeseer (www.homeseer.com) and control HomeSeer devices using an Apple iOS device / Siri / AppleTV. This gives a alternative to controlling your devices using the Homeseer Mobile application. Since you can now control Homeseer devices through the Homekit interface, you can now use the iOS Home application, or an Apple TV, to control both Homeseer devices and Homekit devices.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.