"vault backup: 2026-03-31 16:16:04 from Flow"

This commit is contained in:
2026-03-31 16:16:04 -05:00
parent 4123e68798
commit abfb68abb0
6 changed files with 0 additions and 674 deletions

View File

@@ -1,71 +0,0 @@
<TaskerData sr="" dvi="1" tv="6.6.20">
<Task sr="task9">
<cdate>1774931800563</cdate>
<edate>1774932946532</edate>
<id>9</id>
<nme>Git Sync</nme>
<Action sr="act0" ve="7">
<code>107361459</code>
<Bundle sr="arg0">
<Vals sr="val">
<EnableDisableAccessibilityService>&lt;null&gt;</EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<Password>&lt;null&gt;</Password>
<Password-type>java.lang.String</Password-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Actions To Perform: openApp(com.viscouspot.gitsync)
click(text,SYNC CHANGES)
backOutOfApp()
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>&lt;StringArray sr=""&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;%ailastbounds
Last Bounds
Bounds (left,top,right,bottom) of the item that the action last interacted with&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;%ailastcoordinates
Last Coordinates
Center coordinates (x,y) of the item that the action last interacted with&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;%err
Error Code
Only available if you select &amp;lt;b&amp;gt;Continue Task After Error&amp;lt;/b&amp;gt; and the action ends in error&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;%errmsg
Error Message
Only available if you select &amp;lt;b&amp;gt;Continue Task After Error&amp;lt;/b&amp;gt; and the action ends in error&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;&lt;/StringArray&gt;</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":"openApp(com.viscouspot.gitsync)\n\nclick(text,SYNC CHANGES)\n\nbackOutOfApp()","_additionalOptions":{"checkMs":"1000","separator":",","withCoordinates":false},"_whenToPerformAction":{"notInAutoInput":true,"notInTasker":true},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>5910f160-ad6a-4b47-ab40-810a62e77df1</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="act1" ve="7">
<code>130</code>
<Str sr="arg0" ve="3">JWL_Merge</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="0"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="0"/>
<Int sr="arg9" val="0"/>
</Action>
</Task>
</TaskerData>

View File

@@ -1,173 +0,0 @@
{
"name": "JW Library Sync",
"nodes": [
{
"parameters": {
"command": "bash /home/artanis/Documents/JW_Backup_Sync_Engine.sh"
},
"type": "n8n-nodes-base.ssh",
"typeVersion": 1,
"position": [
112,
-112
],
"id": "5a156815-edbb-4c08-9e7d-75f98c2f6c39",
"name": "Execute a command",
"alwaysOutputData": true,
"credentials": {
"sshPassword": {
"id": "wILbpFcpVSKcewXl",
"name": "Homelab Login"
}
},
"onError": "continueErrorOutput"
},
{
"parameters": {
"httpMethod": "POST",
"path": "sync-jw-backup",
"responseMode": "responseNode",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
-112,
-112
],
"id": "37b4ca1b-8910-41d5-8b1f-e7696b71f07f",
"name": "Webhook",
"webhookId": "5e348016-4d6e-4226-a5dc-c91eb7d6ea0e"
},
{
"parameters": {},
"type": "n8n-nodes-base.wait",
"typeVersion": 1.1,
"position": [
336,
-208
],
"id": "d2827797-21f7-496e-8afb-a5044299c07d",
"name": "Wait",
"webhookId": "e147b0a0-18c4-4423-8cee-605e68f4fbde"
},
{
"parameters": {
"authentication": "webhook",
"content": "=JW SYNC ERROR:\n {{ $json.stderr }}",
"options": {}
},
"type": "n8n-nodes-base.discord",
"typeVersion": 2,
"position": [
336,
-16
],
"id": "abac265b-78c6-4bc0-9ba9-f846d39eefa8",
"name": "Discord",
"webhookId": "4f823df1-38b6-4a5b-ae32-2fc586a9aa9b",
"credentials": {
"discordWebhookApi": {
"id": "0i1bW7qtePtHMHjA",
"name": "SV98"
}
}
},
{
"parameters": {
"respondWith": "text",
"responseBody": "Merge Successful",
"options": {}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.5,
"position": [
560,
-208
],
"id": "be993bb8-c654-42d1-9bea-7d6ffbd75db9",
"name": "Respond to Webhook"
},
{
"parameters": {
"respondWith": "text",
"responseBody": "Merge Failed",
"options": {}
},
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.5,
"position": [
560,
-16
],
"id": "daa52075-9bd6-4425-a9d5-8763d935a372",
"name": "Respond to Webhook1"
}
],
"pinData": {},
"connections": {
"Webhook": {
"main": [
[
{
"node": "Execute a command",
"type": "main",
"index": 0
}
]
]
},
"Execute a command": {
"main": [
[
{
"node": "Wait",
"type": "main",
"index": 0
}
],
[
{
"node": "Discord",
"type": "main",
"index": 0
}
]
]
},
"Wait": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
},
"Discord": {
"main": [
[
{
"node": "Respond to Webhook1",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1",
"binaryMode": "separate"
},
"versionId": "7c2bf541-5763-4961-ae65-00940a5f32f8",
"meta": {
"templateCredsSetupCompleted": true,
"instanceId": "cb40080ef54f0b350fa960324602081324276be1181221a02a674c62336f7933"
},
"id": "rmbJkjlgZi5hbRpg",
"tags": []
}

View File

@@ -1,134 +0,0 @@
<TaskerData sr="" dvi="1" tv="6.6.20">
<Task sr="task3">
<cdate>1774912401659</cdate>
<edate>1774932929717</edate>
<id>3</id>
<nme>JWL_Backup_To_Git</nme>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>20</code>
<App sr="arg0">
<appClass>org.jw.jwlibrary.mobile.MainActivity</appClass>
<appPkg>org.jw.jwlibrary.mobile</appPkg>
<label>JW Library</label>
</App>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="1"/>
</Action>
<Action sr="act1" ve="7">
<code>30</code>
<Int sr="arg0" val="0"/>
<Int sr="arg1" val="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act2" ve="7">
<code>107361459</code>
<Bundle sr="arg0">
<Vals sr="val">
<EnableDisableAccessibilityService>&lt;null&gt;</EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<Password>&lt;null&gt;</Password>
<Password-type>java.lang.String</Password-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Actions To Perform: click(id,org.jw.jwlibrary.mobile:id/nav_personal_study)
click(id,org.jw.jwlibrary.mobile:id/action_backup_restore)
click(text,Create Backup)
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.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,org.jw.jwlibrary.mobile:id/nav_personal_study)\n\nclick(id,org.jw.jwlibrary.mobile:id/action_backup_restore)\n\nclick(text,Create Backup)","_additionalOptions":{"checkMs":"1000","separator":",","withCoordinates":false},"_whenToPerformAction":{"notInAutoInput":true,"notInTasker":true},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>4a568374-2445-46f3-be31-a879d2940e36</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="act3" ve="7">
<code>30</code>
<Int sr="arg0" val="0"/>
<Int sr="arg1" val="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act4" ve="7">
<code>107361459</code>
<Bundle sr="arg0">
<Vals sr="val">
<EnableDisableAccessibilityService>&lt;null&gt;</EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<Password>&lt;null&gt;</Password>
<Password-type>java.lang.String</Password-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Actions To Perform: click(text,Save Locally)
click(id,android:id/button1)
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>&lt;StringArray sr=""&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;%ailastbounds
Last Bounds
Bounds (left,top,right,bottom) of the item that the action last interacted with&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;%ailastcoordinates
Last Coordinates
Center coordinates (x,y) of the item that the action last interacted with&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;%err
Error Code
Only available if you select &amp;lt;b&amp;gt;Continue Task After Error&amp;lt;/b&amp;gt; and the action ends in error&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;%errmsg
Error Message
Only available if you select &amp;lt;b&amp;gt;Continue Task After Error&amp;lt;/b&amp;gt; and the action ends in error&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;&lt;/StringArray&gt;</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(text,Save Locally)\n\nclick(id,android:id/button1)","_additionalOptions":{"checkMs":"1000","separator":",","withCoordinates":false},"_whenToPerformAction":{"notInAutoInput":true,"notInTasker":true},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>babe5b2c-f87a-4a8a-ab34-6a891fce327c</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="act5" ve="7">
<code>130</code>
<Str sr="arg0" ve="3">Git Sync</Str>
<Int sr="arg1">
<var>%priority</var>
</Int>
<Int sr="arg10"/>
<Str sr="arg2" ve="3"/>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Int sr="arg5"/>
<Int sr="arg6" val="1"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8"/>
<Int sr="arg9"/>
</Action>
</Task>
</TaskerData>

View File

@@ -1,86 +0,0 @@
<TaskerData sr="" dvi="1" tv="6.6.20">
<Task sr="task8">
<cdate>1774931254224</cdate>
<edate>1774932950369</edate>
<id>8</id>
<nme>JWL_Merge</nme>
<Action sr="act0" ve="7">
<code>339</code>
<Bundle sr="arg0">
<Vals sr="val">
<net.dinglisch.android.tasker.RELEVANT_VARIABLES>&lt;StringArray sr=""&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;%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&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;%http_data
Data
Data that the server responded from the HTTP request.&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;%http_file_output
File Output
Will always contain the file's full path even if you specified a directory as the File to save.&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;%http_response_code
Response Code
The HTTP Code the server responded&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4&gt;%http_headers()
Response Headers
The HTTP Headers the server sent in the response. Each header is in the 'key:value' format&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES4&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5&gt;%http_response_length
Response Length
The size of the response in bytes&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES5&gt;&lt;/StringArray&gt;</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://n8n.bunny-wyvern.ts.net:5678/webhook/sync-jw-backup</Str>
<Str sr="arg3" ve="3"/>
<Str sr="arg4" ve="3"/>
<Str sr="arg5" ve="3">{"device": "Samsung-Tablet-S10+"}</Str>
<Str sr="arg6" ve="3"/>
<Str sr="arg7" ve="3"/>
<Int sr="arg8" val="60"/>
<Int sr="arg9" val="0"/>
</Action>
<Action sr="act1" ve="7">
<code>30</code>
<Int sr="arg0" val="0"/>
<Int sr="arg1" val="2"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act2" ve="7">
<code>37</code>
<ConditionList sr="if">
<Condition sr="c0" ve="3">
<lhs>%http_data</lhs>
<op>2</op>
<rhs>*Successful*</rhs>
</Condition>
</ConditionList>
</Action>
<Action sr="act3" ve="7">
<code>30</code>
<Int sr="arg0" val="0"/>
<Int sr="arg1" val="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act4" ve="7">
<code>130</code>
<Str sr="arg0" ve="3">JWL_Restore_From_Git</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"/>
<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="act5" ve="7">
<code>38</code>
</Action>
</Task>
</TaskerData>

View File

@@ -1,146 +0,0 @@
<TaskerData sr="" dvi="1" tv="6.6.20">
<Task sr="task5">
<cdate>1774912401659</cdate>
<edate>1774932910304</edate>
<id>5</id>
<nme>JWL_Restore_From_Git</nme>
<pri>100</pri>
<Action sr="act0" ve="7">
<code>20</code>
<App sr="arg0">
<appClass>org.jw.jwlibrary.mobile.MainActivity</appClass>
<appPkg>org.jw.jwlibrary.mobile</appPkg>
<label>JW Library</label>
</App>
<Str sr="arg1" ve="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="1"/>
</Action>
<Action sr="act1" ve="7">
<code>30</code>
<Int sr="arg0" val="0"/>
<Int sr="arg1" val="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act2" ve="7">
<code>107361459</code>
<Bundle sr="arg0">
<Vals sr="val">
<EnableDisableAccessibilityService>&lt;null&gt;</EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<Password>&lt;null&gt;</Password>
<Password-type>java.lang.String</Password-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Actions To Perform: click(id,org.jw.jwlibrary.mobile:id/nav_personal_study)
click(id,org.jw.jwlibrary.mobile:id/action_backup_restore)
click(text,Restore Backup)
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>&lt;StringArray sr=""&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;%ailastbounds
Last Bounds
Bounds (left,top,right,bottom) of the item that the action last interacted with&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;%ailastcoordinates
Last Coordinates
Center coordinates (x,y) of the item that the action last interacted with&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;%err
Error Code
Only available if you select &amp;lt;b&amp;gt;Continue Task After Error&amp;lt;/b&amp;gt; and the action ends in error&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;%errmsg
Error Message
Only available if you select &amp;lt;b&amp;gt;Continue Task After Error&amp;lt;/b&amp;gt; and the action ends in error&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;&lt;/StringArray&gt;</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,org.jw.jwlibrary.mobile:id/nav_personal_study)\n\nclick(id,org.jw.jwlibrary.mobile:id/action_backup_restore)\n\nclick(text,Restore Backup)","_additionalOptions":{"checkMs":"1000","separator":",","withCoordinates":false},"_whenToPerformAction":{"notInAutoInput":true,"notInTasker":true},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>4a568374-2445-46f3-be31-a879d2940e36</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="act3" ve="7">
<code>30</code>
<Int sr="arg0" val="0"/>
<Int sr="arg1" val="3"/>
<Int sr="arg2" val="0"/>
<Int sr="arg3" val="0"/>
<Int sr="arg4" val="0"/>
</Action>
<Action sr="act4" ve="7">
<code>107361459</code>
<Bundle sr="arg0">
<Vals sr="val">
<EnableDisableAccessibilityService>&lt;null&gt;</EnableDisableAccessibilityService>
<EnableDisableAccessibilityService-type>java.lang.String</EnableDisableAccessibilityService-type>
<Password>&lt;null&gt;</Password>
<Password-type>java.lang.String</Password-type>
<com.twofortyfouram.locale.intent.extra.BLURB>Actions To Perform: click(text,Show roots)
click(text,Spencer's Tab S8+)
click(text,Vault)
click(text,JW_Backups)
wait(500)
click(id,com.google.android.documentsui:id/icon_thumb)
wait(500)
click(text,RESTORE)
click(text,CLOSE)
wait(500)
backOutOfApp()
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>&lt;StringArray sr=""&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;%ailastbounds
Last Bounds
Bounds (left,top,right,bottom) of the item that the action last interacted with&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES0&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;%ailastcoordinates
Last Coordinates
Center coordinates (x,y) of the item that the action last interacted with&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES1&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;%err
Error Code
Only available if you select &amp;lt;b&amp;gt;Continue Task After Error&amp;lt;/b&amp;gt; and the action ends in error&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES2&gt;&lt;_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;%errmsg
Error Message
Only available if you select &amp;lt;b&amp;gt;Continue Task After Error&amp;lt;/b&amp;gt; and the action ends in error&lt;/_array_net.dinglisch.android.tasker.RELEVANT_VARIABLES3&gt;&lt;/StringArray&gt;</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(text,Show roots)\n\nclick(text,Spencer's Tab S8+)\n\nclick(text,Vault)\n\nclick(text,JW_Backups)\n\nwait(500)\n\nclick(id,com.google.android.documentsui:id/icon_thumb)\n\nwait(500)\n\nclick(text,RESTORE)\n\nclick(text,CLOSE)\n\nwait(500)\n\nbackOutOfApp()","_additionalOptions":{"checkMs":"1000","separator":",","withCoordinates":false},"_whenToPerformAction":{"notInAutoInput":true,"notInTasker":true},"generatedValues":{}}</parameters>
<parameters-type>java.lang.String</parameters-type>
<plugininstanceid>b68fb928-2b48-41e9-b01f-359d4826b699</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>
</Task>
</TaskerData>

View File

@@ -1,64 +0,0 @@
#!/bin/bash
# --- CONFIG ---
TARGET_DIR="/home/artanis/Inanis_Vault/JW_Backups"
MASTER_NAME="master.jwlibrary"
LIB_SOURCE="/usr/local/lib/libjwlCore.so"
# 1. Environment & Pathing
export PATH=$PATH:/usr/local/bin:/usr/bin:/bin
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
cd "$TARGET_DIR" || exit 1
# 2. Update Repo
git pull origin main
# 3. Rename messy filenames (Spaces/Brackets)
shopt -s nullglob
counter=1
for f in *.jwlibrary; do
if [[ "$f" != "$MASTER_NAME" && "$f" != incoming_* ]]; then
mv "$f" "incoming_$counter.jwlibrary"
((counter++))
fi
done
shopt -u nullglob
# 4. Identify standardized files
INCOMING_FILES=$(ls incoming_*.jwlibrary 2>/dev/null)
if [ -z "$INCOMING_FILES" ]; then
echo "No new device backups found. Exiting."
exit 0
fi
# 5. Satisfy Binary & Merge
ln -sf "$LIB_SOURCE" ./libjwlCore.so
FILE_COUNT=$(echo "$MASTER_NAME $INCOMING_FILES" | wc -w)
if [ -f "$MASTER_NAME" ] && [ "$FILE_COUNT" -gt 1 ]; then
jwlFusion -o:"master_tmp" "$MASTER_NAME" $INCOMING_FILES
elif [ ! -f "$MASTER_NAME" ] && [ $(echo "$INCOMING_FILES" | wc -w) -gt 1 ]; then
jwlFusion -o:"master_tmp" $INCOMING_FILES
else
# Recovery: If only 1 file exists and no master, promote it
cp $INCOMING_FILES "$MASTER_NAME"
echo "Promoted single file to master."
fi
# 6. Cleanup & Finalize
rm -f ./libjwlCore.so incoming_*.jwlibrary
if [ -f "master_tmp.jwlibrary" ]; then
mv "master_tmp.jwlibrary" "$MASTER_NAME"
fi
# 7. Git Push
if git status --porcelain | grep -q .; then
git add -A
git commit -m "Automated Sync: $(date +'%Y-%m-%d %H:%M')"
git push origin main
echo "Sync successful. Master updated and pushed."
else
echo "No changes detected in master."
fi