-
Notifications
You must be signed in to change notification settings - Fork 125
SoulissApp API
Intents are Android asynchronous messages which allow application components to request functionality from other Android components. Intents allow the interaction with components from the same applications as well as with components contributed by other applications.
SoulissApp intents can be used from any other Android to interact with SoulissApp and with the Souliss network, so that external application can send commands and receive status.
There are several implementation of Itents in SoulissApp and has been designed to integrate with Automate and Tasker application for Android.
If you don't want to spend much time on the theory, skip Generic Intents and go directly to Automate and Tasker integration.
The following intents are available
PACKAGE | ACTION |
---|---|
it.angelic.soulissclient | it.angelic.soulissclient.SEND_COMMAND |
it.angelic.soulissclient | it.angelic.soulissclient.RAW_MACACO_DATA |
SEND_COMMAND
The SEND_COMMAND is used to issue a command through the DATA URI that should match the command as per Voice Commands as per below list:
[<toggle>|<turn on>|<turn off>|<open>|<close>] [deviceName+] [nodeName]
[sceneName]
-
[PING]
useful to force SoulissApp to get "connected" with the Gateway
As example, an Intent like the below one will turn on a light called Main Light in SoulissApp. You have to use the language setting for SoulissApp, the commands available in the supported languages are listed here.
PACKAGE = it.angelic.soulissclient
ACTION = it.angelic.soulissclient.SEND_COMMAND
DATA URI = turn on main light
You can use multiple deviceName in the same command, renaming your devices with a unique name is reccomended. Consider to don't use spaces in names if you have multiple devices with similar name.
RAW_MACACO_DATA
The RAW_MACACO_DATA is used to receive raw frames from the Souliss network, these can be used to identify the state of the network.
The Plugin is a special Intent case defined by Tasker and supported in many automation application for Android as Automate. Using the Plugin you can send command or receive state in Automate and Tasker.
Action Plugin (also called a Setting Plugin) will extend the number of things that a user can cause Tasker to do as execute a scenario, use the following syntax matching the language settings of SoulissApp.
[<toggle>|<turn on>|<turn off>|<open>|<close>] [deviceName+] [nodeName]
[sceneName]
-
[PING]
useful to force SoulissApp to get "connected" with the Gateway
This integration implements Tasker's Action Plugin. The plugin lets the user control soulissApp via String commands, pretty much like voice commands.
Find the Action Plugin in
Menu | |
---|---|
Automate | Apps, Plugin Action |
Tasker | Task, Plugin, SoulissApp |
Condition Plugins are designed to asynchronously reply to a user-specified query. The result value is a boolean, that specify if the given condition is true. Query must contain the desired status value, to let SoulissApp determine whether the condition is verified or not. For example, the query string "Dining Room Light On" would be true if the specified device's output is "On".
Find the Condition Plugin in
Menu | |
---|---|
Automate | Apps, Plugin Decision |
Tasker | Profile, Plugin, SoulissApp |
Additionally, the query includes the following variables, that will be visible in any tasks that run as a result of a change in plugin state.
%devicename - name of the matched device (if any)
%numtipici - total number of devices in the accessed Souliss network
%devicestatus - actual status of the recognized device (if any)
- Introduction
- Getting started
- User Interfaces
- Build your Souliss
- Examples
- Boards
- Interfaces
- Hacks
- Advanced
- Source Code
- Downloads
- Community