bwssytems / ha-bridge

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.
Apache License 2.0
1.45k stars 199 forks source link

HABridge & Synology Ports #1190

Open tricamtech opened 4 years ago

tricamtech commented 4 years ago

I have read every blog and issue and note I can find on the web for this and have tried about 1000 different solutions for this to no avail. I have be using HA Bridge for a few years now on a Raspberry PI with no issues. I now want to migrate my install over to a Docker Instance on my Synology nas.

I can get my data migrated and running on port 8001, however I cant for the life of me get alexa to find any of my devices on the new installation. she will only speak to the old RPi install. I have tried changing the RPi to port 8001 as well and she seems to ignore that too.

Is it only possible for alexa to communicate on port 80? Otherwise does anyone have any thoughts? id be glad to post logs etc if it will help.

bwssytems commented 4 years ago

Why do you want to run on the synology when you have a Pi available?

tricamtech commented 4 years ago

I have a Pi currently available, but with this shutdown I have lost all of my sources of income and was hoping to re-purpose the Pi for another project without buying another one.

bwssytems commented 4 years ago

So sorry to hear that. This is truly an unprecedented time. As for the Synology and Amazon, it seems Amazon chose to fix it to port 80.

bwssytems commented 4 years ago

Interesting enough, I just tested and used port 8080 and it is working fine with my gen 1 echo.

Shinjo01x commented 4 years ago

I ve the same problem and have only an Synology to install the bridge onto. I ve run the Bridge an port 8080 years,but suddenlich after reinstalling it wont work anymore. alexa does not find any device - echo gen 1. what i m missing? how did u get it work on 8080?

smontys commented 4 years ago

I think the better way is to free up that port in Synology. In fact it works as default in other port, 5001 https in my case. There are several ways to do so, but I think I did in a simple way, but I need to remember how. Let me know if you need help. Regards.

Shinjo01x commented 4 years ago

Hi,

Thanks for your help. I really wanna get the ha bridge up and running again. It worked for me on port 8080 for years. But after I need to reconfigure my dot Gen 1, Alexa won't find devices anymore. After a lot of reading I guess it's caused by a software change by Amazon. Alexa seems to any find devises on port 80.

So port 80 is reserved by the synology itself. How did you get it work? Reverse proxy? Sorry, I m kind a noobish at these things.

smontys notifications@github.com schrieb am Sa., 16. Mai 2020, 11:56:

I think the better way is to free up that port in Synology. In fact it works as default in other port, 5001 https in my case. There are several ways to do so, but I think I did in a simple way, but I need to remember how. Let me know if you need help. Regards.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629619860, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVBEDH6NRWD2RUDMBJDRRZPMZANCNFSM4LTSMYUA .

smontys commented 4 years ago

Don't worry, I'll give you detailed instructions. It has to be easy, my Synology is too old and can't be updated to latest DSM (I have at 4.2) I'll review and post here, as soon as I can.

Shinjo01x commented 4 years ago

Fine. I m waiting for your instruction. To be mentioned, I run die ha bridge in a dicker container on synology ds218+.

Thanks

smontys notifications@github.com schrieb am Sa., 16. Mai 2020, 15:19:

Don't worry, I'll give you detailed instructions. It has to be easy, my Synology is too old and can't be updated to latest DSM (I have at 4.2) I'll review and post here, as soon as I can.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629644529, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVDUYMHFKAXTIEQO2QTRR2HGVANCNFSM4LTSMYUA .

smontys commented 4 years ago

Well, I extracted the idea from this old post https://stackoverflow.com/a/30406531 You need to open a telnet/ssh session to your Syno with root username (same password as admin). Not sure if it has been disabled in newer DSM versions. Then go to '/' path with cd .. command several times until you reach it (you can check where you are with pwd commnad) Then enter find . -name httpd.conf* command to look for your httpd.conf file(s) Mines are at

DS> find . -name httpd.conf*
./usr/syno/apache/.conf.default/httpd.conf-sys
./usr/syno/apache/conf/httpd.conf
./usr/syno/apache/conf/httpd.conf-user
./usr/syno/apache/conf/httpd.conf-sys

You need to edit them and subtstitute every '80' occurrence with the port you prefer. Use the editor you are comfortable. I always use old 'vi' unix editor, remembering my very old university years, but I don't recomend to noobish) It is better to make a copy with cp /usr/syno/apache/conf/httpd.conf /usr/syno/apache/conf/httpd.conf.80 and so on

For instance, changes In my httpd.conf

# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
Listen 8080

#
# Dynamic Shared Object (DSO) Support
#
#
# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
ServerName *:8080

#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
#DocumentRoot "/var/services/web"

One thing it seems that when upgrade DSM, you'll lost changes and need to do them again.

Hope this could help.

Regards.

Shinjo01x commented 4 years ago

Just to get it right. If ich change the ports like shown in your file, the ds will only listen to 8080. So port 80 is free to use for the ha bridge?

smontys notifications@github.com schrieb am Sa., 16. Mai 2020, 20:03:

Well, I extracted the idea from this old post https://stackoverflow.com/a/30406531 You need to open a telnet/ssh session to your Syno with root username (same password as admin). Not sure if it has been disabled in newer DSM versions. Then go to '/' path with cd .. command several times until you reach it (you can check where you are with pwd commnad) Then enter find . -name httpd.conf* command to look for your httpd.conf file(s) Mines are at

DS> find . -name httpd.conf* ./usr/syno/apache/.conf.default/httpd.conf-sys ./usr/syno/apache/conf/httpd.conf ./usr/syno/apache/conf/httpd.conf-user ./usr/syno/apache/conf/httpd.conf-sys

You need to edit them and subtstitute every '80' occurrence with the port you prefer. Use the editor you are comfortable. I always use old 'vi' unix editor, remembering my very old university years, but I don't recomend to noobish) It is better to make a copy with cp /usr/syno/apache/conf/httpd.conf /usr/syno/apache/conf/httpd.conf.80 and so on

For instance, changes In my httpd.conf

Change this to Listen on specific IP addresses as shown below to

prevent Apache from glomming onto all bound IP addresses.

#

Listen 12.34.56.78:80

Listen 8080

#

Dynamic Shared Object (DSO) Support

#

#

ServerName gives the name and port that the server uses to identify itself.

This can often be determined automatically, but we recommend you specify

it explicitly to prevent problems during startup.

#

If your host doesn't have a registered DNS name, enter its IP address here.

# ServerName *:8080

#

DocumentRoot: The directory out of which you will serve your

documents. By default, all requests are taken from this directory, but

symbolic links and aliases may be used to point to other locations.

#

DocumentRoot "/var/services/web"

One thing it seems that when upgrade DSM, you'll lost changes and need to do them again.

Hope this could help.

Regards.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629684871, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVBOPHBGP5QRVDUOYGLRR3IPBANCNFSM4LTSMYUA .

smontys commented 4 years ago

Yes, it is. In fact, if you have enabled https, when you access to port 80 it redirects to 5001 (or whatever you config). So port 80 is not needed. But you lost the automatic redirection but it doesn't matter. Of course, when you make the change, you can access with 8080 port (or whatever you config) I suggest you to enable first https if you don't already have with the DSM gui.

smontys commented 4 years ago

Here there are my DSM settings. Probably what I've explained is not needed if you uncheck http redirection, but not tested. 5CD1276B-8731-4C38-ABCE-33C0A3BB2194

Shinjo01x commented 4 years ago

I ll give it a try. But i guess it wont work cause if I run the ha bridge at 8080 i can access the bridge, too.

Am Sa., 16. Mai 2020 um 20:46 Uhr schrieb smontys <notifications@github.com

:

Here there are my DSM settings. Probably what I've explained is not needed if you uncheck http redirection, but not tested. [image: 5CD1276B-8731-4C38-ABCE-33C0A3BB2194] https://user-images.githubusercontent.com/9391717/82127738-34914880-97b6-11ea-94f7-8c0666050803.jpeg

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629690045, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVFRQZ7WFYTNVCP6W6LRR3NPJANCNFSM4LTSMYUA .

Shinjo01x commented 4 years ago

these are my settings, so it s turned off by default. I need to go into the config files

[image: image.png]

Am Sa., 16. Mai 2020 um 21:28 Uhr schrieb M K master01x@googlemail.com:

I ll give it a try. But i guess it wont work cause if I run the ha bridge at 8080 i can access the bridge, too.

Am Sa., 16. Mai 2020 um 20:46 Uhr schrieb smontys < notifications@github.com>:

Here there are my DSM settings. Probably what I've explained is not needed if you uncheck http redirection, but not tested. [image: 5CD1276B-8731-4C38-ABCE-33C0A3BB2194] https://user-images.githubusercontent.com/9391717/82127738-34914880-97b6-11ea-94f7-8c0666050803.jpeg

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629690045, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVFRQZ7WFYTNVCP6W6LRR3NPJANCNFSM4LTSMYUA .

Shinjo01x commented 4 years ago

And here is what i get if I use the find . - name http.conf*

[image: image.png]

there are more that 5 pages more of results.

Sorry, but I dont even find the http config files.

Am Sa., 16. Mai 2020 um 21:31 Uhr schrieb M K master01x@googlemail.com:

these are my settings, so it s turned off by default. I need to go into the config files

[image: image.png]

Am Sa., 16. Mai 2020 um 21:28 Uhr schrieb M K master01x@googlemail.com:

I ll give it a try. But i guess it wont work cause if I run the ha bridge at 8080 i can access the bridge, too.

Am Sa., 16. Mai 2020 um 20:46 Uhr schrieb smontys < notifications@github.com>:

Here there are my DSM settings. Probably what I've explained is not needed if you uncheck http redirection, but not tested. [image: 5CD1276B-8731-4C38-ABCE-33C0A3BB2194] https://user-images.githubusercontent.com/9391717/82127738-34914880-97b6-11ea-94f7-8c0666050803.jpeg

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629690045, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVFRQZ7WFYTNVCP6W6LRR3NPJANCNFSM4LTSMYUA .

smontys commented 4 years ago

I ll give it a try. But i guess it wont work cause if I run the ha bridge at 8080 i can access the bridge, too. Am Sa., 16. Mai 2020 um 20:46 Uhr schrieb smontys <notifications@github.com

This is to free up port 80 for ha-bridge. You need to change ha-bridge to that port and then you won't have problems with Alexa discover. I'm sorry but I can't see your pictures, don't know why...

smontys commented 4 years ago

these are my settings, so it s turned off by default. I need to go into the config files [image: image.png] Am Sa., 16. Mai 2020 um 21:28 Uhr schrieb M K master01x@googlemail.com:

Try changing http and https ports, maybe conf files edit is not needed. After change, check http access. If you got redirect, then conf files edit is needed. If you got error page, not.

And here is what i get if I use the find . - name http.conf* [image: image.png] there are more that 5 pages more of results. Sorry, but I dont even find the http config files. Am Sa., 16. Mai 2020 um 21:31 Uhr schrieb M K master01x@googlemail.com:

It seems you wrote an space between dash and 'name'. See my code carefully.

Shinjo01x commented 4 years ago

Hi,

i copied your syntax and still get this. [image: image.png] I guess DSM 6.2 runs with ngnix not with apache

Am Sa., 16. Mai 2020 um 22:05 Uhr schrieb smontys <notifications@github.com

:

these are my settings, so it s turned off by default. I need to go into the config files [image: image.png] Am Sa., 16. Mai 2020 um 21:28 Uhr schrieb M K master01x@googlemail.com: … <#m-1946692971826876950>

Try changing http and https ports, maybe conf files edit is not needed. After change, check http access. If you got redirect, then conf files edit is needed. If you got error page, not.

And here is what i get if I use the find . - name http.conf* [image: image.png] there are more that 5 pages more of results. Sorry, but I dont even find the http config files. Am Sa., 16. Mai 2020 um 21:31 Uhr schrieb M K master01x@googlemail.com: … <#m-1946692971826876950>

It seems you wrote an space between dash and 'name'. See my code carefully.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629699352, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVA6FSYNY7V7EJO5BB3RR3W2LANCNFSM4LTSMYUA .

smontys commented 4 years ago

Sorry, still can't see your screenshots, do you see them? An mine? Yours appear to me like this [image: image.png]

Shinjo01x commented 4 years ago

I can see mine and yours. but the last one i cant see.

here is the result in text form :

find: ./proc/25516/ns': Permission denied find:./proc/26180/task/26180/fd': Permission denied find: ./proc/26180/task/26180/fdinfo': Permission denied find:./proc/26180/task/26180/ns': Permission denied find: ./proc/26180/fd': Permission denied find:./proc/26180/map_files': Permission denied find: ./proc/26180/fdinfo': Permission denied find:./proc/26180/ns': Permission denied find: ./proc/29281/task/29281/fd': Permission denied find:./proc/29281/task/29281/fdinfo': Permission denied find: ./proc/29281/task/29281/ns': Permission denied find:./proc/29281/fd': Permission denied find: ./proc/29281/map_files': Permission denied find:./proc/29281/fdinfo': Permission denied find: ./proc/29281/ns': Permission denied find:./proc/29383/task/29383/fd': Permission denied find: ./proc/29383/task/29383/fdinfo': Permission denied find:./proc/29383/task/29383/ns': Permission denied find: ./proc/29383/fd': Permission denied find:./proc/29383/map_files': Permission denied find: ./proc/29383/fdinfo': Permission denied find:./proc/29383/ns': Permission denied find: ./var/lib/net-snmp': Permission denied find:./var/lib/sss/keytabs': Permission denied find: ./var/lib/sss/pipes/private': Permission denied find:./var/lib/sss/db': Permission denied find: ./var/lib/synosmartblock': Permission denied find:./var/log/synolog': Permission denied find: ./var/log/Docker': Permission denied find:./var/log/sssd': Permission denied find: ./var/log/samba/cores': Permission denied find:./var/log/selfcheck': Permission denied find: ./var/log/nginx': Permission denied find:./var/crash': Permission denied find: ./var/target': Permission denied find:./var/db': Permission denied find: ./var/state/ups': Permission denied find:./var/cache/synopkg': Permission denied find: ./opt': Permission denied find:./run/docker': Permission denied find: ./run/cups/certs': Permission denied find:./run/samba/ncalrpc/np': Permission denied find: ./run/samba/msg.sock': Permission denied find:./run/iscsi': Permission denied find: ./run/lock/subsys': Permission denied find:./run/lock/firewall': Permission denied find: ./run/synoservice/restart': Permission denied find:./etc.defaults/postgresql': Permission denied find: ./etc.defaults/sssd': Permission denied find:./etc.defaults/sudoers.d': Permission denied admin@SynologyDS218:/$

Am So., 17. Mai 2020 um 10:42 Uhr schrieb smontys <notifications@github.com

:

Sorry, still can't see your screenshots, do you see them? An mine? Yours appear to me like this [image: image.png]

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629763215, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVAHFC45OYS7BODOKDLRR6PPHANCNFSM4LTSMYUA .

smontys commented 4 years ago

Ok, without signing in (GitHub public access), I still can see only my screenshot. The last was only the text that I see instead of an image. From your text results, you are connected as 'admin' and you need to login as root (same password) Maybe is disabled in your DSM version, try then with sudo before command sudo find . -name httpd.conf*

Shinjo01x commented 4 years ago

hi, sorry. i managed to Login as root.

find http.conf gives no results:

root@SynologyDS218:/# find . -name httpd.conf* root@SynologyDS218:/#

Am So., 17. Mai 2020 um 11:42 Uhr schrieb smontys <notifications@github.com

:

Ok, without signing in (GitHub public access), I still can see only my screenshot. The last was only the text that I see instead of an image. From your text results, you are connected as 'admin' and you need to login as root (same password) Maybe is disabled in your DSM version, try then with sudo before command sudo find . -name httpd.conf*

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629770571, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVGAG5EBMYFRYLBX7FTRR6WR5ANCNFSM4LTSMYUA .

smontys commented 4 years ago

Are you at the root path '/'?

Shinjo01x commented 4 years ago

Yes. No more CD.. Possible

What is your dsm version?

smontys notifications@github.com schrieb am Mo., 18. Mai 2020, 07:17:

Are you at the root path '/'?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-629950986, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVC2YKPBB23M6SJD7ITRSDAFRANCNFSM4LTSMYUA .

smontys commented 4 years ago

DSM 4.2. I'll review the post a mentioned in order to try to help you

Shinjo01x commented 4 years ago

I can't thank you enough! I m on dsm 6.2 and I guess that's why I can't find any http.conf.

Maybe we can use a messenger oder TeamViewer in oder to give it a try? I m a Linux noob, maybe that's part of the problem

smontys notifications@github.com schrieb am Mo., 18. Mai 2020, 15:51:

DSM 4.2. I'll review the post a mentioned in order to try to help you

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-630196749, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVCEAGUZTHUVNDSBF5TRSE4OZANCNFSM4LTSMYUA .

smontys commented 4 years ago

During the week at have less free time. Be patience.

smontys commented 4 years ago

Hi @Shinjo01x, Here there are step by step instrucctions for your case https://stackoverflow.com/a/55561347 Review them carefully and go ahead when you feel confortable. I think last step is not needed in your case. Or you can edit directly the files without looking for them with this instructions https://stackoverflow.com/a/30406531. Files should be located at

/etc/httpd/conf/httpd.conf
/etc/httpd/conf/httpd.conf-user
/etc/httpd/conf/httpd.conf-sys
/etc.defaults/httpd/conf/httpd.conf-user
/etc.defaults/httpd/conf/httpd.conf-sys

Try on your own but if you still encounter problems, we can try to arrange a Teamviewer meeting this weekend, but without responsabilities from my side.

Best luck!

Shinjo01x commented 4 years ago

Hi,

soooooo many THANK YOU! After so much reading and testing out things, I got it worked out. Cant thank you enough.

First I followed the instructions u posted to me. After that i reinstalled the habridge on port 80 and get Alexa to recocnize the devices again. Somehow I cant command the devices via voice command, but it works well if i tab them via the alexa app. But I found a solution for this. I just created groups in the alexa app with the ha bridge device in it. So I can voice command them again.

After all this I used to switch the syno ports again to 7770 , cause another docker container (unifi controller) listened on port 8880.

But now, all is up and running again.

TANK YOU, made my day.

Am Do., 21. Mai 2020 um 19:36 Uhr schrieb smontys <notifications@github.com

:

Hi @Shinjo01x https://github.com/Shinjo01x, Here there are step by step instrucctions for your case https://stackoverflow.com/a/55561347 Review them carefully and go ahead when you feel confortable. I think last step is not needed in your case. Or you can edit directly the files without looking for them with this instructions https://stackoverflow.com/a/30406531. Files should be located at

/etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf-user /etc/httpd/conf/httpd.conf-sys /etc.defaults/httpd/conf/httpd.conf-user /etc.defaults/httpd/conf/httpd.conf-sys

Try on your own but if you still encounter problems, we can try to arrange a Teamviewer meeting this weekend, but without responsabilities from my side.

Best luck!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/bwssytems/ha-bridge/issues/1190#issuecomment-632243971, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGTJVEN2TNLMEIAP6WRVS3RSVRDBANCNFSM4LTSMYUA .

smontys commented 4 years ago

You are welcome, happy to help someone. Good job!