Co-Routines & Functions (Scripting Language for PCSkills)
Bioblaze Payne
Unknown
- 0 Collaborators
This is to allow for the Automation of Complex Series of Tasks across multiple applications, interfaces, and output methods. Expanding what Alexa is able to Handle via Specified `Trigger` & `Action` Words to handle Activation of Customizable Scripts to utilize complex functionality outside of the control of Alexa. ...learn more
Project status: Concept
Groups
Early Innovation for PC Skills
Intel Technologies
Other
Overview / Usage
This could be utilized by Anyone but geared/focused towards Engineers, Developers, and Content Creators to allow for 3rd Party Access to different information Endpoints, or activation of applications on the current or remote PC. The Idea is that you want to control more then just simply installing 1 Skill to do X 1 Skill to do Y, you can sit down and develop customized Setups for your Skill, what if you want a PCSkill to connect to a remote PC and then activate a script on your machine to execute a set of commands. Currently not do-able. This would solve that issue. Instead of simply asking for Directions, you can give your computer control and triggers, the ability to more then just send a email, the ability that you yourself are able to develop on and share.
Methodology / Approach
What i'm doing is setting a system of keywords
that reference in a switch case statement turning all json
like files within a set directory into a set of commands, each iteration of the object is the next step that needs to be done. For example Loop
would do something continously over and over again on a set timed interval. It could be something as easy sending a Restful API call to a 3rd party service, or as difficult as triggering a batch file that hourly uploads something after the Trigger/Command
was handled for the Json
File. Example I want to Launch "test.js" in Node and then send the console output every 3 seconds to a screen in squence for the duration of 30s. I would say Computer, Run NodeTest on Test.js
say I wanted the output to a file not the screen. Computer, run NodeTest on Test.js save to file
{
"body": {
"activator": "Computer",
"trigger": {
"cmd": [
{
"name": "run",
"sub": "nodetest",
"args": {
"type": "file"
},
"options": [
{
"name": "save",
"types": [
{
"name": "file",
"output": "${!script_dir}/output/${!date}-nodetest-${!file_name}.txt"
},
{
"name": "terminal",
"output": null,
"default": true
}
]
}
]
}
]
}
},
"loop": {
"delay": 3000,
"call": {
"output": "${!selected[options]}"
}
}
}
The idea is I would create the system for handling various types of commands that developers would utilize to create complex scripts to give more power too people who want to automate via voice. I would be using a combination of C# and Javascript(Node.js) using specifically edge.js for various types of input methods and controls. Monitor Folder for new files, validate files then add them to memory and cross check responses and handling for main trigger words/phrases.
Technologies Used
C#, Node.js, Javascript, Visual Studio, Atom.io, Json, XML, and a various setup of scripted things which may or may not be written in python depending on what OS that it is installed on. Amazon Web Service, Alexa Skill Kit, Alexa Skills SDK for .NET, Windows 10, Ubuntu 18.x, Bash, Powershell