Homey Community Forum

Homey scripting


#1

Hi everybody!

I don’t like visual programming, so I’d like to create workflows/etc using a “regular” programming language like JavaScript/TypeScript/Python/etc.
I’ve seen something called Homeyscript, is that the only option?


#2

http://homeyscript.athom.com/

Of course you could also write an app yourself in javascript:
https://apps.developer.athom.com/


#3

In practice yes, but this is also something that needs to be executed via the graphical interface. So it appears to be more for ‘one-offs’ or very specific (daily) reporting. (unless I am mistaking about it’s functionality of course :slight_smile: )


#4

Thanks for the responses!

Well, is there any way to implement the whole logic without a user interface?
It would be nice to have a possibility to add all the applications and devices via UI and then deploy my own application that uses those apps and devices to do my own things.
Is that possible using a regular Homey SDK? If that’s OK then I’ll build my app.


#5

From what I’ve seen, no.
Athom seriously seems to believe that everyone likes to poke on an Android or iOS phone (sorry Windows phone users!!) to set up domotica setups with the limitation of ‘If this then that else that’


#6

https://developer.athom.com/docs/api
You could create your own UI, https://developer.athom.com and the Athom-app work through the webapi too :slight_smile:


#7

If I could program, I would definiately would. :slight_smile:


#8

#9

Very funny :slight_smile:

I know javacript, python, a bit of perl and know my way in TCL, and can make small stuff in node.js. I just can’t program. Call me a code basher/scriptkiddy/whatever, but I’m far from being a programmer. Knowing the language is something else than being able to program. I miss that twist in my brain I suppose.


#10

There’s an app “https://apps.athom.com/app/nl.hdg.mqtt”, which (based on description) allows you to get notifications from devices / update device state.
So it looks like a regular Homey app can use all these things and it’s possible to create an app that manages the things without workflows.
In worst case I can use Homey API to run workflows, but I’d prefer to avoid that.


#11

HomeyScript is just JavaScript with a couple of global objects available.

I personally use it a lot with interactive scripts
But it is also possible to create a script that just does something and returns something. It can be started from a flow condition ( returning true or false) or as a action flow element.
Sharing your creative scripts on the wiki is encouraged