I was inspired by a few things:
- the semi-recent trend of "twitch plays" livestreams, where twitch chat is integrated with a computer running something (pokemon, installing linux)
- the ever-increasing popularity of IoT devices
- the insurmountable yet rising security challenges that the IoT Creates.
What it does
Parses twitch chat, and if somebody sends a command, fulfills it. ive also set up a website, twitchplaysnesthome.com, to use as a way to inform people about the dangers of IoT, specifically as it relates to security
How I built it
first things first, we need a way to take info from the twitch chat. twitch runs its chat services off of IRC. for that i used pircbot, a freely available java API for IRC bots. after setting things up there i needed to have it actually do something. using leapdroid, an android emulator, i was able to set up keyboard macros to execute commands. last but not least, i used nests' home simulator to build a virtual house for the internet to play with
Challenges I ran into
I managed to spend a while trying to set up a python solution for the IRC interperetation. turns out it was made for 32 bit systems. but thankfully there was old faithful java. another major hurdle was ensuring that the output would work correctly.
Accomplishments that I'm proud of
a guy said it was "stoopid", so theres that. in all seriousness though i am proud that i was able to create something that could easily run for days on end uninterrupted. i also am proud about how i was able to constructively use what i view as a growing problem that, even with recent events such as the dyn DDOS attack, still isnt discussed as in depth as i would like it.
What I learned
i learned a few things:
1.incorporating another library and making it work to my needs 2.the weird, long process of getting a domain name 3.the twitch community is odd
- what goes on in the backend of streaming services like twitch
What's next for TwitchPlaysNest
- directly incorporate nest API for easier use, and more advanced commands (few in mind that didnt make the cut: set temp directly, not just by hitting up or down, turn on fire alarm remotely)
- support more of nests devices (smoke/carbon monoxide detector,security camera)
- gui that doesnt require access to twitch or nest for commands
- outlast Vine