Publish Alexa-skill files for DIY-solutions

I believe many users would like to set up their own alexa-skill like HASS offers with a paid subscription.

I really dont want to start a discussion about the new HASS-cloud/bridge. This is the decision of the dev-team and i respect that.

Every user should be able to decide which way he would like to go. The HASS-cloud is not my way.

You can easily set up your own skills and intents already, cloud is not a requirement, lots of documentation for it.

I dont think so. For me personally its not that simple. I read a bunch of tutoraials, but was not able to accomplish that i could use “Alexa, turn on the kitchen lights” like in a “native” alexa smart home skill.

Also i am not an experienced programmer like most hass-user, i believe.

Ah, I see what you mean. I think you have to say something like ‘Alexa ask home assistant to turn on the kitchen lights’

I think with the hass cloud option it works more natively.

Thats exactly what i want to avoid!

But i believe that the HASS-team wants to “force” users to use their cloud. By “force” i mean smth. like: “you dont need to use it, its absolute optional! but we will not tell you how to do it by yourself so you have to work with some half-working solutions”

To host the skills natively requires using the Amazon AWS Lambda service which requires an aws account.

So to do what you are asking for without using the hass cloud, you would need to write the lambda functions within aws and tie your alexa smart home skills to it. Your lambda function would then send it to hass for you. This is essentially what the hass cloud is doing for you, along with other things like querying your devices and providing states and such. There is the reason why the hass cloud cost some money, because there are actual costs every time an intent is fired.

The big thing is that the basic intents have to go to a specific AWS Lambda endpoint which is connected to an account that is billed when it is used. So even if the lambda code were all open source, you would have to create each of the lambda functions yourselves and upload the code, and connect your skills to them.

Hopefully that explains why the cloud has to be charged for and what the value of it is, the way alexa works just doesn’t allow it to be something that can easily be set up for each user. Someone could put together a framework to make it easier but it would be a ton of work and frankly I’d probably charge for it too!

So that said, these are the basics steps to do it yourself:

  • Create an AWS account
  • Set up AWS Lambda functions that connect to your hass instance for each of the skills you want (lights, media_players, etc.). There is sample code here: https://github.com/alexa/alexa-smarthome
  • Connect the smart home skills to them
  • ???
  • Profit!

Yes, i believe that the clound/bridge will cost money. I dont want to use the cloud, so i will const any traffic.

But why is there no source code published?

There are at least three well known open source home-automation suites with own skills on the german alexa store. Like opneHAB, domoticz and fehm. They are free to use and the sources could be found.

There is nothing saying they have to give their work away for free. They are looking for a way to pay for the ongoing project costs. Even the website we are posting this conversation on costs money, so who should pay for it? They have already contributed lots of work and effort into a project you are getting the benefits of so it is sounding at this point like you are just complaining that they aren’t doing more free work for you.

There is nothing preventing you or anyone else from developing the cloud components and giving them away. I bet the openhab repo would be a great starting point: https://github.com/openhab/openhab-alexa They have decent instructions for setting it up.

You dont get me. I dont want to discuss the moneymaking. Its legit! Point. Nothing to say any more.

I’am just asking the devs if they are willing to publish the code so everybody has the possibility to run alexa with HASS without the cloud.

Fair enough.

In a practical sense, I wonder how hard it would be to keep the AWS stuff up to date if you did do that, I don’t think it’s a straightforward update but who knows.

FWIW, I just wish the service was more like $3 a month which I think would be enough to bring in revenue and psychologically is a much smaller hurdle. $5 starts to feel like real money!

This is already a thing, and has been for a while. Multiple options here.

  • Emulated Hue (getting decomissioned at some point)
    Was a good start but only really enabled “on” and “off” switches for devices in HAss.

  • HA Bridge
    Pretty decent web ui config page that allows you to expose devices to Alexa, though requires a good look at the relevant wiki

  • Hasska
    What i’m currently using. Lots of different devices with a native feel. Currently written for the Smart Home V2 API which is now not a selectable option when creating a lambda function on AWS but there are two people working on separate forks to upgrade it to V3. These are mike-grant and bkryza.

So, there are multiple ways, just the best one is still being worked on being updated (though i believe both those forks are actually working now…)

EDIT:

Forgot to quote the FAQ as well which has links to the code information.

Bare in mind that as with any other skill, more or less all the voice processing on an Amazon Echo require the internet as the commands are processed in the cloud. You can’t have totally local offline hass voice control anyway.