SmartThings Community

Yale Smartphone Alarm System integration

yale
dth_security
project_security

(Daniel McDougall) #245

Are you sure it shouldn’t be

https://mob.yalehomesystem.co.uk/yapi/api/panel/mode?mode=arm&area=1


(Ash Stokes) #246

I get not found with that url :sweat:


(Andy Stokes) #247

Hi All,

New here but just managed to get the arm/disarm working with post man.

When you make the login request then request the services from the device, you receive a url with the server port…
{
“url”: “https://mob.yalehomesystem.co.uk:6013/yapi/api/”,
“server_port”: 6013,
“server_ip”: “mob.yalehomesystem.co.uk”,
“panel”: “xxxx”,
“server”: “vixen”,
“yapi”: “xxx”,
“email”: “xxxx”
}

(note: I had to blank out the yapi url above because I’m a new member and it won’t let me post more than 1 URL)

When you POST the update, use the URL returned here including the port…

Now I just need to figure out how to tie this all in to work with my alexa!

Hope the helps someone.


#248

Hi Andy,

Im new here also, and not very good at this.

Is there any chance of simple guide outlining an overview of how to configure/set up

Do i need some code?


(Andy Stokes) #249

I’ve only done this all through postman, no code has been written yet although I hope to do something to work on a windows IoT for rasberry pi when I get some time.

Some basic steps.

  1. Authenticate using the yale auth token found in the yale smart client project above - Add a header “Authorization” with Key “Basic VnVWWDZYVjlXSUNzVHJhcUVpdVNCUHBwZ3ZPakxUeXNsRU1LUHBjdTpkd3RPbE15WEtENUJ5ZW1GWHV0am55eGhrc0U3V0ZFY2p0dFcyOXRaSWNuWHlSWHFsWVBEZ1BSZE1xczF4R3VwVTlxa1o4UE5ubGlQanY5Z2hBZFFtMHpsM0h4V3dlS0ZBcGZzakpMcW1GMm1HR1lXRlpad01MRkw3MGR0bmNndQ==”
    In your body, set the “grant_type” to “password”, “username” to your yale username and “password” to your password.

This will return an access token, you will use this for the rest of the requests

  1. Get the services, this will return the URL you need for the get and set mode operations. This is done in GET mode
    The header will “Authorization” with a value of “Bearer + your access token”

  2. Now you can set the alarm using the same headers as above but post to the url + port in POST mode. Add the mode and area to your body form data.


(Ash Stokes) #250

Andy, welcome! second of all, you absolute beauty!! I’ve been racking my head trying to get that to work and hadn’t been able to… the good thing is I believe from testing this week and the HASS project the 6013 port is always the same so it should be one less variable!

I tested with your advice above and can arm/disarm & with the port it’s also grabbing the correct status of the alarm, so yeah now we just need to get it into a device handler… if I get time this weekend I’ll try and give it a go but very limited knowledge on Groovy so will need a lot of help from uncle Google!


(Andy Stokes) #251

Thanks :slight_smile: It was a very satisfying feeling when I heard the Yale hub beeping to my requests! It was a collaborative effort here to get it working though. Using what everyone discovered earlier made it much easier to figure out!


(Ash Stokes) #252

No worries! haha I can imagine, I was sat there so hopeful and never got it to go, then slackened off it nearer the end of the week…

Daniel Or Mark maybe able to help us on the device handler part, I’m not great with it at all, been trying to find another smartapp/handler with oAuth2 to see how the authentications written in.

Hopefully if we can get that sorted we can sort the contacts handlers, I used to use them a lot for when I couldn’t set the alarm if the dogs were in the rooms with PIR’s (big dog) I used to use webcore to send an SMS if it the sensor opened & location = away, so was useful for whilst i was at work!


(Daniel McDougall) #253

You guys are amazing. I will have a look at what you have done this weekend


(Ash Stokes) #254

Collective effort from everyone mate! Ah brill cheers mate, let us know if you need anything or want my creds to test or want me to test anything, I’ll also have a look at the code, but chances are I’ll not figure it out :sweat_smile: