Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
Sapphire-Assistant-Framework
An extensible framework for creating Android Assistants on-device. It does not require Google services or network connectivity
-
android-plugin-client-sdk-for-locale
Discontinued Implementation of plug-in API for Locale for clients
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Here's an example of an integration I did with this framework a few months back: https://github.com/KieronQuinn/TapTap/pull/20/files
The java locale plugin lib here ( check bottom of page for more technical documentation), and a sample here. Note that locale lib, does not have event support natively, only a condition, but it's provided by TaskerPlugin.java as an addition.
The termux app provides the Termux:Tasker plugin action. The user creates a tasker task and adds the plugin action to send a command to termux for execution, it is received by FireReceiver and forwarded to PluginResultsService, which sends it to termux-app TermuxService for execution, then result is received back via a PendingIntent, which is sent back to tasker. The documentation should be good enough to understand what's going on. The same plugin is also supported by other automation apps. Internally, locale lib is using intents. So basically, the user doesn't know the internal details of how commands are run, he just configures the plugin with the desired command and runs the task whenever he wants, and gets results back in tasker variables, depending on configuration. Note that in this case, the user runs the tasker task, the termux and its plugin does not initiate anything and aren't even running or waiting in the background.
I appreciate that you are willing to help, not many developers care as much as you do. My Github (https://github.com/Tadashi-Hikari/Sapphire-Assistant-Framework) is still a work in progress but the foundation is there, plus I've filled out some documentation. It might help you see what I am going for if you peak at it, but I totally understand if you do not want to. I know you are busy and your time is valuable, thanks again for reaching out
Lolz, yeah, natively it has issues with tasker integration. But my update for the locale lib solves them for the most part, it's a plug-and-play with it. Although, no repo link for build.gradle, I have to get it merged with upstream, when I can find the time of course, I think this life is way too short for the amount of things that are currently on my to-do list :p
When you configure a plugin, the plugin sends the EXTRA_STRING_BLURB string extra back to plugin host as a short description of the configuration to show to the user in the action edit screen. It's limited to max 60 characters, defined by maximum_blurb_length in plugin-host-sdk-for-locale.
The main locale libraries have links to their API Reference in their README. You would mainly need to focus on android-plugin-client-sdk-for-locale if you are building a plugin client for a plugin host.