Tags: Mobile web edit Mobile edit Advanced mobile edit
 
(40 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<pre style="background-color: #EEEEEE; color: Black; border-radius: 10px; padding: 10px;">
+
(Updated to version 5.44, latest edition 15 April, 2024)
 +
 
 +
== About ==
 +
 
 
In many triggers, actions and constraints you will have the option to configure some textual fields. Often you will find a button next to the text entry field that contains the "..." label. This button will display a complete list of "magic text" fields that are available in the context that is being used.
 
In many triggers, actions and constraints you will have the option to configure some textual fields. Often you will find a button next to the text entry field that contains the "..." label. This button will display a complete list of "magic text" fields that are available in the context that is being used.
  
The magic text allows some other value to be substituted at the point of invocation, rather than standard static text that will never changed. For example it's possible to add and action that reference a variable via magic text and that variable's value will be substituted at the point that action is run.
+
If you wish to manually type them instead if you know them, be aware that there can be spelling/typing mistakes.
 +
 
 +
Magic text for dictionaries/arrays is written like this :
 +
{lv=dictionary/array name[entry][sub-entry]}
 +
There can be as many [sub-entry] as you want. Be aware that it can get complicated pretty fast! Curly {} brackets were added so users would see the beginning and end of a dictionary/array magic text
 +
with ease.
 +
 
 +
The magic text allows some other value to be substituted at the point of invocation, rather than standard static text that will never changed. For example it's possible to add an action that references a variable via magic text and that variable's value will be substituted at the point that action is run.
 +
 
 +
Magic text can be written in 2 ways : Curly brackets {value} and square brackets [value]. Curly brackets aren't supported on very old versions like v5.20 and below but it's recommended to use it when interacting with dictionaries/arrays as with square brackets it can get confusing where you are very quickly.
 +
 
 +
==<p><b>Requires a condition (loop)</b></p>==
 +
 
 +
This action is a specialized type of loop that can be used to iterate over all elements within a dictionary/array.
 +
 
 +
=== Iterate Dictionary/Array ===
 +
* '''''Iterator value'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{iterator_value}
 +
The current dictionary key can be obtained within the loop using the magic text.
 +
</pre>
 +
* '''''Iterator dictionary key'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{iterator_dictionary_key}
 +
The current dictionary key can be obtained within the loop using the magic text.
 +
</pre>
 +
* '''''Iterator array index'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{iterator_array_index}
 +
The current array index can be obtained within the loop using the magic text.
 +
</pre>
 +
==<p><b>Requires a trigger to operate</b></p>==
 +
 
 +
=== App Install/Remove/Update ===
 +
* '''''Application name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> {app_name}
 +
Returns the name of the application that was launched, for example "MacroDroid".
 +
</pre>
 +
* '''''Application package'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{app_package}
 +
Returns the package name of the application that was launched, for example, if it were MacroDroid the response would be "com.arlosoft.macrodroid".
 +
</pre>
 +
 
 +
=== Application Launched/Closed ===
 +
* '''''Application name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{app_name}
 +
Returns the name of the application that was launched, for example "MacroDroid".
 +
</pre>
 +
* '''''Application package'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{app_package}
 +
Returns the package name of the application that was launched, for example, if it were MacroDroid the response would be "com.arlosoft.macrodroid".
 +
</pre>
 +
 
 +
=== Bluetooth (Device connected or device disconnected) ===
 +
* '''''Bluetooth device name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{bluetooth_device_name}
 +
Returns the name of the bluetooth device, may be more useful when using the "Any device" option.
 +
 
 +
For example, if headphones are connected, it will return the device name.
 +
{bluetooth_device_name} = Headphones 1 Pro
 +
</pre>
 +
 
 +
=== Call (Active, Ended, Incoming, Missed, Outgoing) ===
 +
* '''''Call group(s)'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{call_groups}
 +
Returns the name of the group(s) where the contact is located.
 +
If the contact is in more than one group, it will return all the groups it is in, separated by a comma.
 +
 
 +
e.g. If you receive a call from Work colleague
 +
{call_groups} = Work colleagues, Friends
 +
</pre>
 +
* '''''Call name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">{call_name}
 +
Returns the number from which the call was received.
 +
e.g. If you receive a call from MacroDroid user
 +
 
 +
{call_name} = MacroDroid user
 +
</pre>
 +
* '''''Call number'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{call_number}
 +
Returns the name from where the call was received if available.
 +
 
 +
e.g. If you receive a call from 1234567890
 +
{call_number} = 1234567890
 +
</pre>
 +
=== SMS received ===
 +
* '''''Incoming SMS contact'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{sms_name} - Name of the person sending the SMS (the sender must be in your contact list).
 +
e.g. If you receive an SMS from Macrodroid user
 +
{sms_name} = Macrodroid user
 +
</pre>
 +
* '''''Incoming SMS message'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{sms_message} - Contains the text of the sms.
 +
e.g. If you receive an SMS with a message "Hello, have a nice day"
 +
{sms_message} = Hello, have a nice day
 +
</pre>
 +
* '''''Incoming SMS number'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{sms_number} - SMS sender number.
 +
e.g. If you receive an SMS from +1 1234567890
 +
{sms_number} = +1 1234567890
 +
</pre>
 +
* '''''Incoming SMS sim id'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{sms_sim_id} - Return the ID of your SIM.
 +
{sms_sim_id} = 4
 +
</pre>
 +
* '''''Incoming SMS sim name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{sms_sim_name} - Return the company name of your SIM.
 +
e.g. Vodafone
 +
{sms_sim_name} = Vodafone
 +
</pre>
 +
 
 +
=== Logcat ===
 +
* '''''Logcat entry line'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{logcat_line} - Returns the reference logcat line configured in the trigger.
 +
</pre>
 +
=== Notifications ===
 +
* '''''Notification title'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{not_title} - is a prominent text element that concisely summarizes the key subject or purpose of a notification.
 +
</pre>
 +
* '''''Notification ticker text'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{not_ticker} - is a brief text that scrolls temporarily across the status bar of an Android device when a new notification arrives. This feature was removed in Android 5.0 Lollipop, but it can still be found on some devices or restored using third-party apps.
 +
</pre>
 +
* '''''Notification text'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{notification} - is the text displayed in a notification. It is the main part of the notification and usually contains information about the content of the notification.
 +
</pre>
 +
* '''''Notification sub text'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{not_sub_text} - is a secondary text element that provides additional context or detail to a notification.
 +
</pre>
 +
* '''''Notification big text'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{not_text_lines} - is a feature that allows to display a more significant amount of text within a notification.
 +
</pre>
 +
* '''''Notification actions names'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{not_action_names} - are clickable buttons or links embedded within notifications that allow users to perform specific tasks directly without opening the associated app.
 +
</pre>
 +
* '''''Notification app name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{not_app_name} - is the name of the app that generated the notification.
 +
</pre>
 +
* '''''Notification app package'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{not_app_package} - is the package name of the application that created the notification.
 +
</pre>
 +
 
 +
=== Spotify ===
 +
* '''''Spotify track id'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{spotify_track_id} - Returns the Track ID of the song.
 +
</pre>
 +
* '''''Spotify artist'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{spotify_artist} - Returns the artist of the song, "Started music" is not supported
 +
</pre>
 +
* '''''Spotify album name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{spotify_album} - Returns the album of the song, "Started music" is not supported
 +
</pre>
 +
* '''''Spotify track name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{spotify_track} - Returns the name of the song, "Started music" is not supported
 +
</pre>
 +
* '''''Spotify length (s)'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{spotify_length_s} - Returns the length of the song in seconds.
 +
</pre>
 +
* '''''Spotify is playing'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{spotify_is_playing}- Returns a boolean state (true or false).
 +
</pre>
 +
 
 +
=== System settings ===
 +
* '''''System setting category'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{system_setting_category} - Category of the requested key (Global, Secure, System).
 +
</pre>
 +
* '''''System setting key'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{system_setting_key} - Returns the name of the key.
 +
</pre>
 +
* '''''System setting value'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{system_setting_value} - Returns the value of the key.
 +
</pre>
 +
 
 +
=== Text Shared to MacroDroid ===
 +
* '''''Shared Text'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{shared_text}
 +
 
 +
Gets the text that was sent from another application (Selected text > Share text > MacroDroid)
 +
</pre>
 +
 
 +
=== UI click ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{ui_click_text} - Gets the text it matches, most useful when the text it needs to match is a regular expression or text that changes constantly using some variable.
 +
</pre>
 +
 
 +
=== USB device connected ===
 +
* '''''USB product name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{usb_product_name} -  Gets the name of the device.
 +
</pre>
 +
* '''''USB manufacturer name'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{usb_manufacturer_name} -  Gets the name of the manufacturer.
 +
</pre>
 +
* '''''USB device hash code'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{usb_device_hash} - It is a unique identifier that is generated for each USB device.
 +
</pre>
 +
 
 +
=== Weather ===
 +
* '''''Temperature (Celsius)'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{weather_temperature_c} - Temperature (Celsius).
 +
</pre>
 +
* '''''Temperature (Temperature (fahrenheit)'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{weather_temperature_farenheit} - Temperature (fahrenheit).
 +
</pre>
 +
* '''''Wind speed m\s'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{weather_wind_speed} - Wind speed m\s.
 +
</pre>
 +
* '''''Wind speed (mph)'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{weather_wind_speed_mph} - Wind speed (mph).
 +
</pre>
 +
* '''''Wind speed (kmh)'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{weather_wind_speed_kmh} - Wind speed (kmh).
 +
</pre>
 +
* '''''Temperature Wind direction'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{weather_wind_direction} - Wind direction (degrees).
 +
</pre>
 +
* '''''Humidity'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{weather_humidity} - Humidity.
 +
</pre>
 +
* '''''Weather conditions'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{weather_conditions} - Weather conditions.
 +
</pre>
 +
 
 +
=== Webhook URL ===
 +
* '''''Webhook caller IP address'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{webhook_caller_ip_address}
 +
Gets the IP from where the call to the webhook was made.
 +
 
 +
Example:
 +
{webhook_caller_ip_address} = 189.172.30.212
 
</pre>
 
</pre>
  
{| class="wikitable" style="text-align: center; border-collapse:collapse; border-radius: 10px; overflow: hidden;"
+
==<p><b>Does not require a trigger to operate</b></p>==
|-
+
This magic text list does not need a specific trigger to appear.
! style="color:green" | Magic text that does NOT depend on triggers.
+
=== am/pm ===
! style="color:red" | Magic text depends on triggers.
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|+Updated to version 5.33.x (May 2023).
+
{am_pm}
|-
+
am or pm depending on the time.
|style="color:green;"|Stopwatches
+
</pre>
| style="color:red;" |App installed/updated/removed trigger:
+
=== Android version ===
*Application name
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
*Application package
+
{android_version}
|-
+
Returns the number of the android version.
|style="color:green;"|Variables users have created
+
</pre>
| style="color:red;" |Application opened/closed trigger:
+
=== Android version (SDK level) ===
*Application name
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{android_version_sdk}
|style="color:green;"|String variable length
+
Returns the SDK level of the Android version.
|style="color:red;" |Call triggers:
+
e.g. Android 14 has an SDK level of 34
*Call name
+
</pre>
*Call number
+
=== Battery current now (mA) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|String variable value
+
{battery_current_now}
|style="color:red;" |Bluethooth (Device connected or device disconnected):
+
Amount of electrical current flowing from the battery at this moment, measured in milliamps (mA)
*Bluethooth device name
+
</pre>
|-
+
=== Battery temp ºC===
|style="color:green;"|Dictionary/Array size
+
 
|style="color:red;" |SMS recived:
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
*Incoming SMS contact
+
{battery_temp}
*incoming SMS message
+
Temperature in degrees Celsius e.g. 34°
*incoming SMS number
+
</pre>
|-
+
=== Cell connection type ===
|style="color:green;"|New line
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:red;" |Logcat:
+
{cell_connection:type}
*Logcat entry line
+
cell connection type e.g. 3g, 4g, 5g.
|-
+
</pre>
|style="color:green;"|Foreground app name
+
=== Cell id ===
|style="color:red;" |Spotify:
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
*Track ID
+
{cell_id}
*Artist name
+
number that identifies an individual cell within a cellular network. Used for mobile phones to connect to the network and for the network to send data to mobile phones
*Album name
+
e.g. The cell identifier for a cell in New York City could be 310-200-0000. The LAC (310-200)
*Track name
+
</pre>
*Track length (s)
+
=== Cell tower signal strength ===
*Is playing
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{cell_signal_strength}
|style="color:green;"|Foreground app package
+
Returns the signal strength received by your mobile device from the nearest cell tower. It is expressed in units called decibels-milliwatts (dBm), with -50 dBm being the strongest signal and -110 dBm the weakest.
|style="color:red;" |Notifications:
+
</pre>
*Title
+
=== Clipboard text ===
*Ticker text
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
*Sub text
+
{clipboard}
*Text lines
+
Gets the text from the clipboard.
*Big lines
+
</pre>
*Action names
+
=== Current battery % ===
*App name
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
*App package
+
{battery}
|-
+
({battery_int} for integer variables)
|style="color:green;"|Current brightness
+
Current battery level (numbers only) e.g. '80'
|style="color:red;" |Weather
+
</pre>
*Temperature (Celsius)
+
=== Current brightness ===
*Temperature (Fahrenheit)
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
*Wind speed m/s
+
{current_brightness}
*Wind speed (mph)
+
Current brightness level (numbers only) e.g. '50'
*Wind speed (kmh)
+
</pre>
*Wind direction (degrees)
+
=== Current brightness (Android 9+ alternative) ===
*Humidity
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
*Weather conditions
+
{current_brightness_alternative}
|-
+
Current brightness level (numbers only) e.g. '50'
|style="color:green;"|Current brightness (Android 9+ alternative)
+
alternative method for devices with android 9+
|-
+
</pre>
|-
+
=== Current IP address ===
|style="color:green;"|Screen timeout (seconds)
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{ip}
|-
+
Current IP in 172.217.12.141 format (randomly generated IP).
|style="color:green;"|Current battery %
+
</pre>
|-
+
=== Current IP address (V6) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Battery temp ºC
+
{ip6}
|-
+
Current IP in format in 2001:0db8:85a3:0000:0000:8a2e:0370:7334 format (randomly generated IP).
|-
+
</pre>
|style="color:green;|"Power (on/off)
+
=== Current volume (Alarm) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{vol_alarm}
|style="color:green;"|Clipboard text
+
Current volume level used for alarms.
|-
+
</pre>
|-
+
=== Current volume (Bluetooth voice) ===
|style="color:green;"|Current IP address
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{vol_bt_voice}
|-
+
Current volume level used for multimedia/calls via Bluetooth.
|style="color:green;"|Current IP address (V6)
+
</pre>
|-
+
=== Current volume (Media / Music) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Wifi SSID
+
{vol_music}
|-
+
Current volume level used for multimedia.
|-
+
</pre>
|style="color:green;"|Wifi signal strength
+
=== Current volume (Notification) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{vol_notif}
|style="color:green;"|Cell tower signal strength
+
Current volume level used for notification alerts.
|-
+
</pre>
|-
+
=== Current volume (Ringer) ===
|style="color:green;"|Day of the week
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{vol_ring}
|-
+
Current volume level used for ringtone.
|style="color:green;"|Day of the month
+
</pre>
|-
+
=== Current volume (System sounds) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Week of year
+
{vol_system}
|-
+
Current volume level used for system sounds e.g. screen unlocking and locking, touch sounds among others.
|-
+
</pre>
|style="color:green;"|Month
+
=== Current volume (Voice call) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{vol_call}
|style="color:green;"|Month (as digit)
+
Current volume level used when a call is in progress.
|-
+
</pre>
|-
+
=== Day of the month ===
|style="color:green;"|Year
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{dayofmonth}
|-
+
Day of the month, includes 0 at the beginning (days 1 to 9) e.g. 04 or 24.
|style="color:green;"|Hour of day
+
</pre>
|-
+
=== Day of the week ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Hour of day (Leanding zero)
+
{dayofweek}
|-
+
Day of the week, e.g. Monday or Friday.
|-
+
</pre>
|style="color:green;"|Hour of day (12h)
+
=== Device manufacturer ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{device_manufacturer}
|style="color:green;"|Minute
+
Brand name of your device.
|-
+
</pre>
|-
+
=== Device model ===
|style="color:green;"|Second
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{device_model}
|-
+
Model name of your device.
|style="color:green;"|am/pm
+
</pre>
|-
+
=== Device uptime ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|System time
+
{uptime}
|-
+
Time that the device has been on (this time is reset if the device is restarted) in hour : minute : second.
|-
+
</pre>
|style="color:green;"|System time (ms)
+
=== Device uptime (s) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{uptime_secs}
|style="color:green;"|Webhook Base Url
+
Time that the device has been on (this time is reset if the device is restarted) in seconds e.g. 3000s
|-
+
</pre>
|-
+
=== Device serial ===
|style="color:green;"|System setting (System)
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{}
|-
+
Not available on android 10+.
|style="color:green;"|System setting (Global)
+
</pre>
|-
+
=== Dictionary/Array size ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|System setting (Secure)
+
{size=my_array}
|-
+
Size of an array or dictionary.
|-
+
e.g. to query the size of an array called "my_array" [0,1,2] it would look like this [size=my_array] the result would be 3.
|style="color:green;"|Cell connection type
+
</pre>
|-
+
=== Foreground app name ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Mobile country code
+
{fg_app_name}
|-
+
Name of the application in the foreground, if you are in macrodroid, the output will be MacroDroid.
|-
+
</pre>
|style="color:green;"|Mobile network code
+
=== Foreground app package ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{fg_app_package}
|style="color:green;"|Location area code
+
Package of the application in the foreground, if you are in macrodroid, the output will be MacroDroid.
|-
+
</pre>
|-
+
=== Hour of day ===
|style="color:green;"|IMEI
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{hour}
|-
+
Time of day in 24h format.
|style="color:green;"|Cell id
+
</pre>
|-
+
=== Hour of day (12h) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Last known location (lat,lon)
+
{hour12}
|-
+
Time of day in 12h format.
|-
+
</pre>
|style="color:green;"|Last known location (lat)
+
=== Hour of day (Leanding zero) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{hour_0}
|style="color:green;"|Last known location (lon)
+
Time of day in 24h format, includes leading zero.
|-
+
</pre>
|-
+
=== IMEI ===
|style="color:green;"|Last known location (altitude)
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{imei}
|-
+
Obtains the IMEI number, since Android 10+ this information is no longer available.
|style="color:green;"|Last known location (accuracy meters)
+
</pre>
|-
+
=== Language code ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Last known location (link)
+
{language_code}
|-
+
Language code used e.g. English is 'en'
|-
+
</pre>
|style="color:green;"|Last known location (time)
+
=== Last known location (accuracy meters) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{last_loc_accuracy}
|style="color:green;"|Last location speed (kmh)
+
Obtains the precision of the most recent known location, for example 10 meters, due to different causes the GPS may have a greater or lesser margin of positioning error, useful to know how precise the last known location is.
|-
+
</pre>
|-
+
=== Last known location (altitude) ===
|style="color:green;"|Last location speed (mph)
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{last_loc_alt}
|-
+
Gets the altitude above sea level of the last known location.
|style="color:green;"|Current volume (Alarm)
+
</pre>
|-
+
=== Last known location (lat) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Current volume (Media / Music)
+
{last_loc_lat}
|-
+
Gets the latitude above sea level of the last known location.
|-
+
</pre>
|style="color:green;"|Current volume (Ringer)
+
=== Last known location (lat,lon) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{last_loc_latlong}
|style="color:green;"|Current volume (Notification)
+
Gets the latitude and longitude above sea level of the last known location separated by ',' e.g. 23.44325,-23.215252
|-
+
</pre>
|-
+
=== Last known location (link) ===
|style="color:green;"|Current volume (System sounds)
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{last_loc_link}
|-
+
Gets a Google Maps link with the last known location.
|style="color:green;"|Current volume (Voice call)
+
</pre>
|-
+
=== Last known location (lon) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Current volume (Bluetooth voice)
+
{last_loc_long}
|-
+
Gets the longitude above sea level of the last known location.
|-
+
</pre>
|style="color:green;"|Macro name
+
=== Last known location (time) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{last_loc_age_timestamp}
|style="color:green;"|Macro id
+
Gets the last known time in format (year - month - day hour : minute : second).
|-
+
</pre>
|-
+
=== Last location speed (kmh) ===
|style="color:green;"|Macro category
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{last_loc_speed_kmh}
|-
+
Obtains the current speed in km h (You need something to be monitoring your route, for example Waze or Google Maps), otherwise the value will be equal to 0.
|style="color:green;"|Device serial
+
</pre>
|-
+
=== Last location speed (mph) ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Device name
+
{last_loc_speed_kmh}
|-
+
Obtains the current speed in mph (You need something to be monitoring your route, for example Waze or Google Maps), otherwise the value will be equal to 0.
|-
+
</pre>
|style="color:green;"|Device uptime
+
=== Location area code ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{lac}
|style="color:green;"|Device uptime (s)
+
The LAC is a 16-bit number that identifies a location area on a cellular network. Each location zone consists of 1 to 65534 radio transmission cells.
|-
+
</pre>
|-
+
=== Macro category ===
|style="color:green;"|Device manufacturer
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
Name of the category of the macro that was invoked, e.g. utilities, maps & navigation, notifications, productivity or custom names, etc.
|-
+
</pre>
|style="color:green;"|Device model
+
=== Macro id ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{macro_id}
|style="color:green;"|Macrodroid version
+
is a GUID number used to uniquely identify a macro file.
|-
+
</pre>
|-
+
=== Macro name ===
|style="color:green;"|Macrodroid is pro
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{macro_name}
|-
+
Name of the macro that was invoked.
|style="color:green;"|Android version
+
</pre>
|-
+
=== Macrodroid is pro ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Android  version (SDK level)
+
{macrodroid_is_pro}
|-
+
Boolean value (true or false) depending on whether macrodroid is pro or not.
|style="color:green;"|Sim operator name
+
</pre>
|-
+
=== Macrodroid version ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Screen resolution
+
{macrodroid_version}
|-
+
Version of macrodroid installed for example 5.40.x.
|-
+
</pre>
|style="color:green;"|Screen resolution (X)
+
=== Minute ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{minute}
|style="color:green;"|Screen resolution (Y)
+
Current minute.
|-
+
</pre>
|-
+
=== Mobile country code ===
|style="color:green;"|RAM (Total)
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{mcc}
|-
+
(MCC) is a three-digit country code used to identify the country of origin of a mobile network.
|style="color:green;"|RAM (available)
+
</pre>
|-
+
=== Mobile network code ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|style="color:green;"|Storage total (external)
+
{mnc}
|-
+
Mobile Network Code (MNC) is a two or three digit code that uniquely identifies a mobile network operator within a country.
|-
+
</pre>
|style="color:green;"|Storage free (external)
+
=== Month ===
|-
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{month}
|style="color:green;"|Storage total (internal)
+
Current month.
|-
+
</pre>
|-
+
=== Month (as digit) ===
|style="color:green;"|Storage free (external)
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
|-
+
{month_digit}
|-
+
Current month (in numerical format).
|}
+
</pre>
 +
=== New line ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
\n
 +
(Does not require { } )
 +
is a special character that indicates the end of a line of text and the beginning of a new line. It is used to organize text in a readable and easy-to-read format.
 +
e.g. Hello\nworld, the output would look like this:
 +
Hello
 +
world
 +
</pre>
 +
=== Power (on/off) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{power}
 +
Returns on or off depending on the current power state.
 +
e.g. If the charger is connected the response will be on.
 +
</pre>
 +
=== RAM (Total) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{ram_total}
 +
Returns real value of total RAM (not theoretical)
 +
On a device with 6 GB of RAM, macrodroid will return, for example, 5.79, which is the real value.
 +
</pre>
 +
=== RAM (available) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{ram_available}
 +
Returns available RAM value.
 +
</pre>
 +
=== Screen resolution ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{screen_res}
 +
Device screen resolution (X and Y) separated by ',' e.g. 1080,2400.
 +
</pre>
 +
=== Screen resolution (X) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{screen_res_x}
 +
Device screen resolution (X) using a reference screen X 1080 Y 2400 the output will be 1080.
 +
</pre>
 +
=== Screen resolution (Y) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{screen_res_y}
 +
Device screen resolution (Y) using a reference screen X 1080 Y 2400 the output will be 2400.
 +
</pre>
 +
=== Screen timeout (seconds) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
Time that must elapse before the screen turns off (in seconds).
 +
</pre>
 +
=== Second ===
 +
 
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
Current second.
 +
</pre>
 +
=== Sim operator name ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{sim_operator_name}
 +
Name of your telephone company.
 +
</pre>
 +
=== Sim 2 operator name ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{sim2_operator_name}
 +
Name of your telephone company in the 2nd sim slot.
 +
</pre>
 +
=== Stopwatches ===
 +
* '''''Seconds'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{stopwatch=f}
 +
It will not be visible if you do not have stopwatch created
 +
 
 +
Gets the total stopwatch time in seconds format e.g. 0.0
 +
</pre>
 +
* '''''hh:mm:ss'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{stopwatchtime=f}
 +
It will not be visible if you do not have stopwatch created
 +
 
 +
Obtains the total time of the stopwatch in hour : minute : second format e.g. 00:00:00
 +
</pre>
 +
=== Storage free (external) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{storage_external_free}
 +
Total amount of free space (external) e.g. 136GB.
 +
</pre>
 +
=== Storage free (internal) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{storage_internal_free}
 +
Total amount of free space (internal) e.g. 136GB.
 +
</pre>
 +
=== Storage total (external) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{storage_external_total}
 +
Actual amount of space on external storage, e.g. On a theoretical 256 GB device the real value can be 221GB.
 +
</pre>
 +
=== Storage total (internal) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{storage_internal_total}
 +
Actual amount of space on internal storage, e.g. On a theoretical 256 GB device the real value can be 221GB.
 +
</pre>
 +
=== String variable value ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{strlen=my_var}
 +
Length of a string variable, for the example we have a variable called my_var with the value 'hello world' the output would be 11
 +
</pre>
 +
=== System setting (Global) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{setting_global=development_settings_enabled}
 +
 
 +
Caution: Particular care should be taken when modifying settings, as incorrect changes could affect the functionality or security of the device.
 +
 
 +
For this example we will use the 'development_settings_enabled' key as a reference, which stores an int value (1 or 0) depending on whether the developer options are active or not.
 +
</pre>
 +
=== System setting (Secure) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{setting_secure=assistant}
 +
 
 +
Caution: Particular care should be taken when modifying settings, as incorrect changes could affect the functionality or security of the device.
 +
 
 +
For this example we will use the 'assistant' key as a reference, which stores a value of the assistant used, the associated value is com.google.android.googlequicksearchbox/com.google.android.voiceinteraction.GsaVoiceInteractionService
 +
 
 +
corresponds to the google assistant.
 +
</pre>
 +
=== System setting (System) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{setting_system=time_12_24}
 +
 
 +
Caution: Particular care should be taken when modifying settings, as incorrect changes could affect the functionality or security of the device.
 +
 
 +
For this example we will use the key 'time_12_24' as a reference, which stores a value of the time format used, the associated value is 12
 +
</pre>
 +
=== System time ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{system_time}
 +
The current time as maintained by your operating system.
 +
</pre>
 +
=== System time (ms) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{system_time_ms}
 +
The current time according to your device's internal clock, measured in milliseconds since the Unix epoch. The Unix epoch is a reference point in time, set as January 1, 1970, at 00:00:00 Coordinated Universal Time (UTC).
 +
</pre>
 +
=== Week of year ===
 +
</pre><pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{week_of_year}
 +
Returns the week number of the year, e.g. Wednesday, January 3, week is 1.
 +
</pre>
 +
=== Webhook Base Url ===
 +
</pre><pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{webhook_url}
 +
Returns the base url of your webhook e.g. https://trigger.macrodroid.com/6a10aa17-75cd-4856-9d71-84281205a320/ but it does not include the identifier only the base url, a complete url should look like this:
 +
https://trigger.macrodroid.com/6a10aa17-75cd-4856-9d71-84281205a320/mywebhook
 +
</pre>
 +
=== Wifi SSID ===
 +
</pre><pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{ssid}
 +
Name of the Wi-Fi network you are connected to.
 +
</pre>
 +
=== Wifi signal strength ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{wifi_strength}
 +
It represents the signal power in decibels per kilowatt. The higher the number (a negative number), the stronger the signal. For example, -60 dBm is louder than -70 dBm.
 +
</pre>
 +
=== Year ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{year}
 +
Current year.
 +
</pre>

Latest revision as of 18:58, 31 July 2024

(Updated to version 5.44, latest edition 15 April, 2024)

About

In many triggers, actions and constraints you will have the option to configure some textual fields. Often you will find a button next to the text entry field that contains the "..." label. This button will display a complete list of "magic text" fields that are available in the context that is being used.

If you wish to manually type them instead if you know them, be aware that there can be spelling/typing mistakes.

Magic text for dictionaries/arrays is written like this : {lv=dictionary/array name[entry][sub-entry]} There can be as many [sub-entry] as you want. Be aware that it can get complicated pretty fast! Curly {} brackets were added so users would see the beginning and end of a dictionary/array magic text with ease.

The magic text allows some other value to be substituted at the point of invocation, rather than standard static text that will never changed. For example it's possible to add an action that references a variable via magic text and that variable's value will be substituted at the point that action is run.

Magic text can be written in 2 ways : Curly brackets {value} and square brackets [value]. Curly brackets aren't supported on very old versions like v5.20 and below but it's recommended to use it when interacting with dictionaries/arrays as with square brackets it can get confusing where you are very quickly.

Requires a condition (loop)

This action is a specialized type of loop that can be used to iterate over all elements within a dictionary/array.

Iterate Dictionary/Array

  • Iterator value
{iterator_value}
The current dictionary key can be obtained within the loop using the magic text.
  • Iterator dictionary key
{iterator_dictionary_key}
The current dictionary key can be obtained within the loop using the magic text.
  • Iterator array index
{iterator_array_index}
The current array index can be obtained within the loop using the magic text.

Requires a trigger to operate

App Install/Remove/Update

  • Application name
 {app_name}
Returns the name of the application that was launched, for example "MacroDroid".
  • Application package
{app_package}
Returns the package name of the application that was launched, for example, if it were MacroDroid the response would be "com.arlosoft.macrodroid".

Application Launched/Closed

  • Application name
{app_name}
Returns the name of the application that was launched, for example "MacroDroid".
  • Application package
{app_package}
Returns the package name of the application that was launched, for example, if it were MacroDroid the response would be "com.arlosoft.macrodroid".

Bluetooth (Device connected or device disconnected)

  • Bluetooth device name
{bluetooth_device_name}
Returns the name of the bluetooth device, may be more useful when using the "Any device" option.

For example, if headphones are connected, it will return the device name.
{bluetooth_device_name} = Headphones 1 Pro

Call (Active, Ended, Incoming, Missed, Outgoing)

  • Call group(s)
{call_groups}
Returns the name of the group(s) where the contact is located.
If the contact is in more than one group, it will return all the groups it is in, separated by a comma.

e.g. If you receive a call from Work colleague
{call_groups} = Work colleagues, Friends
  • Call name
{call_name}
Returns the number from which the call was received.
e.g. If you receive a call from MacroDroid user

{call_name} = MacroDroid user
  • Call number
{call_number}
Returns the name from where the call was received if available.

e.g. If you receive a call from 1234567890
{call_number} = 1234567890

SMS received

  • Incoming SMS contact
{sms_name} - Name of the person sending the SMS (the sender must be in your contact list).
e.g. If you receive an SMS from Macrodroid user
{sms_name} = Macrodroid user
  • Incoming SMS message
{sms_message} - Contains the text of the sms.
e.g. If you receive an SMS with a message "Hello, have a nice day"
{sms_message} = Hello, have a nice day
  • Incoming SMS number
{sms_number} - SMS sender number.
e.g. If you receive an SMS from +1 1234567890
{sms_number} = +1 1234567890
  • Incoming SMS sim id
{sms_sim_id} - Return the ID of your SIM.
{sms_sim_id} = 4
  • Incoming SMS sim name
{sms_sim_name} - Return the company name of your SIM.
e.g. Vodafone
{sms_sim_name} = Vodafone

Logcat

  • Logcat entry line
{logcat_line} - Returns the reference logcat line configured in the trigger.

Notifications

  • Notification title
{not_title} - is a prominent text element that concisely summarizes the key subject or purpose of a notification.
  • Notification ticker text
{not_ticker} - is a brief text that scrolls temporarily across the status bar of an Android device when a new notification arrives. This feature was removed in Android 5.0 Lollipop, but it can still be found on some devices or restored using third-party apps.
  • Notification text
{notification} - is the text displayed in a notification. It is the main part of the notification and usually contains information about the content of the notification.
  • Notification sub text
{not_sub_text} - is a secondary text element that provides additional context or detail to a notification.
  • Notification big text
{not_text_lines} - is a feature that allows to display a more significant amount of text within a notification.
  • Notification actions names
{not_action_names} - are clickable buttons or links embedded within notifications that allow users to perform specific tasks directly without opening the associated app.
  • Notification app name
{not_app_name} - is the name of the app that generated the notification.
  • Notification app package
{not_app_package} - is the package name of the application that created the notification.

Spotify

  • Spotify track id
{spotify_track_id} - Returns the Track ID of the song.
  • Spotify artist
{spotify_artist} - Returns the artist of the song, "Started music" is not supported
  • Spotify album name
{spotify_album} - Returns the album of the song, "Started music" is not supported
  • Spotify track name
{spotify_track} - Returns the name of the song, "Started music" is not supported
  • Spotify length (s)
{spotify_length_s} - Returns the length of the song in seconds.
  • Spotify is playing
{spotify_is_playing}- Returns a boolean state (true or false).

System settings

  • System setting category
{system_setting_category} - Category of the requested key (Global, Secure, System).
  • System setting key
{system_setting_key} - Returns the name of the key.
  • System setting value
{system_setting_value} - Returns the value of the key.

Text Shared to MacroDroid

  • Shared Text
{shared_text}

Gets the text that was sent from another application (Selected text > Share text > MacroDroid)

UI click

{ui_click_text} - Gets the text it matches, most useful when the text it needs to match is a regular expression or text that changes constantly using some variable.

USB device connected

  • USB product name
{usb_product_name} -  Gets the name of the device.
  • USB manufacturer name
{usb_manufacturer_name} -  Gets the name of the manufacturer.
  • USB device hash code
{usb_device_hash} - It is a unique identifier that is generated for each USB device.

Weather

  • Temperature (Celsius)
{weather_temperature_c} - Temperature (Celsius).
  • Temperature (Temperature (fahrenheit)
{weather_temperature_farenheit} - Temperature (fahrenheit).
  • Wind speed m\s
{weather_wind_speed} - Wind speed m\s.
  • Wind speed (mph)
{weather_wind_speed_mph} - Wind speed (mph).
  • Wind speed (kmh)
{weather_wind_speed_kmh} - Wind speed (kmh).
  • Temperature Wind direction
{weather_wind_direction} - Wind direction (degrees).
  • Humidity
{weather_humidity} - Humidity.
  • Weather conditions
{weather_conditions} - Weather conditions.

Webhook URL

  • Webhook caller IP address
{webhook_caller_ip_address}
Gets the IP from where the call to the webhook was made.

Example:
{webhook_caller_ip_address} = 189.172.30.212

Does not require a trigger to operate

This magic text list does not need a specific trigger to appear.

am/pm

{am_pm}
am or pm depending on the time.

Android version

{android_version}
Returns the number of the android version.

Android version (SDK level)

{android_version_sdk}
Returns the SDK level of the Android version.
e.g. Android 14 has an SDK level of 34

Battery current now (mA)

{battery_current_now}
Amount of electrical current flowing from the battery at this moment, measured in milliamps (mA)

Battery temp ºC

{battery_temp}
Temperature in degrees Celsius e.g. 34°

Cell connection type

{cell_connection:type}
cell connection type e.g. 3g, 4g, 5g.

Cell id

{cell_id}
number that identifies an individual cell within a cellular network. Used for mobile phones to connect to the network and for the network to send data to mobile phones
e.g. The cell identifier for a cell in New York City could be 310-200-0000. The LAC (310-200)

Cell tower signal strength

{cell_signal_strength}
Returns the signal strength received by your mobile device from the nearest cell tower. It is expressed in units called decibels-milliwatts (dBm), with -50 dBm being the strongest signal and -110 dBm the weakest.

Clipboard text

{clipboard}
Gets the text from the clipboard.

Current battery %

{battery} 
({battery_int} for integer variables)
Current battery level (numbers only) e.g. '80'

Current brightness

{current_brightness}
Current brightness level (numbers only) e.g. '50'

Current brightness (Android 9+ alternative)

{current_brightness_alternative}
Current brightness level (numbers only) e.g. '50'
alternative method for devices with android 9+

Current IP address

{ip}
Current IP in 172.217.12.141 format (randomly generated IP).

Current IP address (V6)

{ip6}
Current IP in format in 2001:0db8:85a3:0000:0000:8a2e:0370:7334 format (randomly generated IP).

Current volume (Alarm)

{vol_alarm}
Current volume level used for alarms.

Current volume (Bluetooth voice)

{vol_bt_voice}
Current volume level used for multimedia/calls via Bluetooth.

Current volume (Media / Music)

{vol_music}
Current volume level used for multimedia.

Current volume (Notification)

{vol_notif}
Current volume level used for notification alerts.

Current volume (Ringer)

{vol_ring}
Current volume level used for ringtone.

Current volume (System sounds)

{vol_system}
Current volume level used for system sounds e.g. screen unlocking and locking, touch sounds among others.

Current volume (Voice call)

{vol_call}
Current volume level used when a call is in progress.

Day of the month

{dayofmonth}
Day of the month, includes 0 at the beginning (days 1 to 9) e.g. 04 or 24.

Day of the week

{dayofweek}
Day of the week, e.g. Monday or Friday.

Device manufacturer

{device_manufacturer}
Brand name of your device.

Device model

{device_model}
Model name of your device.

Device uptime

{uptime}
Time that the device has been on (this time is reset if the device is restarted) in hour : minute : second.

Device uptime (s)

{uptime_secs}
Time that the device has been on (this time is reset if the device is restarted) in seconds e.g. 3000s

Device serial

{}
Not available on android 10+.

Dictionary/Array size

{size=my_array}
Size of an array or dictionary.
e.g. to query the size of an array called "my_array" [0,1,2] it would look like this [size=my_array] the result would be 3.

Foreground app name

{fg_app_name}
Name of the application in the foreground, if you are in macrodroid, the output will be MacroDroid.

Foreground app package

{fg_app_package}
Package of the application in the foreground, if you are in macrodroid, the output will be MacroDroid.

Hour of day

{hour}
Time of day in 24h format.

Hour of day (12h)

{hour12}
Time of day in 12h format.

Hour of day (Leanding zero)

{hour_0}
Time of day in 24h format, includes leading zero.

IMEI

{imei}
Obtains the IMEI number, since Android 10+ this information is no longer available.

Language code

{language_code}
Language code used e.g. English is 'en'

Last known location (accuracy meters)

{last_loc_accuracy}
Obtains the precision of the most recent known location, for example 10 meters, due to different causes the GPS may have a greater or lesser margin of positioning error, useful to know how precise the last known location is.

Last known location (altitude)

{last_loc_alt}
Gets the altitude above sea level of the last known location.

Last known location (lat)

{last_loc_lat}
Gets the latitude above sea level of the last known location.

Last known location (lat,lon)

{last_loc_latlong}
Gets the latitude and longitude above sea level of the last known location separated by ',' e.g. 23.44325,-23.215252

Last known location (link)

{last_loc_link}
Gets a Google Maps link with the last known location.

Last known location (lon)

{last_loc_long}
Gets the longitude above sea level of the last known location.

Last known location (time)

{last_loc_age_timestamp}
Gets the last known time in format (year - month - day hour : minute : second).

Last location speed (kmh)

{last_loc_speed_kmh}
Obtains the current speed in km h (You need something to be monitoring your route, for example Waze or Google Maps), otherwise the value will be equal to 0.

Last location speed (mph)

{last_loc_speed_kmh}
Obtains the current speed in mph (You need something to be monitoring your route, for example Waze or Google Maps), otherwise the value will be equal to 0.

Location area code

{lac}
The LAC is a 16-bit number that identifies a location area on a cellular network. Each location zone consists of 1 to 65534 radio transmission cells.

Macro category

Name of the category of the macro that was invoked, e.g. utilities, maps & navigation, notifications, productivity or custom names, etc.

Macro id

{macro_id}
is a GUID number used to uniquely identify a macro file.

Macro name

{macro_name}
Name of the macro that was invoked.

Macrodroid is pro

{macrodroid_is_pro}
Boolean value (true or false) depending on whether macrodroid is pro or not.

Macrodroid version

{macrodroid_version}
Version of macrodroid installed for example 5.40.x.

Minute

{minute}
Current minute.

Mobile country code

{mcc}
(MCC) is a three-digit country code used to identify the country of origin of a mobile network.

Mobile network code

{mnc}
Mobile Network Code (MNC) is a two or three digit code that uniquely identifies a mobile network operator within a country.

Month

{month}
Current month.

Month (as digit)

{month_digit}
Current month (in numerical format).

New line

\n
(Does not require { } )
is a special character that indicates the end of a line of text and the beginning of a new line. It is used to organize text in a readable and easy-to-read format.
e.g. Hello\nworld, the output would look like this:
Hello
world

Power (on/off)

{power}
Returns on or off depending on the current power state.
e.g. If the charger is connected the response will be on.

RAM (Total)

{ram_total}
Returns real value of total RAM (not theoretical)
On a device with 6 GB of RAM, macrodroid will return, for example, 5.79, which is the real value.

RAM (available)

{ram_available}
Returns available RAM value.

Screen resolution

{screen_res}
Device screen resolution (X and Y) separated by ',' e.g. 1080,2400.

Screen resolution (X)

{screen_res_x}
Device screen resolution (X) using a reference screen X 1080 Y 2400 the output will be 1080.

Screen resolution (Y)

{screen_res_y}
Device screen resolution (Y) using a reference screen X 1080 Y 2400 the output will be 2400.

Screen timeout (seconds)

Time that must elapse before the screen turns off (in seconds).

Second

Current second.

Sim operator name

{sim_operator_name}
Name of your telephone company.

Sim 2 operator name

{sim2_operator_name}
Name of your telephone company in the 2nd sim slot.

Stopwatches

  • Seconds
{stopwatch=f}
It will not be visible if you do not have stopwatch created

Gets the total stopwatch time in seconds format e.g. 0.0
  • hh:mm:ss
{stopwatchtime=f}
It will not be visible if you do not have stopwatch created

Obtains the total time of the stopwatch in hour : minute : second format e.g. 00:00:00

Storage free (external)

{storage_external_free}
Total amount of free space (external) e.g. 136GB.

Storage free (internal)

{storage_internal_free}
Total amount of free space (internal) e.g. 136GB.

Storage total (external)

{storage_external_total}
Actual amount of space on external storage, e.g. On a theoretical 256 GB device the real value can be 221GB.

Storage total (internal)

{storage_internal_total}
Actual amount of space on internal storage, e.g. On a theoretical 256 GB device the real value can be 221GB.

String variable value

{strlen=my_var}
Length of a string variable, for the example we have a variable called my_var with the value 'hello world' the output would be 11

System setting (Global)

{setting_global=development_settings_enabled}

Caution: Particular care should be taken when modifying settings, as incorrect changes could affect the functionality or security of the device.

For this example we will use the 'development_settings_enabled' key as a reference, which stores an int value (1 or 0) depending on whether the developer options are active or not.

System setting (Secure)

{setting_secure=assistant}

Caution: Particular care should be taken when modifying settings, as incorrect changes could affect the functionality or security of the device.

For this example we will use the 'assistant' key as a reference, which stores a value of the assistant used, the associated value is com.google.android.googlequicksearchbox/com.google.android.voiceinteraction.GsaVoiceInteractionService

corresponds to the google assistant.

System setting (System)

{setting_system=time_12_24}

Caution: Particular care should be taken when modifying settings, as incorrect changes could affect the functionality or security of the device.

For this example we will use the key 'time_12_24' as a reference, which stores a value of the time format used, the associated value is 12

System time

{system_time}
The current time as maintained by your operating system.

System time (ms)

{system_time_ms}
The current time according to your device's internal clock, measured in milliseconds since the Unix epoch. The Unix epoch is a reference point in time, set as January 1, 1970, at 00:00:00 Coordinated Universal Time (UTC).

Week of year

{week_of_year} Returns the week number of the year, e.g. Wednesday, January 3, week is 1.

Webhook Base Url

{webhook_url} Returns the base url of your webhook e.g. https://trigger.macrodroid.com/6a10aa17-75cd-4856-9d71-84281205a320/ but it does not include the identifier only the base url, a complete url should look like this: https://trigger.macrodroid.com/6a10aa17-75cd-4856-9d71-84281205a320/mywebhook

Wifi SSID

{ssid} Name of the Wi-Fi network you are connected to.

Wifi signal strength

{wifi_strength}
It represents the signal power in decibels per kilowatt. The higher the number (a negative number), the stronger the signal. For example, -60 dBm is louder than -70 dBm.

Year

{year}
Current year.