Security butler skill


#1

I work for a security company that does a lot of customer work. We do things mainly with security cameras, perimeter detection and door access controls. I would like to use Mycroft as a kind of warning butler. Now i want to make a skill that incorporates tons of features including but not limited to letting me know when a cameras receives motion, doing a perimeter check and letting me know if everything is operational and not tripped, letting me know when a laser in a marked location is interrupted, motion sensors, and failed access attempts. This all seems like a lot to most be we already have a program that outputs all of this data. I would like to find a way to create a skill so that we can be alerted. I found a video on youtube relating to drones and how Mycroft states that something was triggered. I will put the video at the bottom. My question here for me who is not very familiar with coding is where can i get started to start creating this. I would like to be able to connect to a Picroft box via ip address and port then just upload the data. I would also need Mycroft to be able to translate whats its seeing and make sense of it to be able to put it into words. Are there any suggestions where i can start and any recommendations on the best way for me to take care of this? Any help would be much appreciated thank you!


#2

Hey Chris!

Welcome to Mycroft.

A good place to start is here on the forums and documentation:

We’re still adding a lot there, but you should be able to use the websocket to pass messages.


#3

Now Karl does Mycroft act as the initiator in the websocket or is it the listener? The only reasons i ask is because we want to send a constant stream of information to Mycroft and have it sort out the information once it gets there. We would like it to know evens are happening live.


#4

It should be the initiator as it creates the websocket to pass messages between different services. I just suggested it as a known way to get information around. You could also do anything you would like within your own code, for instance, create a websocket and listen to events.

Right now we’re still adding services that listen to events, but should have a good example soon using GPIO.


#5

Hey Chris,

That seems like a lot to do, but if the program for output already works it seems mostly like some tideous integration work you have to do. Good luck with that!

As I have invested quite some time in computer vision by now I can tell you that the second part (formulating what mycroft sees) will be a lot harder than the first part. The ad by/for dronecast was not a real application I guess as “detecting intruder and following by video input” is really tough. Not impossible though, I recommend to you the latest works of Google on deep neural networks for Image classification- that might give Mycroft a hint of what there is on the camera:

There even is work on automatically
remote controlling drones (at least for the parrot drone)
http://wiki.ros.org/tum_ardrone