julianh2o / RokuAlexaLambdaSkill

An Alexa Skill that allows voice control of your Roku
MIT License
104 stars 55 forks source link

Running the nodejs server on a raspberry pi #14

Closed onanov closed 7 years ago

onanov commented 7 years ago

I have this working perfectly with the node JS server runing on a windows box. However Ideally I would like it to run on a raspberry pi. should this be possible?

I tried running it and it threw an error cant find module ssdp - is there any reason that it cant run on the raspberry pi? suggestions welcome

jpkilman commented 7 years ago

I haven't tried this but my understanding is you can run a scaled down version of windows 10 on a pi. Might be worth a shot. I have a pi and will be trying this soon, will report back what I find out.

onanov commented 7 years ago

That's great, but what about running it on a Linux pi? I actually have it now running on a windows box as a service via qckwinsrv and it seems to work petty well, so the pi solution is a nice to have rather than essential.

All in all a really neat solution you have created. Top work.

One other question, do you have any suggestions which slot type to use for searches now that Amazon have deprecated the LITERAL slot type?

Thanks

Sent from my iPad

On 1 Jan 2017, at 22:47, jpkilman notifications@github.com wrote:

I haven't tried this but my understanding is you can run a scaled down version of windows 10 on a pi. Might be worth a shot. I have a pi and will be trying this soon, will report back what I find out.

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

jaknoll commented 7 years ago

I have it running in a container on a raspbian pi just fine, been running without issue for a month or two. You can modify my dockerfile for this project - just search for jaknoll on github to grab it

onanov commented 7 years ago

I am stretching my technical skills now, but I will take a look at docker and see if I can work it out.

Thanks again for some great code

Duncan

Sent from my iPad

On 1 Jan 2017, at 23:35, jaknoll notifications@github.com wrote:

I have it running in a container on a raspbian pi just fine, been running without issue for a month or two. You can modify my dockerfile for this project - just search for jaknoll on github to grab it

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

jaknoll commented 7 years ago

I took a a quick look to refresh my memory on the dockerfile and there's no modification necessary, you can just clone this project and then put my dockerfile into the root directory of the project. Then modify the project with your Alexa info and roku IP as the directions tell you to. Then from the root directory build the docker container (assuming you have docker installed) with the cmd 'sudo docker build -t julianh2o/rokuAlexarpi .'. The container will take a bit to build, but then you can run it with the commands I have in my readme. Just change the name of the container to julianh2o/rokuAlexarpi:latest.

If you want to run it as a service you can grab my service file and modify it, then enable and start the service with systemctl.

onanov commented 7 years ago

Thanks I'll give it a try

Duncan

Sent from my iPad

On 2 Jan 2017, at 12:40, jaknoll notifications@github.com wrote:

I took a a quick look to refresh my memory on the dockerfile and there's no modification necessary, you can just clone this project and then put my dockerfile into the root directory of the project. Then modify the project with your Alexa info and roku IP as the directions tell you to. Then from the root directory build the docker container (assuming you have docker installed) with the cmd 'sudo docker build -t julianh2o/rokuAlexarpi .'. The container will take a bit to build, but then you can run it with the commands I have in my readme. Just change the name of the container to julianh2o/rokuAlexarpi:latest.

If you want to run it as a service you can grab my service file and modify it, then enable and start the service with systemctl.

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

onanov commented 7 years ago

I think I may be looking in the wrong place https://github.com/jaknoll no sign of dockerfile in this repository.sorry to be a pain, but could you send me a link please

jaknoll commented 7 years ago

https://github.com/jaknoll/RokuAlexaLambdaSkill

onanov commented 7 years ago

Thanks

Sent from my iPad

On 2 Jan 2017, at 16:03, jaknoll notifications@github.com wrote:

https://github.com/jaknoll/RokuAlexaLambdaSkill

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

julianh2o commented 7 years ago

This will run just fine on a pi (that's where mine is running)

Just run npm install in the directory with the package.json file and then run it using node server.js Docker is unnecessary.

jaknoll commented 7 years ago

You're right, docker is not required. It is a nice tool though. The container is portable and should run on any pi. Creating a service out of the container or just the server.js is even better. Allows you to monitor it a bit better via systemctl status and you can enable it so the server starts automatically on reboot.

Either way, just another option :)

jpkilman commented 7 years ago

I was able to install the latest version of node js by downloading it using wget and the url and unpacking it in the /usr/local directory on raspbian. You will also need to install the ssdp client (npm install node-ssdp is the command) to get this working, but it is working fine and plugged in sitting behind my tv. Older versions of node don't support ssdp so I don't suggest performing an install without getting the latest.