How it works
Learn how AssistantComputerControl works behind the scenes
This little article is for those, who wish to know what's behind the software; how it works.
AssistantComputerControl (or ACC for short) is designed to be the middleman between an virtual assistant like Google Home or Amazon Alexa, and your computer. The software itself has nothing to do with any of the assistants - all it does is execute commands like, shutting down your computer, locking or restarting it; the rest is handled by IFTTT and Dropbox. Together, these three services brings your voice-commands, to your computer.
Without a service like IFTTT, ACC wouldn't be in contact with your assistant, and without a service like Dropbox, ACC wouldn't know if the assistant wanted to "interact". The default setup, and the original purpose of ACC, is to do it exactly like this, requiring IFTTT and Dropbox to work.
What ACC essentially does, is;
- Listen for new
.txt
files at a specific folder - Read the file
- Check if the contents match with a supported action
- Execute the action if recognized
There's not much more to it (functional-wise). The simplicity of this software, and the way it's designed, allows for a lot of customization, "hacking" and user-changes. You could use the software for something completely different than virtual assistants, you could make ACC listen for new files in a OneDrive or Google Drive folder instead of Dropbox or you could use some other service instead of IFTTT - the list of posibilities goes on.
More technical (code-stuff)
ACC is...
- Open source on GitHub!
- So far developed solely by one 17 year old Danish student
- Written in C# using Visual Studio as IDE & the built in WinForms (not WPF) for the UI
- Consisting of 15 scripts and 2459 lines of non-library (self-written) C# code (as of hotfix 1.0.2, 2018-07-21 21:46)
- Has a few web-scripts (HTML) behind it as well, for a better UI (used in the "Getting started" guide and "Test actions" UI)
- Uses a webserver to checking & hosting updates, all written in PHP & Json
- Awesome ;)
This is opensource software, and all code is available here on GitHub, and may be used in any way the user likes. Bug-reports, feature requests or suggestions are always very welcome!
Updated almost 7 years ago