GithubHelp home page GithubHelp logo

bwssytems / ha-bridge Goto Github PK

View Code? Open in Web Editor NEW
1.4K 1.4K 198.0 3.21 MB

Home automation bridge that emulates a Philips Hue light system and can control other systems such as a Vera, Harmony Hub, Nest, MiLight bulbs or any other system that has an http/https/tcp/udp interface. This is a compact impl to run on small format computers. This is impl started from this project https://github.com/armzilla/amazon-echo-ha-bridge.

License: Apache License 2.0

Java 65.04% HTML 19.97% JavaScript 14.68% CSS 0.31%

ha-bridge's People

Contributors

ahertz avatar audiofreak9 avatar bjoernrennfanz avatar bwssytems avatar creak avatar crush157 avatar dependabot[bot] avatar digiltd avatar escalate avatar fgather avatar flofoer avatar gaudryc avatar glynhudson avatar hanno2003 avatar hobbe avatar jimirocks avatar kvandt avatar makesimpleorg avatar marcopollacci avatar matsahm avatar melloware avatar msbg avatar pascalschwientek avatar prozsolt avatar rburgstaller avatar stefanmarchal-tomtom avatar theoriginalandrobot avatar tylerstraub avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ha-bridge's Issues

documentation issue

There is a typo in the section documenting the usage of the -Dupnp.device.db parameter: there is an extra "s" which references "-Dupnp.devices.db" instead of "-Dupnp.device.db"

Current:
If you would like a different filename or directory, specify -Dupnp.devices.db=/ or if it is the same directory

Change To:
If you would like a different filename or directory, specify -Dupnp.device.db=/ or if it is the same directory

Trying to run the habridge on my QNAP

The habridge.sh file looks like:

[/share/habridge] # more habridge.sh
java -jar -Dvera.address=192.168.1.91 -Dserver.port=8081 -Dupnp.response.port=55000 -Dupnp.config.address=192.168.1.203 -Dupnp.strict=false -Dvtwo.compatibility=true -Dtrace.upnp=false -Dharmony.address=192.168.1.105 -Dharmony.user=xxxxxx -Dharmony.pwd=xxxxxx -Dnest.user=xxxxxx -Dnest.pwd=xxxxxx /share/habridge/ha-bridge-1.3.0.jar 2>&1 | tee /share/habridge/habridge.log &
[/share/habridge] #

The log file looks like:

[/share/habridge] # ./habridge.sh
[/share/habridge] #
[/share/habridge] # [main] INFO com.bwssystems.HABridge.HABridge - HA Bridge (v1.3.0) starting setup....
[main] INFO com.bwssystems.harmony.HarmonyServer - setup initiated ....
[main] INFO com.bwssystems.harmony.HarmonyServer - activity changed: [-1] PowerOff
[main] INFO com.bwssystems.nest.controller.NestSession - Starting Nest login...
[main] INFO com.bwssystems.nest.controller.NestSession - Completed Nest login...
[main] INFO com.bwssystems.HABridge.devicemanagmeent.DeviceResource - HABridge device management service started....
[main] INFO com.bwssystems.HABridge.hue.HueMulator - Hue emulator service started....
[main] INFO com.bwssystems.HABridge.upnp.UpnpSettingsResource - Hue description service started....
2016-01-30 06:07:18.061:INFO::Thread-5: Logging initialized @4033ms
[Thread-5] INFO spark.webserver.JettySparkServer - == Spark has ignited ...
[Thread-5] INFO spark.webserver.JettySparkServer - >> Listening on 0.0.0.0:8081
2016-01-30 06:07:18.108:INFO:oejs.Server:Thread-5: jetty-9.3.z-SNAPSHOT
[Thread-5] ERROR spark.webserver.JettySparkServer - ignite failed
java.net.BindException: Address already in use
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:433)
at sun.nio.ch.Net.bind(Net.java:425)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:326)
at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:244)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.server.Server.doStart(Server.java:384)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at spark.webserver.JettySparkServer.ignite(JettySparkServer.java:131)
at spark.SparkInstance.lambda$init$0(SparkInstance.java:341)
at java.lang.Thread.run(Thread.java:745)

GUI option for Shutdown & Restart HA-Bridge

I have HA-Bridge running on my Synology NAS, and it has been working well - thank you!

During my trial & error testing it was a PITA to shutdown and restart the app... would be great if there was an option to do it in the GUI.

Multi / Batch URL generation and Add to Configuration

Vera Suggestion... Multi / Batch URL generation and Add to Configuration : Check Box style method for automatically generating URLs, naming them (using the same name that is in Vera) and add selected into the Configuration.

Support for setting intensity level of Dimmable Switch devices

Add the option to use the Dimming function for the onURL for Dimmable switches so one can set the intensity level.

Looks like you can do this with SwitchPower1, but it appears that not all devices support doing that. Will likely have to use Dimming1.

Test ON/OFF buttons not working

My Test On and Test Off buttons aren't working properly when I do a POST with a content-body. The POST does work properly when I fire the command via Alexa.

image

UpnpListener encountered an error opening sockets. Shutting down java.net.SocketException: Invalid argument

i've tried to migrate for a standalone RPi to running the bridge in a Freenas Jail.

The webserver runs without issue and I can add devices..the UpnpListener does not run due to an error.
Any thoughts on what I can try to debug this?

Here is the log file

[main] INFO com.bwssystems.HABridge.HABridge - HA Bridge (v1.3.7) starting setup....
[main] INFO com.bwssystems.NestBridge.NestHome - not a valid nest
[main] DEBUG com.bwssystems.HABridge.dao.DeviceRepository - Read a Device - device json id: 1373210256
[main] DEBUG com.bwssystems.HABridge.dao.DeviceRepository - Read a Device - device json name: Foyer
[main] DEBUG com.bwssystems.HABridge.dao.DeviceRepository - Read a Device - device json name: 63
[main] DEBUG com.bwssystems.HABridge.dao.DeviceRepository - Read a Device - device json name: veraDevice
[main] DEBUG com.bwssystems.HABridge.dao.DeviceRepository - Read a Device - device json type:switch
[main] DEBUG com.bwssystems.HABridge.dao.DeviceRepository - Read a Device - device json type:Encapsulated
[main] DEBUG com.bwssystems.HABridge.dao.DeviceRepository - Read a Device - device json off URL:http://192.168.1.88:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:SwitchPower1&action=SetTarget&newTargetValue=0&DeviceNum=63
[main] DEBUG com.bwssystems.HABridge.dao.DeviceRepository - Read a Device - device json on URL:http://192.168.1.88:3480/data_request?id=action&output_format=json&serviceId=urn:upnp-org:serviceId:SwitchPower1&action=SetTarget&newTargetValue=1&DeviceNum=63
[main] INFO com.bwssystems.HABridge.devicemanagmeent.DeviceResource - HABridge device management service started....
[main] DEBUG spark.route.RouteMatcherFactory - creates RouteMatcher
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: options, /api/devices, spark.RouteImpl$1@c038203
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: post, /api/devices, spark.ResponseTransformerRouteImpl$1@4b9e13df
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: options, /api/devices/:id, spark.RouteImpl$1@475530b9
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: put, /api/devices/:id, spark.ResponseTransformerRouteImpl$1@26be92ad
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices, spark.ResponseTransformerRouteImpl$1@224edc67
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices/:id, spark.ResponseTransformerRouteImpl$1@46d56d67
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: delete, /api/devices/:id, spark.ResponseTransformerRouteImpl$1@59fa1d9b
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices/habridge/version, spark.RouteImpl$1@4501b7af
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices/vera/devices, spark.ResponseTransformerRouteImpl$1@5b275dab
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices/vera/scenes, spark.ResponseTransformerRouteImpl$1@29774679
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices/harmony/activities, spark.ResponseTransformerRouteImpl$1@5e5792a0
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices/harmony/show, spark.ResponseTransformerRouteImpl$1@3532ec19
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices/harmony/devices, spark.ResponseTransformerRouteImpl$1@ae45eb6
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices/nest/items, spark.ResponseTransformerRouteImpl$1@27efef64
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/devices/backup/available, spark.ResponseTransformerRouteImpl$1@47c62251
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: options, /api/devices/backup/create, spark.RouteImpl$1@66a3ffec
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: put, /api/devices/backup/create, spark.ResponseTransformerRouteImpl$1@1e88b3c
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: options, /api/devices/backup/delete, spark.RouteImpl$1@3bfdc050
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: post, /api/devices/backup/delete, spark.ResponseTransformerRouteImpl$1@5e3a8624
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: options, /api/devices/backup/restore, spark.RouteImpl$1@91161c7
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: post, /api/devices/backup/restore, spark.ResponseTransformerRouteImpl$1@6a4f787b
2016-02-06 12:06:52.967:INFO::Thread-0: Logging initialized @1915ms
[Thread-0] INFO spark.webserver.JettySparkServer - == Spark has ignited ...
[Thread-0] INFO spark.webserver.JettySparkServer - >> Listening on 0.0.0.0:8080
2016-02-06 12:06:53.230:INFO:oejs.Server:Thread-0: jetty-9.3.z-SNAPSHOT
2016-02-06 12:06:53.375:INFO:oejs.ServerConnector:Thread-0: Started ServerConnector@5cd48b31{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}
2016-02-06 12:06:53.377:INFO:oejs.Server:Thread-0: Started @2325ms
[main] INFO com.bwssystems.HABridge.hue.HueMulator - Hue emulator service started....
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/:userid/lights, spark.ResponseTransformerRouteImpl$1@133e16fd
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: options, /api, spark.RouteImpl$1@1ad282e0
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: post, /api, spark.RouteImpl$1@1cab0bfb
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: options, /api/, spark.RouteImpl$1@50de0926
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: post, /api/
, spark.RouteImpl$1@60438a68
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/config, spark.ResponseTransformerRouteImpl$1@3439f68d
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/:userid/config, spark.ResponseTransformerRouteImpl$1@71d15f18
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/:userid, spark.ResponseTransformerRouteImpl$1@6c9f5c0d
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /api/:userid/lights/:id, spark.ResponseTransformerRouteImpl$1@76b10754
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: options, /api/:userid/lights/:id/state, spark.RouteImpl$1@3d8314f0
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: put, /api/:userid/lights/:id/state, spark.RouteImpl$1@530612ba
[main] INFO com.bwssystems.HABridge.upnp.UpnpSettingsResource - Hue description service started....
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /description.xml, spark.RouteImpl$1@74294adb
[main] DEBUG spark.route.SimpleRouteMatcher - Adds route: get, /upnp/settings, spark.ResponseTransformerRouteImpl$1@130f889
[main] INFO com.bwssystems.HABridge.upnp.UpnpListener - UPNP Discovery Listener starting....
[main] INFO com.bwssystems.HABridge.upnp.UpnpListener - Traceupnp: epair0b ... has addr /192.168.1.50
[main] DEBUG com.bwssystems.HABridge.upnp.UpnpListener - Checking epair0b to our interface set
[main] ERROR com.bwssystems.HABridge.upnp.UpnpListener - UpnpListener encountered an error opening sockets. Shutting down
java.net.SocketException: Invalid argument
at java.net.PlainDatagramSocketImpl.join(Native Method)
at java.net.AbstractPlainDatagramSocketImpl.joinGroup(AbstractPlainDatagramSocketImpl.java:203)
at java.net.MulticastSocket.joinGroup(MulticastSocket.java:406)
at com.bwssystems.HABridge.upnp.UpnpListener.startListening(UpnpListener.java:65)
at com.bwssystems.HABridge.HABridge.main(HABridge.java:150)
[main] INFO com.bwssystems.HABridge.upnp.UpnpListener - UPNP Discovery Listener Stopped

Harmony device and button using wrong button name

In building Harmony button press, the system uses the name of the button item instead of the label which the harmony hub expects to see. This was found when using number presses, other names and labels are the same to make this a difficult to find issue.

Minor: ':' recorded as 'NaN' when creating bridge device from Vera scene

This has happened a couple times - I try to create a device (from the scene list) tied to executing one scene for on, and another for off. The 'off' scene url ends up having "NaN" instead of ':' between the host name and port for the vera. On-link works fine. When I try to turn off the device, it fails due to this issue.

Some help with the new nest integration?

I've read all your documentation, and carefully added the username and password options to the command string.

The nest configuration tab shows up, and I can generate URLs. They just don't "work". I have no idea what I'm doing, and could use a little help?

Simple Home/Away gives me a request error.

Can't run run multiple commands

I adjusted the json for a command to try to run more than one, but it didn't execute either.

{"activity":[
{"device":"33325887","button":"VolumeUp"},
{"device":"33325887","button":"VolumeUp"}
]}

Vera devices not listed

Great job on this. The memory footprint is much much smaller compared to the original.

Unfortunately, the Vera device listing is not working. I have a Veralite with UI5

This is what I get in the logs:

[qtp548236896-18] INFO com.bwssystems.vera.VeraInfo - calling GET on URL: http://192.168.1.5:3480/data_request?id=sdata&output_format=json [qtp548236896-19] INFO com.bwssystems.vera.VeraInfo - calling GET on URL: http://192.168.1.5:3480/data_request?id=sdata&output_format=json [qtp548236896-18] INFO com.bwssystems.vera.VeraInfo - GET on URL responded: 200 [qtp548236896-18] ERROR spark.webserver.MatcherFilter - java.lang.NullPointerException at com.bwssystems.vera.VeraInfo.denormalizeSdata(VeraInfo.java:60) at com.bwssystems.vera.VeraInfo.getSdata(VeraInfo.java:43) at com.bwssystems.HABridge.devicemanagmeent.DeviceResource.lambda$6(DeviceResource.java:123) at spark.ResponseTransformerRouteImpl$1.handle(ResponseTransformerRouteImpl.java:47) at spark.webserver.MatcherFilter.doFilter(MatcherFilter.java:159) at spark.webserver.JettyHandler.doHandle(JettyHandler.java:60) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:179) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136) at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) at org.eclipse.jetty.server.Server.handle(Server.java:451) at org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:252) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:266) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.run(AbstractConnection.java:240) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:596) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:527) at java.lang.Thread.run(Thread.java:745)

Thanks

Help with this error message.

synack23:~ owner$ java -jar -Dupnp.config.address=192.168.0.13 -Dharmony.address=192.168.0.7 -Dserver.port=8081 -Dharmony.user=[email protected] -Dharmony.pwd=XXX /Users/owner/Desktop/ha-bridge-1.2.3.jar
[main] INFO com.bwssystems.HABridge.HABridge - HA Bridge (v1.2.3) starting setup....
[main] INFO com.bwssystems.harmony.HarmonyServer - setup initiated ....
[main] INFO com.bwssystems.harmony.HarmonyServer - activity changed: [15689828] Watch Roku
[main] WARN com.bwssystems.HABridge.dao.DeviceRepository - Error reading the file: data/device.db - Does not exist or is not readable. continuing...
[main] INFO com.bwssystems.HABridge.devicemanagmeent.DeviceResource - HABridge device management service started....
[main] INFO com.bwssystems.HABridge.hue.HueMulator - Hue emulator service started....
[main] INFO com.bwssystems.HABridge.upnp.UpnpSettingsResource - Hue description service started....
2016-01-05 09:44:04.015:INFO::Thread-5: Logging initialized @3016ms
[Thread-5] INFO spark.webserver.JettySparkServer - == Spark has ignited ...
[Thread-5] INFO spark.webserver.JettySparkServer - >> Listening on 0.0.0.0:8081
2016-01-05 09:44:04.061:INFO:oejs.Server:Thread-5: jetty-9.3.z-SNAPSHOT
2016-01-05 09:44:04.092:INFO:oejs.ServerConnector:Thread-5: Started ServerConnector@970bf99{HTTP/1.1,[http/1.1]}{0.0.0.0:8081}
2016-01-05 09:44:04.092:INFO:oejs.Server:Thread-5: Started @3093ms
[main] INFO com.bwssystems.HABridge.upnp.UpnpListener - UPNP Discovery Listener starting....
[main] ERROR com.bwssystems.HABridge.upnp.UpnpListener - UpnpListener encountered an error opening sockets. Shutting down
java.net.BindException: Address already in use
at java.net.PlainDatagramSocketImpl.bind0(Native Method)
at java.net.AbstractPlainDatagramSocketImpl.bind(AbstractPlainDatagramSocketImpl.java:94)
at java.net.DatagramSocket.bind(DatagramSocket.java:392)
at java.net.DatagramSocket.(DatagramSocket.java:242)
at java.net.DatagramSocket.(DatagramSocket.java:299)
at java.net.DatagramSocket.(DatagramSocket.java:271)
at com.bwssystems.HABridge.upnp.UpnpListener.startListening(UpnpListener.java:42)
at com.bwssystems.HABridge.HABridge.main(HABridge.java:106)
[main] INFO com.bwssystems.HABridge.upnp.UpnpListener - UPNP Discovery Listener Stopped

As far as I understand I use the address 192.168.0.13 (my computers address for the HA Bridge) and 192.168.0.7 (the Harmony Hubs address).

Enumerate Configured Device Entries

Since the number of devices that can be entered / controlled has an apparent and varying "hard limit", it would be nice if on the configuration page, the current devices stored / displayed would be enumerated (line numbers), so that I can quickly scroll and see how many I have, in order to make sure I stay within a reasonable maximum count.

Error connection refused in logs

First--thanks for the great work on this app!

I have posted this issue on the thread in Vera but I am a new user so I am waiting for a moderator to approve my post. Apologies for the cross post.

I am seeing the same issues as xeinth--Error Calling out to HA Gateway, connection refused (to my VE)--multiple times. It then eventually connects. The UI correctly detects all Devices and Scenes and displays them. It is displaying Devices and Scenes in the UI even as the log shows repeated instances of Connection Refused. Devices generate URLs and test properly. I enabled UPNP on both my routers.

Scenes do not generate URLs. If I manually add a scene (http://vera:3480/data_request?id=action&serviceId=urn:micasaverde-com:serviceId:HomeAutomationGateway1&action=RunScene&SceneNum=<scene#>) I either get a a popup with a 404 error or a popup with command ran successfully but the scene doesn't fire.

The scenes run fine in Vera Ui 7. I have done everything I can think of including deleting all devices and adding them again. At present I have (11) zwave switches/outlets that test successfully and work through Echo.

I am running this on an rpi 2, with Raspbian Jessie. I am running the most recent Vera firmware--1.7.1598 that was released last week.

Thanks!

Enhancement please add Isy support as well

Please add universal devices Isy support as well. I use both Vera edge and Isy (fan controls and key pads). I would like to run Isy scenes to control ceiling fans and key pads.

Add Nest support

My request is for the ha-bridge to support the Nest thermostat. Everyone is waiting for the Nest skill to come out... it's almost the end of 2015 :-). Beat them to the punch like you did with Harmony support.

The Nest API requires a username (your Email address) and a password into the nest.com web site.

Here is where everything appears to be documented; https://developer.nest.com/

HDMI CEC

Enhancement request:
HDMI CEC support. I have this working now to change channels on Dirtectv receivers (using SHEF) but would love to be able to turn on/off using the cec-utils library. Thanks for your great work.

Harmony control

Tried to set up harmony control on release 1.0.6 (built from Maven), but fails to start. It works if I don't provode the harmony parameters:

/usr/bin/java -jar -Dvera.address=192.168.150.11 -Dupnp.device.db=/opt/ha-bridge/data/device.db -Dharmony.address=192.168.150.23 -Dharmony.user=@ -Dharmony.pwd= -Dtrace.upnp=false /opt/ha-bridge/server/ha-bridge-1.0.6.jar
[main] INFO com.bwssystems.HABridge.HABridge - HA Bridge (v1.0.6) starting setup....
Nov 04, 2015 12:06:43 AM org.jivesoftware.smack.provider.ProviderFileLoader
SEVERE: Unknown error occurred while parsing provider file
org.xmlpull.v1.XmlPullParserException: caused by: org.xmlpull.v1.XmlPullParserException: resource not found: /META-INF/services/org.xmlpull.v1.XmlPullParserFactory make sure that parser implementing XmlPull API is available
at org.xmlpull.v1.XmlPullParserFactory.newInstance(XmlPullParserFactory.java:294)
at org.xmlpull.v1.XmlPullParserFactory.newInstance(XmlPullParserFactory.java:259)
at org.jivesoftware.smack.provider.ProviderFileLoader.(ProviderFileLoader.java:59)
at org.jivesoftware.smack.provider.ProviderFileLoader.(ProviderFileLoader.java:49)
at net.whistlingfish.harmony.HarmonyClientModule.configure(HarmonyClientModule.java:16)
at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:259)
at com.google.inject.spi.Elements.getElements(Elements.java:109)
at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:136)
at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
at com.google.inject.Guice.createInjector(Guice.java:96)
at com.google.inject.Guice.createInjector(Guice.java:73)
at com.google.inject.Guice.createInjector(Guice.java:62)
at com.bwssystems.harmony.HarmonyServer.setup(HarmonyServer.java:39)
at com.bwssystems.HABridge.HABridge.main(HABridge.java:79)

[main] INFO com.bwssystems.harmony.HarmonyServer - setup initiated ....
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.jivesoftware.smack.ConnectionConfiguration.(ConnectionConfiguration.java:67)
at net.whistlingfish.harmony.HarmonyClient.createConnectionConfig(HarmonyClient.java:311)
at net.whistlingfish.harmony.HarmonyClient.connect(HarmonyClient.java:113)
at com.bwssystems.harmony.HarmonyServer.execute(HarmonyServer.java:68)
at com.bwssystems.harmony.HarmonyServer.setup(HarmonyServer.java:43)
at com.bwssystems.HABridge.HABridge.main(HABridge.java:79)
Caused by: java.lang.IllegalStateException: org.xmlpull.v1.XmlPullParserException: caused by: org.xmlpull.v1.XmlPullParserException: resource not found: /META-INF/services/org.xmlpull.v1.XmlPullParserFactory make sure that parser implementing XmlPull API is available
at org.jivesoftware.smack.SmackConfiguration.(SmackConfiguration.java:158)
... 6 more
Caused by: org.xmlpull.v1.XmlPullParserException: caused by: org.xmlpull.v1.XmlPullParserException: resource not found: /META-INF/services/org.xmlpull.v1.XmlPullParserFactory make sure that parser implementing XmlPull API is available
at org.xmlpull.v1.XmlPullParserFactory.newInstance(XmlPullParserFactory.java:294)
at org.xmlpull.v1.XmlPullParserFactory.newInstance(XmlPullParserFactory.java:259)
at org.jivesoftware.smack.SmackConfiguration.processConfigFile(SmackConfiguration.java:352)
at org.jivesoftware.smack.SmackConfiguration.processConfigFile(SmackConfiguration.java:347)
at org.jivesoftware.smack.SmackConfiguration.(SmackConfiguration.java:155)
... 6 more

Track generated devices/scenes/activities

Separate lists for vera devices, vera scenes and harmony activities to ones that have been generated and added. This will allow for a cleaner interface. Harmony buttons will not be tracked since that is more open ended.

issue with passing variables in - not accepted ? ip port or listener ?

ns:target administrator$ java -jar ha-bridge-1.3.8.jar -Dupnp.config.address=192.168.1.243 -Dserver.port=8081 -Dupnp.response.port=50099

[main] INFO com.bwssystems.HABridge.HABridge - HA Bridge (v1.3.8) starting setup....
[main] INFO com.bwssystems.HABridge.HABridge - Getting an IP address for this host....
[main] INFO com.bwssystems.HABridge.HABridge - Adding 192.168.1.243 from interface ppp0 as our default upnp config address.
[main] INFO com.bwssystems.NestBridge.NestHome - not a valid nest
[main] INFO com.bwssystems.HABridge.devicemanagmeent.DeviceResource - HABridge device management service started....
2016-02-09 13:33:14.276:INFO::Thread-0: Logging initialized @3509ms
[Thread-0] INFO spark.webserver.JettySparkServer - == Spark has ignited ...
[Thread-0] INFO spark.webserver.JettySparkServer - >> Listening on 0.0.0.0:8080
2016-02-09 13:33:14.779:INFO:oejs.Server:Thread-0: jetty-9.3.z-SNAPSHOT
2016-02-09 13:33:15.094:INFO:oejs.ServerConnector:Thread-0: Started ServerConnector@7e762fc5{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}
2016-02-09 13:33:15.095:INFO:oejs.Server:Thread-0: Started @4410ms
[main] INFO com.bwssystems.HABridge.hue.HueMulator - Hue emulator service started....
[main] INFO com.bwssystems.HABridge.upnp.UpnpSettingsResource - Hue description service started....
[main] INFO com.bwssystems.HABridge.upnp.UpnpListener - UPNP Discovery Listener starting....
[main] ERROR com.bwssystems.HABridge.upnp.UpnpListener - UpnpListener encountered an error opening sockets. Shutting down

Multiple commands

Sorry for the noob question. Is there any way to run multiple commands with a single voice activation? I'm mainly looking at the harmony hub. I want to send multiple volume up commands or change a change by saying turn on ESPN and the hub would send out the channel numbers. I know I can create activities to just change to the specific but that just clusters up my remote screen.

Any idea?

Why I keep getting this popup error while navigating through the menus?

"Get Vera Devices Error: undefined"

Json style

could you provide a example as to the layout using real info as i can not seem to get it t working correct for multiple harmony hubs

What am i doing wrong here many thanks

{devices:[{name:Theater,ip:192.168.1.246},{name:Family Room,ip:192.168.1.210]}}

Volume buttons match labels and not command

While tinkering in the latest version (1.3.5) i added harmony device button presses for volume/previous channel and they did not work. After looking up commands i was able to manually change and they worked correctly.

UPNP Issue on OpenWRT Router

As an FYI, my Amazon Echo suddenly couldn't connect to the ha-bridge, I tried a number of trouble-shooting procedures, all failed:

  1. removed all of the devices and tried re-adding them
  2. I disabled IPV6 on the server running the ha-bridge
  3. I re-configured the Amazon Echo's Wifi and moved from 5GHz to 2.4GHz band
  4. I restarted the Amazon Echo

In the end it was my router randomly not forwarding UPNP traffic from the Wireless network of the Amazon Echo to the Wired network of my ha-bridge, the following thread provided me with the answer: https://forum.openwrt.org/viewtopic.php?id=43160 to disable multicast_snooping - might help someone else in future.

TypeError: Cannot set property 'name' of undefined

Javascript error anytime I click the "Clear Device" button: TypeError: Cannot set property 'name' of undefined Caused by the $scope.clearDevice = function () in the aps.js file line 511, seems "olddevice" is not defined.

Avoid 127.0.0.1 as the auto-detected address for upnp

While the upnp.config.address setting can be used to force a particular callback address for upnp; it would be nice if single address systems did not have to specify it explicitly. In particular; localhost (127.0.0.1) is almost never useful for upnp callbacks so it would be ideal to skip that during auto-detection. upnp.config.address could still be used explicitly to select 127.0.0.1 in exceptional cases where that is desired.

Add features to make creating devices easier

In the list of available devices and scenes, add a column with checkboxes, and and editable column for the names. Have a "bulk add checked devices" button at the bottom. Have some indication of what devices have already been created.

Device IDs are are ambiguous with multiple Veras

If you have multiple Vera controllers, devices on different controllers may have the same IDs. In this case, devices with duplicate IDs on different Veras will show that the device is already configured. It would be great if the device ID and some other key (maybe Vera MAC address) was used to disambiguate, so ha-bridge could be used with multiple Vera controllers.

nest thermostat

Hi,

So I've installed the bridge and added my three thermostats and performed a 'discover devices'. The Echo can see the thermostats. I'm able to say, "alexa, set the basement nest to 70" and she responds with "ok", but nothing happens on the nest side.

Any idea what could be missing?

Thanks,

Feature Request: Support Aliases for Devices

While I know that I can create more than 1 device with the same URL, it would be convenient to have aliases such that I can call a device more than 1 name, i.e. kitchen lights, kitchen can lights, overhead lights, etc.

UDP packet?

Is it possible to send UDP packet instead of TCP?

Thanks

Clicking on tabs in UI results in error

Clicking on any tab in UI (Configuration, Vera Devices, etc.) results in: Get Harmony Activities Error: undefined. I do not have a Harmony Hub nor do I have one defined in the command line.

Thanks!

POST/PUT Support - format question

Hi there - I guess i am unable to follow the example -so this isn't an issue, just a question, of you would be so kind ?

I'm trying to pass the following to my AV Amp....

I've pasted what i think should go where and i just get "error on calling url..." as the error ?

an example of the format: http://www.openremote.org/display/forums/Yamaha+RX-A+ip+control.+(Solved)

from wireshark
http://192.168.1.119:80/YamahaRemoteControl/ctrl

and
HTML Form URL Encoded: application/x-www-form-urlencoded
"PUT"><Main_Zone>Down</Main_Zone></YAMAHA_AV>

yamaha_post.pcapng.zip

Save Settings Problem

Hello,

i use the Version 1.2.3 (on Ubunut Server with Oracle Java V8). When i add a Device and restart the Server, the devices are lost.

By save i beome the follow mistake:

[qtp1847669615-27] ERROR spark.webserver.MatcherFilter -
java.lang.NullPointerException
at java.nio.file.Files.provider(Files.java:97)
at java.nio.file.Files.notExists(Files.java:2434)
at com.bwssystems.HABridge.dao.DeviceRepository.repositoryWriter(DeviceRepository.java:101)
at com.bwssystems.HABridge.dao.DeviceRepository.save(DeviceRepository.java:78)
at com.bwssystems.HABridge.devicemanagmeent.DeviceResource.lambda$1(DeviceResource.java:79)
at spark.ResponseTransformerRouteImpl$1.handle(ResponseTransformerRouteImpl.java:47)
at spark.webserver.MatcherFilter.doFilter(MatcherFilter.java:162)
at spark.webserver.JettyHandler.doHandle(JettyHandler.java:61)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:189)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:119)
at org.eclipse.jetty.server.Server.handle(Server.java:517)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:302)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:242)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:245)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:75)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
at java.lang.Thread.run(Thread.java:745)

Where can i solve the Problem?

Virtually support multiple HUE bridges

Since there seems to be a limitation between the echo and the bridge for the number of devices, it may be prudent to emulate multiple HUE bridges virtually inside one bridge to overcome this limitation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.