Line 5: |
Line 5: |
| More information here. | | More information here. |
| https://medium.com/@macrodroid/introducing-the-webhook-trigger-a760e2ee140d | | https://medium.com/@macrodroid/introducing-the-webhook-trigger-a760e2ee140d |
− | <br>
| |
| | | |
| ===<p><b>Warning</b></p>=== | | ===<p><b>Warning</b></p>=== |
Line 12: |
Line 11: |
| | | |
| This feature uses Firebase Cloud Messaging to notify the device via the backend server, therefore it is not functional on devices that lack Google services (such as Alexa tablets etc.) | | This feature uses Firebase Cloud Messaging to notify the device via the backend server, therefore it is not functional on devices that lack Google services (such as Alexa tablets etc.) |
− | </pre><br> | + | </pre> |
| + | |
| + | ==<p><b>Request configuration</b></p>== |
| + | |
| + | === Identifier === |
| + | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
| + | The identifier is what is after the base url. |
| + | Base URL: |
| + | |
| + | https://trigger.macrodroid.com/c306bcd7-5f78-4895-bee4-677d4d/ |
| + | |
| + | E.G. The identifier would be 'mywebhook' |
| + | https://trigger.macrodroid.com/c306bcd7-5f78-4895-bee4-677d4d/mywebhook |
| + | </pre> |
| + | |
| + | === IP address whitelist === |
| | | |
− | ===<p><b>Parameters</b></p>===
| |
− | * ''''' IP address whitelist '''''
| |
| <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
| You can support one or more IP addresses so that the webhook is only activated from specific IP addresses. | | You can support one or more IP addresses so that the webhook is only activated from specific IP addresses. |
| It also supports magic text '...' | | It also supports magic text '...' |
| </pre> | | </pre> |
− | '''''[[magic text|Magic text list]] '''''
| + | * ''[[magic text|Magic text list]] '' |
− | </pre><br> | + | </pre> |
− | | + | === Save body to string variable === |
− | * ''''' Save body to string variable '''''
| |
| <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
| If your HTTP POST request contains any text format, you can save it in any string variable. | | If your HTTP POST request contains any text format, you can save it in any string variable. |
Line 29: |
Line 40: |
| Note that due to limits imposed by Firebase Cloud Messaging the maximum body text length is 3800 characters. | | Note that due to limits imposed by Firebase Cloud Messaging the maximum body text length is 3800 characters. |
| </pre> | | </pre> |
− | '''''[[Variables]]'''''
| + | * ''[[Variables]]'' |
− | </pre><br> | + | </pre> |
| + | |
| + | ==<p><b>URL short</b></p>== |
| | | |
− | * ''''' TinyUrl '''''
| + | === TinyUrl === |
| <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
| It is a URL shortening service used to create shorter, more shareable links. | | It is a URL shortening service used to create shorter, more shareable links. |
Line 39: |
Line 52: |
| to this: | | to this: |
| http://tinyurl.com/5xzj7w6j | | http://tinyurl.com/5xzj7w6j |
− | </pre><br> | + | </pre> |
| + | |
| + | ==<p><b>Include variables</b></p>== |
| | | |
− | ===<p><b>Formats to include variables</b></p>=== | + | === String, Integer, Decimal, Boolean === |
− | * ''''' Identifier'''''
| |
− | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
| |
− | The identifier is what is after the base url.
| |
− | Base URL:
| |
| | | |
− | https://trigger.macrodroid.com/c306bcd7-5f78-4895-bee4-677d4d/ | + | * '' [https://macrodroidforum.com/wiki/index.php/Variables#Standard_Variable_Types Variables | String, Integer, Decimal, Boolean] '' |
| | | |
− | E.G. The identifier would be 'mywebhook'
| |
− | https://trigger.macrodroid.com/c306bcd7-5f78-4895-bee4-677d4d/mywebhook
| |
− | </pre><br>
| |
− | * ''''' Attach variable value [[Variables|String, Integer, Decimal, Boolean]] '''''
| |
| <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
| ID = User-defined identifier. | | ID = User-defined identifier. |
Line 66: |
Line 73: |
| https://trigger.macrodroid.com/c306bcd7-5f78-4895-bee4-69600af77d4d/ID?VARNAME1=42&VARNAME2=Hello_World | | https://trigger.macrodroid.com/c306bcd7-5f78-4895-bee4-69600af77d4d/ID?VARNAME1=42&VARNAME2=Hello_World |
| </pre> | | </pre> |
− | ''''' An introduction video is available MacroDroid Variables https://youtu.be/0V_EcyhxrpA?si=_mjXwGVXHO3J8Ywp '''''
| + | * '' An introduction video is available'' ''[https://youtu.be/0V_EcyhxrpA?si=_mjXwGVXHO3J8Ywp MacroDroid Variables]'' |
− | <br>
| + | |
| + | === Dictionary - Array === |
| + | |
| + | * ''[https://macrodroidforum.com/wiki/index.php/Variables#Data_Structure_Variable_Types Variables | Dictionary - Array] '' |
| | | |
− | <br>
| |
− | * ''''' Attach Data Structure [[Variables|Dictionary - Array]] '''''
| |
| <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
| id = User-defined identifier. | | id = User-defined identifier. |
Line 83: |
Line 91: |
| https://trigger.macrodroid.com/c306bcd7-5f78-4895-bee4-69600af77d4d/id?mydict(KEY)=VALUETEXT | | https://trigger.macrodroid.com/c306bcd7-5f78-4895-bee4-69600af77d4d/id?mydict(KEY)=VALUETEXT |
| </pre> | | </pre> |
− | ''''' An introduction video is available Using Dictionary and Array Variables https://youtu.be/u2zY5dv34CM '''''
| + | * '' An introduction video is available Using'' ''[https://youtu.be/u2zY5dv34CM Dictionary and Array Variables]'' |
− | <br></pre> | + | <br> |
| + | |
| + | ==<p><b>Webhook management</b></p>== |
| | | |
− | ===<p><b>Webhook management</b></p>=== | + | === Export device ID to new device === |
− | * ''''' Export device ID to new device '''''
| |
| <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
| You will be asked to create a password (it will be linked to your current device ID) and you can import it later in case your device is damaged or you update your current device. | | You will be asked to create a password (it will be linked to your current device ID) and you can import it later in case your device is damaged or you update your current device. |
Line 94: |
Line 103: |
| </pre><br> | | </pre><br> |
| | | |
− | * ''''' Import device ID from other device '''''
| + | === Import device ID from other device === |
| <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
| You will be asked for the Device ID and password and you will be able to correctly import the Device ID. | | You will be asked for the Device ID and password and you will be able to correctly import the Device ID. |
| </pre><br> | | </pre><br> |
| | | |
− | * ''''' Generate new device ID '''''
| + | === Generate new device ID === |
| + | |
| <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
| This will assign a new device id to this device. Existing webhook links for this device will no longer function. | | This will assign a new device id to this device. Existing webhook links for this device will no longer function. |
| To get a new device ID you just need to check the 'I have read and understood' box | | To get a new device ID you just need to check the 'I have read and understood' box |
| and you can generate your new device ID. | | and you can generate your new device ID. |
− | </pre><br> | + | </pre> |
− | | |
− | ===<p><b>Examples</b></p>===
| |
− | | |
− | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
| |
− | This macro will receive values by webhook and speak them by TTS.
| |
− | </pre><br>
| |
− | <pre style="background-color: #AC2424; color: white; border-radius: 10px; padding: 10px;">
| |
− | Triggers
| |
− | | |
− | Webhook (MyWebhook)
| |
− | https://trigger.macrodroid.com/c306bcd7-5f78-4895-bee4-69600af77d4d/id?VAR1=Hello
| |
− | </pre><br>
| |
− | <pre style="background-color: #1665B0; color: white; border-radius: 10px; padding: 10px;">
| |
− | Actions
| |
− | | |
− | Speak text: You received a new value {lv=VAR1}
| |
− | </pre><br>
| |
− | <pre style="background-color: green; color: white; border-radius: 10px; padding: 10px;">
| |
− | Constraints
| |
− | | |
− | | |
− | </pre><br>
| |
− | <pre style="background-color: teal; color: white; border-radius: 10px; padding: 10px;">
| |
− | Local variables
| |
− | | |
− | VAR1 = Hello (Type String)
| |
− | </pre><br>
| |