[Release] [Closed] Google Assistant Relay V1 - Google Home Audio Notifications!

Nope. The SDK doesn’t expose this and the SDK cant play music

1 Like

Can someone please confirm that broadcasting from this still works? I have a working assistant without working broadcasts. It was working fine, then things got pretty screwed up on my system after a dist-upgrade. It’d probably take longer to properly explain my situation than to figure out my issue, but I’d really appreciate the confirmation. I set the location in the Google Home app. Still scratching my head. Thanks!

Edit: I think it was just IPv6. Does everyone have that disabled here, or maybe just some ipv6 setups don’t work with this? I disabled on my router it and rebooted the Google Home devices. Now I can broadcast. A case of too many upgrades at once. Sorry to bother you.

No problem. Trust me, I was very, VERY frustrated with this problem for a while. Tried every proposed fix out there. It was dumb luck that I stumbled onto the current workaround.

I’ve been trying different IPv6 modes on my router to see if I can enable it at all and it doesn’t appear to work in any of the modes on my Netgear router.

I’m getting the following when I start. Anyone seen this before?

:~/assistant-relay-master $ npm run start

assistant-relay@1.0.1 start /home/pi/assistant-relay-master
node index.js

Fired up the SSDP Server for network discovery…
Firing up the Web Server for communication on address 192.168.85.10:3001
Attempted to automatically open the URL, but if it failed, copy/paste this in your browser:
https://accounts.google.com/o/oauth2/auth?access_type=
Paste your code: (node:7391) UnhandledPromiseRejectionWarning: Error: Exited with code 3
at ChildProcess.cp.once.code (/home/pi/assistant-relay-master/node_modules/opn/index.js:84:13)
at Object.onceWrapper (events.js:317:30)
at emitTwo (events.js:126:13)
at ChildProcess.emit (events.js:214:7)
at maybeClose (internal/child_process.js:925:16)
at Socket.stream.socket.on (internal/child_process.js:346:11)
at emitOne (events.js:116:13)
at Socket.emit (events.js:211:7)
at Pipe._handle.close [as _onclose] (net.js:557:12)
(node:7391) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:7391) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Yes, i got that as well. Just ignore it and got to the link to get your code. Then come back to Relay and paste your code in and hit enter. I know it looks funky but it will work in the long run. @ghesp and I have been trying to circle in on this one because he doesn’t see it. He thinks it might be a node version issue. But it should work fine if you just paste in your code and keep going. Mine did.

Can you try version 2?

How do I change the port on this version?

I figured it out.

It’s in \server\congfigurations\

But I now get:
^

Error: Error getting tokens:
at oauthClient.getToken (/home/pi/assistant-relay-2/node_modules/google-assistant/components/auth.js:75:24)
at /home/pi/assistant-relay-2/node_modules/google-auth-library/lib/auth/oauth2client.js:154:5
at Request._callback (/home/pi/assistant-relay-2/node_modules/google-auth-library/lib/transporters.js:106:7)
at Request.self.callback (/home/pi/assistant-relay-2/node_modules/request/request.js:185:22)
at emitTwo (events.js:126:13)
at Request.emit (events.js:214:7)
at Request. (/home/pi/assistant-relay-2/node_modules/request/request.js:1161:10)
at emitOne (events.js:116:13)
at Request.emit (events.js:211:7)
at IncomingMessage. (/home/pi/assistant-relay-2/node_modules/request/request.js:1083:12)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! assistant-relay@2.0.0 start: node server/app.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the assistant-relay@2.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /home/pi/.npm/_logs/2018-09-08T20_54_02_576Z-debug.log

Nevermind… I got it working… had a typo in the JSON secrets file… Runs like a charm again!!
I had to get some additional libraries from the dev channels, but it wasn’t a problem

Any ideas which ones?

yes…
had to run

sudo apt-get install gcc-5

after adding stretch (instead of jessie) in sudo nano /etc/apt/sources.list

@ghesp
Hello Greg, I have the GAR up and running on a Amazon server, and is working great, I even added login credentials in order to issue commands, so by that noone can send commands to the server without the proper credentials.

I think your GAR is great but I still cannot make it broadcast any messages.

I would like to set up some broadcast messages for my smart home like when my wife comes home to greet her with some sort of message but I wasn’t able to make that working.

Do you think you can help me getting that done by telling us (I think there are more people who cannot send broadcast) how we can make this happen?
By explaining to us step by step what we have to do?

I’m running it on a centos server, if that matters.

PS, I do not use smart things application as I made my own Android application to interact with the relay.

Ok, Ive completely rebuilt my Raspberry Pi and Im ready to add this back now and get it all set up again (woo hoo!). However I was wondering whether there was a specific version of Node that I needed to use, or whether it was all ok now and the various kinks had been ironed out… Ive had a scan of the thread and it seems people are doing different things, but is there a preferred/recommended? :slight_smile:
Thanks all!

You don’t ever mention what Google home devices you are trying to issue the broadcasts to and if those are on the same network as your assistant relay. You say you have it set up on an Amazon server? Like using AWS? That won’t work. It has to be resident on the same network as your Google home devices.

I’m using 8.9.4. If you want a quick and easy way to install any version, check this out:

1 Like

Depends, router could be set to VPN with his AWS environment, thus his EC2 instance.

Does anyone have a zip of this that they successfully installed from which they could share? The one on github now seems to missing some subdirs and wont allow the server to be installed…

Github works fine for me. Did you follow the instructions? I have a more detailed set that you could try.

1 Like

Wouldn’t it just be easier to run locally? The assistant SDK uses a very strange IP algorithm to determine what devices are in-network and which ones are not. As proven, you can’t have an IPv6 IP that shows you might possibly be in a different network than the relay. It seems that getting that to work would be a lot more involved than just installing a local instance of the relay server.

You can download the zip from GitHub
https://github.com/greghesp/assistant-relay/archive/v2.zip