<TaskerData sr="" dvi="1" tv="6.4.15">
<Profile sr="prof425" ve="2">
<cdate>1741542333325</cdate>
<edate>1741630110379</edate>
<flags>8</flags>
<id>425</id>
<mid0>403</mid0>
<nme>MCP Request Received</nme>
<pri>50</pri>
<Event sr="con0" ve="2">
<code>2089</code>
<pri>0</pri>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%http_request_body
Body
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%http_request_files()
Files
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%http_request_multipart_names()
Files
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%http_request_multipart_types()
Files
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4>%http_request_multipart_values()
Files
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5>%http_request_headers()
Headers
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6>%http_request_ip_address_v4
IP Address v4
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7>%http_request_method
Method
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8>%http_request_path
Path
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES9>%http_request_port
Port
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES9><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES10>%http_request_id
Request ID
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES10></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Int sr="arg1" val="1821"/>
<Str sr="arg2" ve="3">POST</Str>
<Str sr="arg3" ve="3">/run_task</Str>
<Str sr="arg4" ve="3"/>
<Int sr="arg5" val="30"/>
<Int sr="arg6" val="0"/>
<Str sr="arg7" ve="3"/>
</Event>
</Profile>
<Project sr="proj0" ve="2">
<cdate>1740795769088</cdate>
<name>mcp-server</name>
<pids>425</pids>
<tids>411,417,422,399,400,409,410,421,414,406,401,412,403,418,420,407,405,419,402,424,397,423,398,416,396,408,404,413,173,415</tids>
<ProfileVariable sr="pv0">
<clearout>false</clearout>
<exportval></exportval>
<immutable>false</immutable>
<pvci>false</pvci>
<pvd></pvd>
<pvdn></pvdn>
<pvid>10</pvid>
<pvit>pj</pvit>
<pvn>%tasker_api_key</pvn>
<pvt>t</pvt>
<strout>true</strout>
</ProfileVariable>
</Project>
<Task sr="task173">
<cdate>1741624990153</cdate>
<edate>1741630616832</edate>
<id>173</id>
<nme>MCP generate_api_key</nme>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">uuid</Str>
<Str sr="arg1" ve="3">UUID</Str>
<Str sr="arg2" ve="3">randomUUID
{UUID} ()</Str>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act1" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">bytes</Str>
<Str sr="arg1" ve="3">byte[]</Str>
<Str sr="arg2" ve="3">new
{byte[]} (int)</Str>
<Str sr="arg3" ve="3">16</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act10" ve="7">
<code>377</code>
<se>false</se>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%td_button
Button
The label of the button that was clicked</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">Generated API Key</Str>
<Str sr="arg2" ve="3">API Key: %tasker_api_key
Copy this, store it securely, and use it to configure the MCP server</Str>
<Str sr="arg3" ve="3">COPY</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Int sr="arg6" val="30"/>
<Int sr="arg7" val="0"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act11" ve="7">
<code>37</code>
<coll>false</coll>
<ConditionList sr="if">
<bool0>And</bool0>
<Condition sr="c0" ve="3">
<lhs>%td_button</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
<Condition sr="c1" ve="3">
<lhs>%td_button</lhs>
<op>0</op>
<rhs>COPY</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act12" ve="7">
<code>105</code>
<Str sr="arg0" ve="3">%tasker_api_key</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg2" ve="3"/>
<Int sr="arg3" val="1"/>
</Action>
<Action sr="act2" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">bb</Str>
<Str sr="arg1" ve="3">ByteBuffer</Str>
<Str sr="arg2" ve="3">wrap
{ByteBuffer} (byte[])</Str>
<Str sr="arg3" ve="3">bytes</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act3" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">msb</Str>
<Str sr="arg1" ve="3">uuid</Str>
<Str sr="arg2" ve="3">getMostSignificantBits
{long} ()</Str>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act4" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">lsb</Str>
<Str sr="arg1" ve="3">uuid</Str>
<Str sr="arg2" ve="3">getLeastSignificantBits
{long} ()</Str>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act5" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">bb</Str>
<Str sr="arg1" ve="3">bb</Str>
<Str sr="arg2" ve="3">putLong
{ByteBuffer} (long)</Str>
<Str sr="arg3" ve="3">msb</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act6" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">bb</Str>
<Str sr="arg1" ve="3">bb</Str>
<Str sr="arg2" ve="3">putLong
{ByteBuffer} (long)</Str>
<Str sr="arg3" ve="3">lsb</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act7" ve="7">
<code>664</code>
<label>NO_PADDING = 1, URL_SAFE = 8</label>
<Str sr="arg0" ve="3">%secret</Str>
<Str sr="arg1" ve="3">Base64</Str>
<Str sr="arg2" ve="3">encodeToString
{String} (byte[], int)</Str>
<Str sr="arg3" ve="3">bytes</Str>
<Str sr="arg4" ve="3">9</Str>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act8" ve="7">
<code>598</code>
<Str sr="arg0" ve="3">%secret</Str>
<Str sr="arg1" ve="3">\n</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3"/>
<Int sr="arg6" val="1"/>
<Str sr="arg7" ve="3"/>
</Action>
<Action sr="act9" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%tasker_api_key</Str>
<Str sr="arg1" ve="3">tk_%secret</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="0"/>
</Action>
</Task>
<Task sr="task396">
<cdate>1740942789399</cdate>
<edate>1741522611859</edate>
<id>396</id>
<nme>MCP Set Volume</nme>
<pc>Sets the phone media volume level.</pc>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>307</code>
<Int sr="arg0">
<var>%level</var>
</Int>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%level</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>The media volume level to set (0-15). max equals 15, min equals 1.</pvd>
<pvdn>level</pvdn>
<pvid>320</pvid>
<pvit>t</pvit>
<pvn>%level</pvn>
<pvt>n</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task397">
<cdate>1740942857557</cdate>
<edate>1741522604065</edate>
<id>397</id>
<nme>MCP Get Volume</nme>
<pc>Retrieves the current phone media volume level.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">%VOLM</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
</Task>
<Task sr="task398">
<cdate>1740957535727</cdate>
<edate>1741542437736</edate>
<id>398</id>
<nme>MCP Print</nme>
<pc>Prints a document on the phone.</pc>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>37</code>
<coll>false</coll>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%path</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act2" ve="7">
<code>365</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%content_uri
Content URI
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">FilePathToContentUri(%path)</Str>
</Action>
<Action sr="act3" ve="7">
<code>548</code>
<on>false</on>
<Str sr="arg0" ve="3">%content_uri</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3"/>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="1"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
</Action>
<Action sr="act4" ve="7">
<code>940160580</code>
<on>false</on>
<Bundle sr="arg0">
<Vals sr="val">
<IntentAction>SEND</IntentAction>
<IntentAction-type>java.lang.String</IntentAction-type>
<IntentApp>AutoShare</IntentApp>
<IntentApp-type>java.lang.String</IntentApp-type>
<IntentData><null></IntentData>
<IntentData-type>java.lang.String</IntentData-type>
<IntentMimeType>application/pdf</IntentMimeType>
<IntentMimeType-type>java.lang.String</IntentMimeType-type>
<android.intent.extra.STREAMSEND>(Uri) %content_uri</android.intent.extra.STREAMSEND>
<android.intent.extra.STREAMSEND-type>java.lang.String</android.intent.extra.STREAMSEND-type>
<android.intent.extra.SUBJECTSEND><null></android.intent.extra.SUBJECTSEND>
<android.intent.extra.SUBJECTSEND-type>java.lang.String</android.intent.extra.SUBJECTSEND-type>
<android.intent.extra.TEXTSEND><null></android.intent.extra.TEXTSEND>
<android.intent.extra.TEXTSEND-type>java.lang.String</android.intent.extra.TEXTSEND-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Package: org.mopria.printplugin
Class: org.mopria.printplugin.ShareToPrintActivity
App: AutoShare
Action: Share
MimeType: application/pdf
File: (Uri) %content_uri</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<configclass>org.mopria.printplugin.ShareToPrintActivity</configclass>
<configclass-type>java.lang.String</configclass-type>
<configpackage>org.mopria.printplugin</configpackage>
<configpackage-type>java.lang.String</configpackage-type>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%err
Error Code
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%errmsg
Error Message
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>IntentApp configpackage configclass IntentAction IntentMimeType android.intent.extra.STREAMSEND plugininstanceid plugintypeid </net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
<plugininstanceid>921a16a1-c5f4-472a-9921-2f291078ddcb</plugininstanceid>
<plugininstanceid-type>java.lang.String</plugininstanceid-type>
<plugintypeid>com.joaomgcd.autoshare.intent.IntentShare</plugintypeid>
<plugintypeid-type>java.lang.String</plugintypeid-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.joaomgcd.autoshare</Str>
<Str sr="arg2" ve="3">com.joaomgcd.autoshare.activity.ActivityConfigShare</Str>
<Int sr="arg3" val="10"/>
<Int sr="arg4" val="1"/>
</Action>
<Action sr="act5" ve="7">
<code>877</code>
<Str sr="arg0" ve="3">android.intent.action.SEND</Str>
<Int sr="arg1" val="1"/>
<Str sr="arg2" ve="3">application/pdf</Str>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3">android.intent.extra.STREAM:(Uri)%content_uri</Str>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3">org.mopria.printplugin</Str>
<Str sr="arg8" ve="3">org.mopria.printplugin.ShareToPrintActivity</Str>
<Int sr="arg9" val="1"/>
</Action>
<Action sr="act6" ve="7">
<code>30</code>
<Int sr="arg0" val="0"/>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act7" ve="7">
<code>107361459</code>
<Bundle sr="arg0">
<Vals sr="val">
<EnableDisableAccessibilityService><null></EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<Password><null></Password>
<Password-type>java.lang.String</Password-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Actions To Perform: click(id,com.android.printspooler:id/print_button)
Not In AutoInput: true
Not In Tasker: true
Separator: ,
Check Millis: 1000</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS>parameters</net.dinglisch.android.tasker.JSON_ENCODED_KEYS>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>java.lang.String</net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%ailastbounds
Last Bounds
Bounds (left,top,right,bottom) of the item that the action last interacted with</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%ailastcoordinates
Last Coordinates
Center coordinates (x,y) of the item that the action last interacted with</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%err
Error Code
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%errmsg
Error Message
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>parameters plugininstanceid plugintypeid </net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
<parameters>{"_action":"click(id,com.android.printspooler:id/print_button)","_additionalOptions":{"checkMs":"1000","preActionDelay":"","separator":",","withCoordinates":false},"_whenToPerformAction":{"notInAutoInput":true,"notInTasker":true},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>5582ecbc-28b1-4b00-af94-d6d7501eae77</plugininstanceid>
<plugininstanceid-type>java.lang.String</plugininstanceid-type>
<plugintypeid>com.joaomgcd.autoinput.intent.IntentActionv2</plugintypeid>
<plugintypeid-type>java.lang.String</plugintypeid-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.joaomgcd.autoinput</Str>
<Str sr="arg2" ve="3">com.joaomgcd.autoinput.activity.ActivityConfigActionv2</Str>
<Int sr="arg3" val="60"/>
<Int sr="arg4" val="1"/>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>The path to the document to print.</pvd>
<pvdn>path</pvdn>
<pvid>322</pvid>
<pvit>t</pvit>
<pvn>%path</pvn>
<pvt>f</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task399">
<cdate>1740961618833</cdate>
<edate>1741522552121</edate>
<id>399</id>
<nme>MCP Set Clipboard</nme>
<pc>Sets the phone clipboard.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>105</code>
<Str sr="arg0" ve="3">%text</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg2" ve="3"/>
<Int sr="arg3" val="0"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%text</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>The text to set the phone clipboard to.</pvd>
<pvdn>text</pvdn>
<pvid>323</pvid>
<pvit>t</pvit>
<pvn>%text</pvn>
<pvt>t</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task400">
<cdate>1740961618833</cdate>
<edate>1741522547275</edate>
<id>400</id>
<nme>MCP Get Clipboard</nme>
<pc>Retrieves the current phone text clipboard.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>402</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%cl_extras
Extras
Optional extra info in JSON format that the clipboard may contains</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%cl_html_text
HTML Text
Current clipboard text if set as HTML text</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%cl_image_uri
Image URI
If the URI corresponds to an image, this will have a value</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%cl_mimetypes()
Mime Type
The types of data that the clipboard contains</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4>%cl_text
Text
Current clipboard text</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5>%cl_uri
URI
Current clipboard URI (could be image or something else)</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
</Action>
<Action sr="act2" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%cl_text</lhs>
<op>9</op>
<rhs>\%cl_text</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act3" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">%cl_text</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
</Task>
<Task sr="task401">
<cdate>1740961810062</cdate>
<edate>1741593501037</edate>
<id>401</id>
<nme>MCP List Files</nme>
<pc>Retrieves the list of files on the phone's Documents folder.</pc>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>412</code>
<Str sr="arg0" ve="3">Documents</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3">%files</Str>
<Int sr="arg6" val="1"/>
</Action>
<Action sr="act2" ve="7">
<code>592</code>
<Str sr="arg0" ve="3">%files</Str>
<Str sr="arg1" ve="3">
</Str>
<Int sr="arg2" val="0"/>
</Action>
<Action sr="act3" ve="7">
<code>548</code>
<Str sr="arg0" ve="3">%files</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3"/>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="1"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%caller()</lhs>
<op>2</op>
<rhs>ui</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act4" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">%files</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
</Task>
<Task sr="task402">
<cdate>1740962988274</cdate>
<edate>1741522496985</edate>
<id>402</id>
<nme>MCP Lamp ON</nme>
<pc>Turns the bedroom lamp on.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>189227986</code>
<label>Lamp ON</label>
<Bundle sr="arg0">
<Vals sr="val">
<com.twofortyfouram.locale.intent.extra.BLURB>Device: Bedside Lamp, Action: ON</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<com.yeelight.tasker.extra.ACTION>ON</com.yeelight.tasker.extra.ACTION>
<com.yeelight.tasker.extra.ACTION-type>java.lang.String</com.yeelight.tasker.extra.ACTION-type>
<com.yeelight.tasker.extra.DEVICE_ID>685734476</com.yeelight.tasker.extra.DEVICE_ID>
<com.yeelight.tasker.extra.DEVICE_ID-type>java.lang.String</com.yeelight.tasker.extra.DEVICE_ID-type>
<com.yeelight.tasker.extra.DEVICE_TYPE>type_device</com.yeelight.tasker.extra.DEVICE_TYPE>
<com.yeelight.tasker.extra.DEVICE_TYPE-type>java.lang.String</com.yeelight.tasker.extra.DEVICE_TYPE-type>
<com.yeelight.tasker.extra.INT_VERSION_CODE>35402</com.yeelight.tasker.extra.INT_VERSION_CODE>
<com.yeelight.tasker.extra.INT_VERSION_CODE-type>java.lang.Integer</com.yeelight.tasker.extra.INT_VERSION_CODE-type>
<com.yeelight.tasker.extra.PARAM></com.yeelight.tasker.extra.PARAM>
<com.yeelight.tasker.extra.PARAM-type>java.lang.String</com.yeelight.tasker.extra.PARAM-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>com.yeelight.tasker.extra.PARAM</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.yeelight.cherry</Str>
<Str sr="arg2" ve="3">com.yeelight.yeelib_tasker.ui.TaskerEditActivity</Str>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="1"/>
</Action>
</Task>
<Task sr="task403">
<cdate>1740811870335</cdate>
<edate>1741630110379</edate>
<id>403</id>
<nme>MCP perform_task</nme>
<pri>51</pri>
<rty>2</rty>
<Action sr="act0" ve="7">
<code>61</code>
<Int sr="arg0" val="200"/>
</Action>
<Action sr="act1" ve="7">
<code>130</code>
<on>false</on>
<Str sr="arg0" ve="3">MCP print_extras</Str>
<Int sr="arg1">
<var>%priority</var>
</Int>
<Int sr="arg10" val="1"/>
<Str sr="arg2" ve="3"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Int sr="arg5" val="0"/>
<Int sr="arg6" val="1"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act10" ve="7">
<code>130</code>
<Str sr="arg0" ve="3">%task_name</Str>
<Int sr="arg1">
<var>%priority</var>
</Int>
<Int sr="arg10" val="1"/>
<Str sr="arg2" ve="3">%task_arguments</Str>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3">%task_result</Str>
<Int sr="arg5" val="0"/>
<Int sr="arg6" val="0"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act11" ve="7">
<code>43</code>
</Action>
<Action sr="act12" ve="7">
<code>130</code>
<Str sr="arg0" ve="3">%task_name</Str>
<Int sr="arg1">
<var>%priority+1</var>
</Int>
<Int sr="arg10" val="1"/>
<Str sr="arg2" ve="3"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3">%task_result</Str>
<Int sr="arg5" val="0"/>
<Int sr="arg6" val="0"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act13" ve="7">
<code>38</code>
</Action>
<Action sr="act14" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%task_result</lhs>
<op>1</op>
<rhs>\%task_result</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act15" ve="7">
<code>380</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""/></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">%http_request_id</Str>
<Str sr="arg2" ve="3">200</Str>
<Str sr="arg3" ve="3"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3">%task_result</Str>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act16" ve="7">
<code>43</code>
</Action>
<Action sr="act17" ve="7">
<code>380</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""/></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">%http_request_id</Str>
<Str sr="arg2" ve="3">200</Str>
<Str sr="arg3" ve="3"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act18" ve="7">
<code>38</code>
</Action>
<Action sr="act19" ve="7">
<code>43</code>
</Action>
<Action sr="act2" ve="7">
<code>37</code>
<ConditionList sr="if">
<bool0>Or</bool0>
<Condition sr="c0" ve="3">
<lhs>%tasker_api_key</lhs>
<op>0</op>
<rhs>\%tasker_api_key</rhs>
</Condition>
<Condition sr="c1" ve="3">
<lhs>%http_request_headers()</lhs>
<op>5</op>
<rhs>%tasker_api_key</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act20" ve="7">
<code>380</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""/></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">%http_request_id</Str>
<Str sr="arg2" ve="3">404</Str>
<Str sr="arg3" ve="3"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act21" ve="7">
<code>38</code>
</Action>
<Action sr="act3" ve="7">
<code>380</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""/></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">%http_request_id</Str>
<Str sr="arg2" ve="3">403</Str>
<Str sr="arg3" ve="3"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act4" ve="7">
<code>137</code>
<Int sr="arg0" val="0"/>
<Str sr="arg1" ve="3"/>
</Action>
<Action sr="act5" ve="7">
<code>38</code>
</Action>
<Action sr="act6" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%task_name</Str>
<Str sr="arg1" ve="3">%name</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%name</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act7" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%task_arguments</Str>
<Str sr="arg1" ve="3">%arguments</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%arguments</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act8" ve="7">
<code>37</code>
<ConditionList sr="if">
<bool0>And</bool0>
<Condition sr="c0" ve="3">
<lhs>%task_name</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
<Condition sr="c1" ve="3">
<lhs>%task_name</lhs>
<op>1</op>
<rhs>\%task_name</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act9" ve="7">
<code>37</code>
<coll>false</coll>
<ConditionList sr="if">
<bool0>And</bool0>
<Condition sr="c0" ve="3">
<lhs>%task_arguments</lhs>
<op>12</op>
<rhs>%task_arguments</rhs>
</Condition>
<Condition sr="c1" ve="3">
<lhs>%task_arguments</lhs>
<op>1</op>
<rhs>\%task_arguments</rhs>
</Condition>
</ConditionList>
</Action>
</Task>
<Task sr="task404">
<cdate>1740963031937</cdate>
<edate>1741522495824</edate>
<id>404</id>
<nme>MCP Lamp OFF</nme>
<pc>Turns the bedroom lamp off.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>189227986</code>
<Bundle sr="arg0">
<Vals sr="val">
<com.twofortyfouram.locale.intent.extra.BLURB>Device: Bedside Lamp, Action: OFF</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<com.yeelight.tasker.extra.ACTION>OFF</com.yeelight.tasker.extra.ACTION>
<com.yeelight.tasker.extra.ACTION-type>java.lang.String</com.yeelight.tasker.extra.ACTION-type>
<com.yeelight.tasker.extra.DEVICE_ID>685734476</com.yeelight.tasker.extra.DEVICE_ID>
<com.yeelight.tasker.extra.DEVICE_ID-type>java.lang.String</com.yeelight.tasker.extra.DEVICE_ID-type>
<com.yeelight.tasker.extra.DEVICE_TYPE>type_device</com.yeelight.tasker.extra.DEVICE_TYPE>
<com.yeelight.tasker.extra.DEVICE_TYPE-type>java.lang.String</com.yeelight.tasker.extra.DEVICE_TYPE-type>
<com.yeelight.tasker.extra.INT_VERSION_CODE>35402</com.yeelight.tasker.extra.INT_VERSION_CODE>
<com.yeelight.tasker.extra.INT_VERSION_CODE-type>java.lang.Integer</com.yeelight.tasker.extra.INT_VERSION_CODE-type>
<com.yeelight.tasker.extra.PARAM></com.yeelight.tasker.extra.PARAM>
<com.yeelight.tasker.extra.PARAM-type>java.lang.String</com.yeelight.tasker.extra.PARAM-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>com.yeelight.tasker.extra.PARAM</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.yeelight.cherry</Str>
<Str sr="arg2" ve="3">com.yeelight.yeelib_tasker.ui.TaskerEditActivity</Str>
<Int sr="arg3" val="1"/>
<Int sr="arg4" val="1"/>
</Action>
</Task>
<Task sr="task405">
<cdate>1740963538576</cdate>
<edate>1741522490784</edate>
<id>405</id>
<nme>MCP Play Music</nme>
<pc>Plays music on the phone.</pc>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>547</code>
<on>false</on>
<Str sr="arg0" ve="3">%query</Str>
<Str sr="arg1" ve="3">pokemon red ost</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%caller()</lhs>
<op>2</op>
<rhs>ui</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act10" ve="7">
<code>43</code>
</Action>
<Action sr="act11" ve="7">
<code>20</code>
<App sr="arg0">
<appClass>com.google.android.apps.youtube.music.activities.MusicActivity</appClass>
<appPkg>com.google.android.apps.youtube.music</appPkg>
<label>YouTube Music</label>
</App>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
</Action>
<Action sr="act12" ve="7">
<code>30</code>
<Int sr="arg0" val="500"/>
<Int sr="arg1" val="0"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act13" ve="7">
<code>940160580</code>
<Bundle sr="arg0">
<Vals sr="val">
<IntentAction>SEARCH</IntentAction>
<IntentAction-type>java.lang.String</IntentAction-type>
<IntentApp>AutoShare</IntentApp>
<IntentApp-type>java.lang.String</IntentApp-type>
<IntentData><null></IntentData>
<IntentData-type>java.lang.String</IntentData-type>
<IntentMimeType><null></IntentMimeType>
<IntentMimeType-type>java.lang.String</IntentMimeType-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Package: com.google.android.apps.youtube.music
Class: com.google.android.apps.youtube.music.activities.MusicActivity
App: AutoShare
Action: Search
Query: %query</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<configclass>com.google.android.apps.youtube.music.activities.MusicActivity</configclass>
<configclass-type>java.lang.String</configclass-type>
<configpackage>com.google.android.apps.youtube.music</configpackage>
<configpackage-type>java.lang.String</configpackage-type>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%err
Error Code
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%errmsg
Error Message
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>IntentApp configpackage configclass IntentAction querySEARCH plugininstanceid plugintypeid </net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
<plugininstanceid>c1f454d5-b5b5-41a3-9502-f1356a74a956</plugininstanceid>
<plugininstanceid-type>java.lang.String</plugininstanceid-type>
<plugintypeid>com.joaomgcd.autoshare.intent.IntentShare</plugintypeid>
<plugintypeid-type>java.lang.String</plugintypeid-type>
<querySEARCH>%query</querySEARCH>
<querySEARCH-type>java.lang.String</querySEARCH-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.joaomgcd.autoshare</Str>
<Str sr="arg2" ve="3">com.joaomgcd.autoshare.activity.ActivityConfigShare</Str>
<Int sr="arg3" val="5"/>
<Int sr="arg4" val="1"/>
</Action>
<Action sr="act14" ve="7">
<code>30</code>
<Int sr="arg0" val="500"/>
<Int sr="arg1" val="0"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act15" ve="7">
<code>1040876951</code>
<Bundle sr="arg0">
<Vals sr="val">
<AppPackage>com.google.android.apps.youtube.music</AppPackage>
<AppPackage-type>java.lang.String</AppPackage-type>
<EnableDisableAccessibilityService><null></EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<IsFirstAction>false</IsFirstAction>
<IsFirstAction-type>java.lang.Boolean</IsFirstAction-type>
<OnlyClickable>false</OnlyClickable>
<OnlyClickable-type>java.lang.Boolean</OnlyClickable-type>
<OnlyVisible>true</OnlyVisible>
<OnlyVisible-type>java.lang.Boolean</OnlyVisible-type>
<Password><null></Password>
<Password-type>java.lang.String</Password-type>
<Regex>false</Regex>
<Regex-type>java.lang.Boolean</Regex-type>
<UIUpdateFields>com.google.android.apps.youtube.music:id/second_entity_button=:=save,com.google.android.apps.youtube.music:id/first_entity_button=:=play</UIUpdateFields>
<UIUpdateFields-type>java.lang.String</UIUpdateFields-type>
<UIUpdateText><null></UIUpdateText>
<UIUpdateText-type>java.lang.String</UIUpdateText-type>
<com.twofortyfouram.locale.intent.extra.BLURB>App Package: com.google.android.apps.youtube.music
Variables: save, play
Only Visible: true</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%aiapp
App Name
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%aicoordinates()
Element Coordinates
List of coordinates in the x,y format</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%aiid()
Element Ids
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%aipackage
App Package Name
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4>%aitext()
Element Texts
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5>%play
play
play</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6>%save
save
save</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7>%err
Error Code
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8>%errmsg
Error Message
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>AppPackage UIUpdateFields plugininstanceid plugintypeid </net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
<plugininstanceid>c3d9709d-f1fd-49e9-b749-455b2925dfef</plugininstanceid>
<plugininstanceid-type>java.lang.String</plugininstanceid-type>
<plugintypeid>com.joaomgcd.autoinput.intent.IntentUIQuery</plugintypeid>
<plugintypeid-type>java.lang.String</plugintypeid-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.joaomgcd.autoinput</Str>
<Str sr="arg2" ve="3">com.joaomgcd.autoinput.activity.ActivityConfigUIQuery</Str>
<Int sr="arg3" val="3"/>
<Int sr="arg4" val="1"/>
</Action>
<Action sr="act16" ve="7">
<code>37</code>
<ConditionList sr="if">
<bool0>And</bool0>
<Condition sr="c0" ve="3">
<lhs>%play</lhs>
<op>0</op>
<rhs>Play</rhs>
</Condition>
<Condition sr="c1" ve="3">
<lhs>%save</lhs>
<op>0</op>
<rhs>Save</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act17" ve="7">
<code>107361459</code>
<se>false</se>
<Bundle sr="arg0">
<Vals sr="val">
<EnableDisableAccessibilityService><null></EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<Password><null></Password>
<Password-type>java.lang.String</Password-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Actions To Perform: click(id,com.google.android.apps.youtube.music:id/first_entity_button)
Not In AutoInput: true
Not In Tasker: true
Separator: ,
Check Millis: 1000</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS>parameters</net.dinglisch.android.tasker.JSON_ENCODED_KEYS>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>java.lang.String</net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%ailastbounds
Last Bounds
Bounds (left,top,right,bottom) of the item that the action last interacted with</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%ailastcoordinates
Last Coordinates
Center coordinates (x,y) of the item that the action last interacted with</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%err
Error Code
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%errmsg
Error Message
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>parameters plugininstanceid plugintypeid </net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
<parameters>{"_action":"click(id,com.google.android.apps.youtube.music:id/first_entity_button)","_additionalOptions":{"checkMs":"1000","separator":",","withCoordinates":false},"_whenToPerformAction":{"notInAutoInput":true,"notInTasker":true,"textMustBePresent":""},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>c84806a3-f4ba-4618-9df5-4ff5aa5726d6</plugininstanceid>
<plugininstanceid-type>java.lang.String</plugininstanceid-type>
<plugintypeid>com.joaomgcd.autoinput.intent.IntentActionv2</plugintypeid>
<plugintypeid-type>java.lang.String</plugintypeid-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.joaomgcd.autoinput</Str>
<Str sr="arg2" ve="3">com.joaomgcd.autoinput.activity.ActivityConfigActionv2</Str>
<Int sr="arg3" val="1"/>
<Int sr="arg4" val="1"/>
</Action>
<Action sr="act18" ve="7">
<code>43</code>
</Action>
<Action sr="act19" ve="7">
<code>107361459</code>
<Bundle sr="arg0">
<Vals sr="val">
<EnableDisableAccessibilityService><null></EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<Password><null></Password>
<Password-type>java.lang.String</Password-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Actions To Perform: click(id,com.google.android.apps.youtube.music:id/generic_button_text_item=:=Songs)
click(id,com.google.android.apps.youtube.music:id/subtitle)
Not In AutoInput: true
Not In Tasker: true
Separator: ,
Check Millis: 1000</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS>parameters</net.dinglisch.android.tasker.JSON_ENCODED_KEYS>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>java.lang.String</net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%ailastbounds
Last Bounds
Bounds (left,top,right,bottom) of the item that the action last interacted with</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%ailastcoordinates
Last Coordinates
Center coordinates (x,y) of the item that the action last interacted with</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%err
Error Code
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%errmsg
Error Message
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>parameters plugininstanceid plugintypeid </net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
<parameters>{"_action":"click(id,com.google.android.apps.youtube.music:id/generic_button_text_item=:=Songs)\n\nclick(id,com.google.android.apps.youtube.music:id/subtitle)","_additionalOptions":{"checkMs":"1000","separator":",","withCoordinates":false},"_whenToPerformAction":{"notInAutoInput":true,"notInTasker":true,"textMustBePresent":""},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>c84806a3-f4ba-4618-9df5-4ff5aa5726d6</plugininstanceid>
<plugininstanceid-type>java.lang.String</plugininstanceid-type>
<plugintypeid>com.joaomgcd.autoinput.intent.IntentActionv2</plugintypeid>
<plugintypeid-type>java.lang.String</plugintypeid-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.joaomgcd.autoinput</Str>
<Str sr="arg2" ve="3">com.joaomgcd.autoinput.activity.ActivityConfigActionv2</Str>
<Int sr="arg3" val="4"/>
<Int sr="arg4" val="1"/>
</Action>
<Action sr="act2" ve="7">
<code>348</code>
<Int sr="arg0" val="5"/>
<Str sr="arg1" ve="3"/>
<Str sr="arg2" ve="3">%locked</Str>
</Action>
<Action sr="act20" ve="7">
<code>38</code>
</Action>
<Action sr="act21" ve="7">
<code>38</code>
</Action>
<Action sr="act22" ve="7">
<code>877</code>
<on>false</on>
<Str sr="arg0" ve="3">android.media.action.MEDIA_PLAY_FROM_SEARCH</Str>
<Int sr="arg1" val="1"/>
<Str sr="arg2" ve="3"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3">android.intent.extra.focus:vnd.android.cursor.item/*</Str>
<Str sr="arg5" ve="3">query:%par1</Str>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3">com.google.android.apps.youtube.music</Str>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
</Action>
<Action sr="act3" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%locked</lhs>
<op>0</op>
<rhs>true</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act4" ve="7">
<code>658527372</code>
<Bundle sr="arg0">
<Vals sr="val">
<com.twofortyfouram.locale.intent.extra.BLURB>URL: https://music.youtube.com/search?q=%query
CSS Queries: a.yt-simple-endpoint()=:=href
Output HTML: true
Use Javascript: true
Javascript Delay: 5000
Request Desktop Website: true</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS>parameters</net.dinglisch.android.tasker.JSON_ENCODED_KEYS>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>java.lang.String</net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%a_ytsimpleendpoint()
a_ytsimpleendpoint()
a_ytsimpleendpoint()</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%atcount()
Number Of Results
Number of results read from HTML</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%err
Error Code
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%errmsg
Error Message
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>parameters plugininstanceid plugintypeid </net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
<parameters>{"htmlReadAdvanced":{"htmlReadJavascriptDelay":"5000","htmlReadRequestDesktopWebsite":true,"htmlReadUseJavascript":true},"htmlReadCCSQuery":"a.yt-simple-endpoint()=:=href","htmlReadUrl":"https://music.youtube.com/search?q=%query","htmlReadVarNames":"","outputHtml":true,"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>d5c1cafd-0598-493a-ba5b-1ea1e7124eb4</plugininstanceid>
<plugininstanceid-type>java.lang.String</plugininstanceid-type>
<plugintypeid>com.joaomgcd.autotools.intent.IntentHTMLRead</plugintypeid>
<plugintypeid-type>java.lang.String</plugintypeid-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.joaomgcd.autotools</Str>
<Str sr="arg2" ve="3">com.joaomgcd.autotools.activity.ActivityConfigHTMLRead</Str>
<Int sr="arg3" val="20"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act5" ve="7">
<code>39</code>
<coll>false</coll>
<Str sr="arg0" ve="3">%val</Str>
<Str sr="arg1" ve="3">%a_ytsimpleendpoint()</Str>
<Int sr="arg2" val="0"/>
</Action>
<Action sr="act6" ve="7">
<code>37</code>
<coll>false</coll>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%val</lhs>
<op>4</op>
<rhs>.*watch.*</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act7" ve="7">
<code>877</code>
<Str sr="arg0" ve="3">android.intent.action.VIEW</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg2" ve="3"/>
<Str sr="arg3" ve="3">%val</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3">com.google.android.apps.youtube.music</Str>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
</Action>
<Action sr="act8" ve="7">
<code>38</code>
</Action>
<Action sr="act9" ve="7">
<code>40</code>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>The music to search and play on YouTube Music.</pvd>
<pvdn>query</pvdn>
<pvid>329</pvid>
<pvit>t</pvit>
<pvn>%query</pvn>
<pvt>t</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task406">
<cdate>1599508864110</cdate>
<edate>1741628291796</edate>
<id>406</id>
<nme>MCP print_extras</nme>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>347</code>
<label>Get Intent Extras</label>
<Int sr="arg0" val="4"/>
<Str sr="arg1" ve="3"/>
<Str sr="arg2" ve="3">%vars</Str>
</Action>
<Action sr="act1" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%extras</Str>
<Str sr="arg1" ve="3">%vars()</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="0"/>
</Action>
<Action sr="act10" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%text</Str>
<Str sr="arg1" ve="3">%extra = %%extra
</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="1"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="0"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%%extra</lhs>
<op>5</op>
<rhs>%extra</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act11" ve="7">
<code>40</code>
</Action>
<Action sr="act12" ve="7">
<code>548</code>
<Str sr="arg0" ve="3">%text</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3">Top</Str>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="1"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3">10000</Str>
<Int sr="arg9" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%text</lhs>
<op>1</op>
<rhs>\%text</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act2" ve="7">
<code>598</code>
<label>Remove Residual Variables</label>
<Str sr="arg0" ve="3">%extras</Str>
<Str sr="arg1" ve="3">evtprm1|evtprm2|evtprm3|evtprm4|evtprm5|evtprm6|evtprm7|evtprm8|caller1|caller2|priority|QTIME|qtime|tasker_current_action_number</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3"/>
<Int sr="arg6" val="1"/>
<Str sr="arg7" ve="3"/>
</Action>
<Action sr="act3" ve="7">
<code>598</code>
<label>Remove HTTP Variables</label>
<Str sr="arg0" ve="3">%extras</Str>
<Str sr="arg1" ve="3">http_request_id|http_request_method|http_request_body|http_request_port|http_request_path|http_request_headers1|http_request_headers2|http_request_headers3|http_request_headers4|http_request_headers5|http_request_headers6|http_request_headers7|http_request_headers8|http_request_ip_address_v4</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3"/>
<Int sr="arg6" val="1"/>
<Str sr="arg7" ve="3"/>
</Action>
<Action sr="act4" ve="7">
<code>598</code>
<Str sr="arg0" ve="3">%extras</Str>
<Str sr="arg1" ve="3">%,</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3"/>
<Int sr="arg6" val="1"/>
<Str sr="arg7" ve="3"/>
</Action>
<Action sr="act5" ve="7">
<code>598</code>
<Str sr="arg0" ve="3">%extras</Str>
<Str sr="arg1" ve="3">%</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3"/>
<Int sr="arg6" val="1"/>
<Str sr="arg7" ve="3"/>
</Action>
<Action sr="act6" ve="7">
<code>590</code>
<Str sr="arg0" ve="3">%extras</Str>
<Str sr="arg1" ve="3">,</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%extras</lhs>
<op>3</op>
<rhs>%*extras*</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act7" ve="7">
<code>369</code>
<Str sr="arg0" ve="3">%extras</Str>
<Int sr="arg1" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%extras</lhs>
<op>3</op>
<rhs>%*extras*</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act8" ve="7">
<code>39</code>
<label>Process Extras</label>
<Str sr="arg0" ve="3">%extra</Str>
<Str sr="arg1" ve="3">%extras()</Str>
<Int sr="arg2" val="0"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%extras</lhs>
<op>3</op>
<rhs>%*extras*</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act9" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%text</Str>
<Str sr="arg1" ve="3">%extra = unset
</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="1"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="0"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%%extra</lhs>
<op>4</op>
<rhs>%extra</rhs>
</Condition>
</ConditionList>
</Action>
</Task>
<Task sr="task407">
<cdate>1740827420192</cdate>
<edate>1741542451895</edate>
<id>407</id>
<nme>MCP Get Battery Level</nme>
<pc>Returns the current battery percentage.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>424</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%bi_level
01. Level
The current battery level, from 0 to scale</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%bi_scale
02. Scale
The maximum battery level</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%bi_status
03. Status
1=Unknown; 2=Charging; 3=Discharging; 4=Not Charging; 5=Full;</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%bi_status_string
04. Status Description
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4>%bi_temperature
05. Temperature
Current battery temperature in degree Celsius. May always show as 0 on some devices.</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5>%bi_power_source
06. Power Source
1=AC; 2=USB; 4=Wireless; 8=Dock;</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6>%bi_power_source_string
07. Power Source Description
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7>%bi_health
08. Battery Health
1=Unknown; 2=Good; 3=Overheat; 4=Dead; 5=Over Voltage; 6=Failure;</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8>%bi_time_until_charged
08. Time Until Charged
Approximate time (MS) remaining until the battery is fully charged or -1 if not possible to get</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES9>%bi_health_string
09. Battery Health Description
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES9><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES10>%bi_battery_low
10. Battery Low
true if device battery level is low (corresponds to the Low battery warning system dialog), false otherwise</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES10><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES11>%bi_voltage
11. Voltage
Current battery voltage in millivolts</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES11><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES12>%bi_present
12. Present
true if device has a battery, false otherwise</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES12><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES13>%bi_technology
13. Technology
Description of the technology of the current battery</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES13><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES14>%bi_capacity_percentage
14. Capacity Percentage
Remaining battery capacity percentage</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES14><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES15>%bi_capacity
15. Capacity
Battery capacity in microampere-hours</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES15><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES16>%bi_current_average
16. Average Current
Average battery current in microamperes. Can be positive (charging) or negative (discharging)</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES16><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES17>%bi_current_now
17. Instantaneous Current
Instantaneous battery current in microamperes. Can be positive (charging) or negative (discharging)</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES17><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES18>%bi_energy_counter
18. Energy Counter
Battery remaining energy in nanowatt-hours</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES18><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES19>%bi_adaptive_charging_enabled
19. Adaptive Charging Enabled
true if adaptive charging is enabled on your device, false if not. May not be correct on all devices.</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES19><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES20>%bi_manufacturing_date
19. Battery Manufacturing Date
Seconds Since Epoch</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES20><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES21>%bi_adaptive_battery_management_enabled
20. Adaptive Battery Enabled
true if the "Adaptive Battery" setting is enabled on your phone, false if not. May not be correct on all devices.</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES21><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES22>%bi_first_usage_date
20. Battery First Usage Date
Seconds Since Epoch</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES22><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES23>%bi_charging_policy
21. Battery Charging Policy
1=Default; 2=Adaptive Static; 3=Adaptive Dynamic; 4=Adaptive Long Life;</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES23><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES24>%bi_state_of_health
22. Battery State of Health
Percentage representing the measured battery state of health (remaining estimated full charge capacity relative to the rated capacity in %)</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES24></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
</Action>
<Action sr="act2" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">%bi_level</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
</Task>
<Task sr="task408">
<cdate>1740827473547</cdate>
<edate>1741522493500</edate>
<id>408</id>
<nme>MCP Get Location</nme>
<pc>Retrieves the current GPS coordinates.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>366</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%gl_latitude
1. Latitude
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%gl_longitude
2. Longitude
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%gl_coordinates_accuracy
3. Lat, Lon Accuracy
In meters</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%gl_altitude
Altitude (meters)
In meters</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4>%gl_altitude_accuracy
Altitude Accuracy
In meters</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5>%gl_bearing
Bearing
in the range 0.0–360.0; Horizontal direction of travel of this device; not related to the device orientation</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6>%gl_bearing_accuracy
Bearing Accuracy
In degrees</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7>%gl_map_url
Google Maps URL
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8>%gl_coordinates
Latitude and Longitude
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES9>%gl_satellites
Satellites
The number of satellites used to derive the fix. May not always be available.</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES9><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES10>%gl_speed
Speed
In meters per second</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES10><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES11>%gl_speed_accuracy
Speed
In meters per second</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES11><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES12>%gl_time_seconds
Time
Time in seconds since EPOCH the location was gotten</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES12><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES13>%gl_time_adjusted_milliseconds
Time Adjusted Milliseconds
Result of adding the current system time with the offset between the system time and the location time</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES13><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES14>%gl_time_gnss_milliseconds
Time GNSS Milliseconds
Time in milliseconds since EPOCH the location was gotten synchrined to the device's location provider</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES14><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES15>%gl_time_milliseconds
Time Milliseconds
Time in milliseconds since EPOCH the location was gotten</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES15><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES16>%gl_time_offset_milliseconds
Time Offset Milliseconds
Time difference in milliseconds between the system time and the location time</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES16><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES17>%gl_time_taken_millis
Time Taken
Time in milliseconds that it took for Tasker to get the location</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES17></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Int sr="arg1" val="30"/>
<Str sr="arg2" ve="3"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Int sr="arg6" val="0"/>
<Int sr="arg7" val="0"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act2" ve="7">
<code>548</code>
<Str sr="arg0" ve="3">%gl_coordinates</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3"/>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="0"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
</Action>
<Action sr="act3" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">%gl_coordinates</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
</Task>
<Task sr="task409">
<cdate>1740964475086</cdate>
<edate>1741518331891</edate>
<id>409</id>
<nme>MCP build_data_url</nme>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>1</op>
<rhs>\%par1</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>130</code>
<Str sr="arg0" ve="3">MCP detect_mime_type</Str>
<Int sr="arg1">
<var>%priority</var>
</Int>
<Int sr="arg10" val="1"/>
<Str sr="arg2" ve="3">%par1</Str>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3">%mime_type</Str>
<Int sr="arg5" val="0"/>
<Int sr="arg6" val="0"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act2" ve="7">
<code>548</code>
<Str sr="arg0" ve="3">%mime_type</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3"/>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="0"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%caller()</lhs>
<op>2</op>
<rhs>ui</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act3" ve="7">
<code>776</code>
<se>false</se>
<Str sr="arg0" ve="3">%par1</Str>
<Str sr="arg1" ve="3">%b64</Str>
</Action>
<Action sr="act4" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%b64</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act5" ve="7">
<code>598</code>
<Str sr="arg0" ve="3">%b64</Str>
<Str sr="arg1" ve="3">[\r\n]+</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Str sr="arg5" ve="3"/>
<Int sr="arg6" val="1"/>
<Str sr="arg7" ve="3"/>
</Action>
<Action sr="act6" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">data:%mime_type;base64,%b64</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
</Task>
<Task sr="task410">
<cdate>1740964562687</cdate>
<edate>1741518296130</edate>
<id>410</id>
<nme>MCP detect_mime_type</nme>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%par1</Str>
<Str sr="arg1" ve="3">/storage/emulated/0/Tasker/test.txt</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%caller()</lhs>
<op>2</op>
<rhs>ui</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>37</code>
<coll>false</coll>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>1</op>
<rhs>\%par1</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act10" ve="7">
<code>548</code>
<Str sr="arg0" ve="3">Error: "%extension" invalid
Return: */*</Str>
<Int sr="arg1" val="1"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3"/>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="0"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
</Action>
<Action sr="act11" ve="7">
<code>38</code>
</Action>
<Action sr="act12" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">*/*</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
<Action sr="act2" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%file</Str>
<Str sr="arg1" ve="3">%par1</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
</Action>
<Action sr="act3" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">%extension</Str>
<Str sr="arg1" ve="3">MimeTypeMap</Str>
<Str sr="arg2" ve="3">getFileExtensionFromUrl
{String} (String)</Str>
<Str sr="arg3" ve="3">"%file"</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act4" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">mimetype</Str>
<Str sr="arg1" ve="3">MimeTypeMap</Str>
<Str sr="arg2" ve="3">getSingleton
{MimeTypeMap} ()</Str>
<Str sr="arg3" ve="3">"%file"</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act5" ve="7">
<code>664</code>
<Str sr="arg0" ve="3">%mimetype</Str>
<Str sr="arg1" ve="3">mimetype</Str>
<Str sr="arg2" ve="3">getMimeTypeFromExtension
{String} (String)</Str>
<Str sr="arg3" ve="3">"%extension"</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Str sr="arg9" ve="3"/>
</Action>
<Action sr="act6" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%mimetype</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act7" ve="7">
<code>548</code>
<Str sr="arg0" ve="3">%mimetype</Str>
<Int sr="arg1" val="1"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3"/>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="0"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
</Action>
<Action sr="act8" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">%mimetype</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
<Action sr="act9" ve="7">
<code>38</code>
</Action>
</Task>
<Task sr="task411">
<cdate>1740966228035</cdate>
<edate>1741522705095</edate>
<id>411</id>
<nme>MCP Take Photo</nme>
<pc>Takes a photo using the phone's camera.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>394</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%formatted
00. Formatted
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%dt_millis
1. MilliSeconds
Milliseconds Since Epoch</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%dt_seconds
2. Seconds
Seconds Since Epoch</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%dt_day_of_month
3. Day Of Month
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4>%dt_month_of_year
4. Month Of Year
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5>%dt_year
5. Year
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Int sr="arg1" val="1"/>
<Int sr="arg10" val="0"/>
<Str sr="arg11" ve="3"/>
<Str sr="arg12" ve="3"/>
<Str sr="arg2" ve="3"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3">y_MM_dd_HH_mm_ss</Str>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act10" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">%data_url</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
<Action sr="act2" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%png</Str>
<Str sr="arg1" ve="3">Tasker/Photos/%formatted</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
</Action>
<Action sr="act3" ve="7">
<code>101</code>
<Int sr="arg0" val="0"/>
<Str sr="arg1" ve="3">%png</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="1"/>
<Str sr="arg5" ve="3">1280x720</Str>
<Int sr="arg6" val="0"/>
<Int sr="arg7" val="0"/>
<Int sr="arg8" val="0"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act4" ve="7">
<code>188</code>
<Img sr="arg0" ve="2">
<var>%png</var>
</Img>
<Int sr="arg1">
<var>%img</var>
</Int>
<Int sr="arg2" val="0"/>
</Action>
<Action sr="act5" ve="7">
<code>406</code>
<se>false</se>
<Str sr="arg0" ve="3">%png</Str>
<Int sr="arg1" val="0"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="1"/>
</Action>
<Action sr="act6" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%webp</Str>
<Str sr="arg1" ve="3">Tasker/Photos/%uuid.webp</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
</Action>
<Action sr="act7" ve="7">
<code>187</code>
<Str sr="arg0" ve="3">%webp</Str>
<Int sr="arg1" val="85"/>
<Int sr="arg2" val="1"/>
</Action>
<Action sr="act8" ve="7">
<code>130</code>
<Str sr="arg0" ve="3">MCP build_data_url</Str>
<Int sr="arg1">
<var>%priority</var>
</Int>
<Int sr="arg10" val="1"/>
<Str sr="arg2" ve="3">%webp</Str>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3">%data_url</Str>
<Int sr="arg5" val="0"/>
<Int sr="arg6" val="0"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act9" ve="7">
<code>548</code>
<Str sr="arg0" ve="3">%data_url</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3"/>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="0"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
</Action>
</Task>
<Task sr="task412">
<cdate>1740966267094</cdate>
<edate>1741522699883</edate>
<id>412</id>
<nme>MCP Call Number</nme>
<pc>Initiates a phone call to the specified number.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>90</code>
<Str sr="arg0" ve="3">%number</Str>
<Int sr="arg1" val="1"/>
<Str sr="arg2" ve="3"/>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>Recipient phone number.</pvd>
<pvdn>number</pvdn>
<pvid>306</pvid>
<pvit>t</pvit>
<pvn>%number</pvn>
<pvt>cn</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task413">
<cdate>1740966343079</cdate>
<edate>1741522695464</edate>
<id>413</id>
<nme>MCP Create Task</nme>
<pc>Creates a new task in Google tasks.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>547</code>
<on>false</on>
<Str sr="arg0" ve="3">%text</Str>
<Str sr="arg1" ve="3">sample</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%caller()</lhs>
<op>2</op>
<rhs>ui</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act2" ve="7">
<code>370</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""/></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">#Intent;action=com.google.android.apps.tasks.NewTask;component=com.google.android.apps.tasks/.common.TrampolineActivity;B.from-launcher-shortcut=true;end</Str>
</Action>
<Action sr="act3" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%text</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act4" ve="7">
<code>328</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%kb_text_selected
Selected Text
Text selected on the current input, if any</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%kb_text
Text
Text present on the current input, if any</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%kb_text_after_cursor
Text After Cursor
Text after the cursor on the current input, if any</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%kb_text_before_cursor
Text Before Cursor
Text before the cursor on the current input, if any</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">wait(200),write(%text)</Str>
<Int sr="arg2" val="50"/>
<Int sr="arg3" val="0"/>
</Action>
<Action sr="act5" ve="7">
<code>107361459</code>
<Bundle sr="arg0">
<Vals sr="val">
<EnableDisableAccessibilityService><null></EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<Password><null></Password>
<Password-type>java.lang.String</Password-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Actions To Perform: click(id,com.google.android.apps.tasks:id/add_task_done)
Not In AutoInput: true
Not In Tasker: true
Separator: ,
Check Millis: 1000</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS>parameters</net.dinglisch.android.tasker.JSON_ENCODED_KEYS>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>java.lang.String</net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%ailastbounds
Last Bounds
Bounds (left,top,right,bottom) of the item that the action last interacted with</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%ailastcoordinates
Last Coordinates
Center coordinates (x,y) of the item that the action last interacted with</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%err
Error Code
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%errmsg
Error Message
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>parameters plugininstanceid plugintypeid </net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
<parameters>{"_action":"click(id,com.google.android.apps.tasks:id/add_task_done)","_additionalOptions":{"checkMs":"1000","separator":",","withCoordinates":false},"_whenToPerformAction":{"notInAutoInput":true,"notInTasker":true},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>6f5193ea-697b-4de2-a212-f608afd7f2b2</plugininstanceid>
<plugininstanceid-type>java.lang.String</plugininstanceid-type>
<plugintypeid>com.joaomgcd.autoinput.intent.IntentActionv2</plugintypeid>
<plugintypeid-type>java.lang.String</plugintypeid-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.joaomgcd.autoinput</Str>
<Str sr="arg2" ve="3">com.joaomgcd.autoinput.activity.ActivityConfigActionv2</Str>
<Int sr="arg3" val="60"/>
<Int sr="arg4" val="1"/>
</Action>
<Action sr="act6" ve="7">
<code>38</code>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>Task content.</pvd>
<pvdn>text</pvdn>
<pvid>307</pvid>
<pvit>t</pvit>
<pvn>%text</pvn>
<pvt>t</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task414">
<cdate>1740966388936</cdate>
<edate>1741522836693</edate>
<id>414</id>
<nme>MCP Say</nme>
<pc>Uses Tasker Say action to speak the given text. Use this when asked to 'say', 'recite', 'sing', etc.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>137</code>
<Int sr="arg0" val="1"/>
<Str sr="arg1" ve="3"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%speech</lhs>
<op>13</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act2" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%lang</Str>
<Str sr="arg1" ve="3">en-usa</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%lang</lhs>
<op>13</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act3" ve="7">
<code>559</code>
<Str sr="arg0" ve="3">%speech</Str>
<Str sr="arg1" ve="3">com.google.android.tts:%lang</Str>
<Int sr="arg2" val="3"/>
<Int sr="arg3" val="5"/>
<Int sr="arg4" val="5"/>
<Int sr="arg5" val="1"/>
<Int sr="arg6" val="0"/>
<Int sr="arg7" val="1"/>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>The text to be spoken.</pvd>
<pvdn>speech</pvdn>
<pvid>308</pvid>
<pvit>t</pvit>
<pvn>%speech</pvn>
<pvt>t</pvt>
<strout>true</strout>
</ProfileVariable>
<ProfileVariable sr="pv1">
<clearout>false</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>The language in Android format (e.g., en-usa, spa-usa).</pvd>
<pvdn>lang</pvdn>
<pvid>308</pvid>
<pvit>t</pvit>
<pvn>%lang</pvn>
<pvt>ln</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task415">
<cdate>1740966611671</cdate>
<edate>1741522670937</edate>
<id>415</id>
<nme>MCP Set Alarm</nme>
<pc>Sets an alarm on the phone.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>547</code>
<on>false</on>
<Str sr="arg0" ve="3">%time</Str>
<Str sr="arg1" ve="3">14:20</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%caller()</lhs>
<op>2</op>
<rhs>ui</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act2" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%time</lhs>
<op>13</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act3" ve="7">
<code>137</code>
<Int sr="arg0" val="1"/>
<Str sr="arg1" ve="3"/>
</Action>
<Action sr="act4" ve="7">
<code>43</code>
</Action>
<Action sr="act5" ve="7">
<code>590</code>
<Str sr="arg0" ve="3">%time</Str>
<Str sr="arg1" ve="3">:</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
</Action>
<Action sr="act6" ve="7">
<code>566</code>
<Int sr="arg0">
<var>%time(1)</var>
</Int>
<Int sr="arg1">
<var>%time(2)</var>
</Int>
<Str sr="arg2" ve="3"/>
<Str sr="arg3" ve="3"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="0"/>
</Action>
<Action sr="act7" ve="7">
<code>38</code>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>Time in 24:00 format.</pvd>
<pvdn>time</pvdn>
<pvid>309</pvid>
<pvit>t</pvit>
<pvn>%time</pvn>
<pvt>ti</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task416">
<cdate>1740966828289</cdate>
<edate>1741587556035</edate>
<id>416</id>
<nme>MCP Toggle Flashlight</nme>
<pc>Turns flashlight on or off.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%state</lhs>
<op>2</op>
<rhs>on</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act2" ve="7">
<code>511</code>
<Int sr="arg0" val="1"/>
<Str sr="arg1" ve="3"/>
</Action>
<Action sr="act3" ve="7">
<code>43</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%state</lhs>
<op>2</op>
<rhs>off</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act4" ve="7">
<code>511</code>
<Int sr="arg0" val="0"/>
<Str sr="arg1" ve="3"/>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>Allowed values: on, off.</pvd>
<pvdn>state</pvdn>
<pvid>310</pvid>
<pvit>t</pvit>
<pvn>%state</pvn>
<pvt>onoff</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task417">
<cdate>1740972162152</cdate>
<edate>1741522645519</edate>
<id>417</id>
<nme>MCP Get Contacts</nme>
<pc>Retrieves the phone contacts.</pc>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>1452528931</code>
<Bundle sr="arg0">
<Vals sr="val">
<com.twofortyfouram.locale.intent.extra.BLURB>Default Phone Number: true
Sort: name
Sort Direction: Ascending
Fields to Get: Id,Name,Nickname,Note,Phone Number
Joiner: =:=</com.twofortyfouram.locale.intent.extra.BLURB>
<com.twofortyfouram.locale.intent.extra.BLURB-type>java.lang.String</com.twofortyfouram.locale.intent.extra.BLURB-type>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS>parameters</net.dinglisch.android.tasker.JSON_ENCODED_KEYS>
<net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>java.lang.String</net.dinglisch.android.tasker.JSON_ENCODED_KEYS-type>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%acid
`First Id
Unique ID for the contact (Lookup)</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%acid()
´Id
Unique ID for the contact (Lookup)</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%acname
`First Name
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%acname()
´Name
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4>%acnickname
`First Nickname
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5>%acnickname()
´Nickname
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6>%acnote
`First Note
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES6><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7>%acnote()
´Note
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES7><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8>%acnumber
`First Phone Number
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES8><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES9>%acnumber()
´Phone Number
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES9><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES10>%err
Error Code
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES10><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES11>%errmsg
Error Message
Only available if you select &lt;b&gt;Continue Task After Error&lt;/b&gt; and the action ends in error</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES11></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>parameters plugininstanceid plugintypeid </net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS>
<net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>java.lang.String</net.dinglisch.android.tasker.extras.VARIABLE_REPLACE_KEYS-type>
<net.dinglisch.android.tasker.subbundled>true</net.dinglisch.android.tasker.subbundled>
<net.dinglisch.android.tasker.subbundled-type>java.lang.Boolean</net.dinglisch.android.tasker.subbundled-type>
<parameters>{"contactSort":"name","contactSortDirection":"0","queryAdvanced":{"queryJoiner":"=:="},"queryContactsFieldsToGet":"acid,acname,acnickname,acnote,acnumber","queryFilter":{"contactOnlyPhoneDefault":true,"filterAdvanced":{"queryGetEmptyFields":false},"queryContactStarred":false},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>19e02c75-dac3-45ff-83d9-e22aeff54c2b</plugininstanceid>
<plugininstanceid-type>java.lang.String</plugininstanceid-type>
<plugintypeid>com.joaomgcd.autocontacts.intent.IntentQuery2</plugintypeid>
<plugintypeid-type>java.lang.String</plugintypeid-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">com.joaomgcd.autocontacts</Str>
<Str sr="arg2" ve="3">com.joaomgcd.autocontacts.activity.ActivityConfigQuery2</Str>
<Int sr="arg3" val="60"/>
<Int sr="arg4" val="1"/>
</Action>
<Action sr="act2" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%content</Str>
<Str sr="arg1" ve="3">## Contacts:
</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
</Action>
<Action sr="act3" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%len</Str>
<Str sr="arg1" ve="3">%acname(#)</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
</Action>
<Action sr="act4" ve="7">
<code>129</code>
<Str sr="arg0" ve="3">var contents = [];
for(var idx = 1; idx <= len; idx++){
let row = [];
let name = local("acname"+idx)
let nickname = local("acnickname"+idx)
let notes = local("acnotes"+idx)
let number = local("acnumber"+idx)
if(name)
row.push(`(Name:${name})`);
if(nickname && nickname != ' ')
row.push(`(Nickname:${nickname})`);
if(number)
row.push(`(Number:${number})`);
if(notes)
row.push(`(Notes:${notes})`);
contents.push(row.join(', '));
}
contents = contents.join("\n");</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="1"/>
<Int sr="arg3" val="45"/>
</Action>
<Action sr="act5" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%prompt_extra</Str>
<Str sr="arg1" ve="3">%contents</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
</Action>
<Action sr="act6" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">%contents</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
</Task>
<Task sr="task418">
<cdate>1740827524920</cdate>
<edate>1741522640471</edate>
<id>418</id>
<nme>MCP Send SMS</nme>
<pc>Sends an SMS message.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>41</code>
<Str sr="arg0" ve="3">%number</Str>
<Str sr="arg1" ve="3">%message</Str>
<Int sr="arg2" val="0"/>
<Str sr="arg3" ve="3"/>
<Int sr="arg4" val="0"/>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>Recipient phone number.</pvd>
<pvdn>number</pvdn>
<pvid>312</pvid>
<pvit>t</pvit>
<pvn>%number</pvn>
<pvt>cn</pvt>
<strout>true</strout>
</ProfileVariable>
<ProfileVariable sr="pv1">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>Message content.</pvd>
<pvdn>message</pvdn>
<pvid>312</pvid>
<pvit>t</pvit>
<pvn>%message</pvn>
<pvt>t</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task419">
<cdate>1740827601291</cdate>
<edate>1741542885381</edate>
<id>419</id>
<nme>MCP Toggle Wifi</nme>
<pc>Turns WiFi on or off.</pc>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%state</lhs>
<op>2</op>
<rhs>on</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act2" ve="7">
<code>425</code>
<Int sr="arg0" val="1"/>
</Action>
<Action sr="act3" ve="7">
<code>43</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%state</lhs>
<op>2</op>
<rhs>off</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act4" ve="7">
<code>425</code>
<Int sr="arg0" val="0"/>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>Allowed values: on, off.</pvd>
<pvdn>state</pvdn>
<pvid>313</pvid>
<pvit>t</pvit>
<pvn>%state</pvn>
<pvt>onoff</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task420">
<cdate>1740827721772</cdate>
<edate>1741522492160</edate>
<id>420</id>
<nme>MCP Flash Text</nme>
<pc>Displays a short message using tasker Flash action.</pc>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>548</code>
<Str sr="arg0" ve="3">%text</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3"/>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="0"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>The text to show on the user phone.</pvd>
<pvdn>text</pvdn>
<pvid>314</pvid>
<pvit>t</pvit>
<pvn>%text</pvn>
<pvt>t</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task421">
<cdate>1740827768006</cdate>
<edate>1740827792959</edate>
<id>421</id>
<nme>--------------------</nme>
<Action sr="act0" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%noop</Str>
<Str sr="arg1" ve="3">noop</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
</Action>
</Task>
<Task sr="task422">
<cdate>1740849983224</cdate>
<edate>1741542911250</edate>
<id>422</id>
<nme>MCP Browse URL</nme>
<pc>Opens a URL in the default browser on the phone.</pc>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>104</code>
<Str sr="arg0" ve="3">%url</Str>
<App sr="arg1"/>
<Int sr="arg2" val="0"/>
<Str sr="arg3" ve="3"/>
</Action>
<ProfileVariable sr="pv0">
<clearout>true</clearout>
<exportval></exportval>
<immutable>true</immutable>
<pvci>false</pvci>
<pvd>The URL to open in the browser.</pvd>
<pvdn>url</pvdn>
<pvid>316</pvid>
<pvit>t</pvit>
<pvn>%url</pvn>
<pvt>t</pvt>
<strout>true</strout>
</ProfileVariable>
</Task>
<Task sr="task423">
<cdate>1740858001436</cdate>
<edate>1741522623769</edate>
<id>423</id>
<nme>MCP Screenshot</nme>
<pc>Takes a screenshot of the current screen on the phone.</pc>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>129</code>
<label>MCP#parse_args</label>
<Str sr="arg0" ve="3">// DO NOT MODIFY THIS ACTION!
// =================================
// Copy and paste this action to the start of
// any task toenable it as an MCP tool.
//
// Calling this action indirectly through
// Perform Task will not set args correctly.
// =================================
// Parse args as local variables
const args = JSON.parse(local('par1'));
for (const name in args) {
const value = args[name];
setLocal(name, value);
}
exit();</Str>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="5"/>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%par1</lhs>
<op>12</op>
<rhs></rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act1" ve="7">
<code>365</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%uuid
UUID
</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Str sr="arg1" ve="3">GenerateUUID()</Str>
</Action>
<Action sr="act2" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%png</Str>
<Str sr="arg1" ve="3">Tasker/Screenshots/%uuid.png</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
</Action>
<Action sr="act3" ve="7">
<code>176</code>
<Str sr="arg0" ve="3">%png</Str>
<Int sr="arg1" val="1"/>
</Action>
<Action sr="act4" ve="7">
<code>188</code>
<Img sr="arg0" ve="2">
<var>%png</var>
</Img>
<Int sr="arg1"/>
<Int sr="arg2" val="0"/>
</Action>
<Action sr="act5" ve="7">
<code>406</code>
<se>false</se>
<Str sr="arg0" ve="3">%png</Str>
<Int sr="arg1" val="0"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="1"/>
</Action>
<Action sr="act6" ve="7">
<code>547</code>
<Str sr="arg0" ve="3">%webp</Str>
<Str sr="arg1" ve="3">Tasker/Screenshots/%uuid.webp</Str>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
<Int sr="arg5" val="3"/>
<Int sr="arg6" val="1"/>
</Action>
<Action sr="act7" ve="7">
<code>187</code>
<Str sr="arg0" ve="3">%webp</Str>
<Int sr="arg1" val="85"/>
<Int sr="arg2" val="1"/>
</Action>
<Action sr="act8" ve="7">
<code>130</code>
<Str sr="arg0" ve="3">MCP build_data_url</Str>
<Int sr="arg1">
<var>%priority</var>
</Int>
<Int sr="arg10" val="1"/>
<Str sr="arg2" ve="3">%webp</Str>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3">%data_url</Str>
<Int sr="arg5" val="0"/>
<Int sr="arg6" val="0"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act9" ve="7">
<code>126</code>
<Str sr="arg0" ve="3">%data_url</Str>
<Int sr="arg1" val="1"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Str sr="arg4" ve="3"/>
</Action>
</Task>
<Task sr="task424">
<cdate>1740935899578</cdate>
<edate>1741630635040</edate>
<id>424</id>
<nme>MCP test_call_task</nme>
<pri>8</pri>
<rty>2</rty>
<Action sr="act0" ve="7">
<code>339</code>
<se>false</se>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES><StringArray sr=""><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0>%http_cookies
Cookies
The cookies the server sent in the response in the Cookie:COOKIE_VALUE format. You can use this directly in the 'Headers' field of the HTTP Request action</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1>%http_data
Data
Data that the server responded from the HTTP request.</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2>%http_file_output
File Output
Will always contain the file's full path even if you specified a directory as the File to save.</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3>%http_response_code
Response Code
The HTTP Code the server responded</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4>%http_headers()
Response Headers
The HTTP Headers the server sent in the response. Each header is in the 'key:value' format</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4><_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5>%http_response_length
Response Length
The size of the response in bytes</_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5></StringArray></net.dinglisch.android.tasker.RELEVANT_VARIABLES>
<net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>[Ljava.lang.String;</net.dinglisch.android.tasker.RELEVANT_VARIABLES-type>
</Vals>
</Bundle>
<Int sr="arg1" val="1"/>
<Int sr="arg10" val="0"/>
<Int sr="arg11" val="0"/>
<Int sr="arg12" val="1"/>
<Str sr="arg2" ve="3">http://0.0.0.0:1821/run_task</Str>
<Str sr="arg3" ve="3">Authorization:Bearer %tasker_api_key</Str>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3">{
"name": "MCP Flash Text",
"arguments": {"text": "Hi"}
}</Str>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="5"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act1" ve="7">
<code>548</code>
<Str sr="arg0" ve="3">%http_data
Code: %http_response_code</Str>
<Int sr="arg1" val="0"/>
<Str sr="arg10" ve="3"/>
<Int sr="arg11" val="1"/>
<Int sr="arg12" val="0"/>
<Str sr="arg13" ve="3"/>
<Int sr="arg14" val="0"/>
<Str sr="arg15" ve="3"/>
<Int sr="arg2" val="1"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3"/>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Str sr="arg8" ve="3"/>
<Int sr="arg9" val="1"/>
</Action>
</Task>
</TaskerData>