(Replaced "^" by "º" in "Battery temp ºC")
Tags: Mobile web edit Mobile edit
 
(45 intermediate revisions by 3 users not shown)
Line 1: Line 1:
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.
+
(Updated to version 5.44, latest edition 15 April, 2024)
  
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.
+
== About ==
  
Full list of static magic text options NOT dependant on triggers:
+
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.
  
MacroDroid mode
+
If you wish to manually type them instead if you know them, be aware that there can be spelling/typing mistakes.
  
-Stopwatches-
+
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.
  
-Variables users have created-
+
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.
 
 
String variable length
 
 
 
String variable value
 
 
 
New line
 
 
 
Foreground app name
 
 
 
Foreground app package
 
 
 
Current brightness
 
 
 
Current brightness (Android 9+ alternative)
 
 
 
Screen timeout (seconds)
 
 
 
Current battery %
 
 
 
Battery temp ºC
 
 
 
Power (on/off)
 
 
 
Clipboard text
 
 
 
Current IP address
 
 
 
Wifi SSID
 
 
 
Wifi signal strength
 
 
 
Day of the week
 
 
 
Day of the month
 
 
 
Week of year
 
 
 
Month
 
 
 
Month (as digit)
 
 
 
Year
 
 
 
Hour of day
 
 
 
Hour of day (12h)
 
 
 
Minute
 
 
 
Second
 
 
 
am/pm
 
 
 
System time
 
 
 
System setting (System)
 
 
 
System setting (Global)
 
 
 
System setting (Secure)
 
 
 
Mobile country code
 
 
 
Mobile network code
 
 
 
Location area code
 
 
 
IMEI
 
 
 
Cell id
 
 
 
Last known location (lat,lon)
 
  
Last known location (lat)
+
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.
  
Last known location (lon)
+
==<p><b>Requires a condition (loop)</b></p>==
  
Last known location (altitude)
+
This action is a specialized type of loop that can be used to iterate over all elements within a dictionary/array.
  
Last known location (accuracy meters)
+
=== 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>==
  
Last known location (link)
+
=== 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>
  
Last known location (time)
+
=== 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>
  
Last location speed (kmh)
+
=== Bluethooth (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.
  
Last location speed (mph)
+
For example, if headphones are connected, it will return the device name.
 +
{bluetooth_device_name} = Headphones 1 Pro
 +
</pre>
  
Current volume (Alarm)
+
=== 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.
  
Current volume (Media / Music)
+
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
  
Current volume (Ringer)
+
{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.
  
Current volume (Notification)
+
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>
  
Current volume (System sounds)
+
=== 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>
  
Current volume (Voice call)
+
=== 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>
  
Current volume (Bluetooth voice)
+
=== 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>
  
Macro name
+
=== Text Shared to MacroDroid ===
 +
* '''''Shared Text'''''
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{shared_text}
  
Macro category
+
Gets the text that was sent from another application (Selected text > Share text > MacroDroid)
 +
</pre>
  
Device serial
+
=== 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>
  
Device name
+
=== 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>
  
Device uptime
+
=== 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>
  
Device uptime (s)
+
=== 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.
  
Device manufacturer
+
Example:
 +
{webhook_caller_ip_address} = 189.172.30.212
 +
</pre>
  
Device model
+
==<p><b>Does not require a trigger to operate</b></p>==
 +
This magic text list does not need a specific trigger to appear.
 +
=== am/pm ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{am_pm}
 +
am or pm depending on the time.
 +
</pre>
 +
=== Android version ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{android_version}
 +
Returns the number of the android version.
 +
</pre>
 +
=== Android version (SDK level) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{android_version_sdk}
 +
Returns the SDK level of the Android version.
 +
e.g. Android 14 has an SDK level of 34
 +
</pre>
 +
=== Battery current now (mA) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{battery_current_now}
 +
Amount of electrical current flowing from the battery at this moment, measured in milliamps (mA)
 +
</pre>
 +
=== Battery temp ºC===
  
Android version
+
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{battery_temp}
 +
Temperature in degrees Celsius e.g. 34°
 +
</pre>
 +
=== Cell connection type ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{cell_connection:type}
 +
cell connection type e.g. 3g, 4g, 5g.
 +
</pre>
 +
=== Cell id ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{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)
 +
</pre>
 +
=== Cell tower signal strength ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{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.
 +
</pre>
 +
=== Clipboard text ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{clipboard}
 +
Gets the text from the clipboard.
 +
</pre>
 +
=== Current battery % ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{battery}
 +
({battery_int} for integer variables)
 +
Current battery level (numbers only) e.g. '80'
 +
</pre>
 +
=== Current brightness ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{current_brightness}
 +
Current brightness level (numbers only) e.g. '50'
 +
</pre>
 +
=== Current brightness (Android 9+ alternative) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{current_brightness_alternative}
 +
Current brightness level (numbers only) e.g. '50'
 +
alternative method for devices with android 9+
 +
</pre>
 +
=== Current IP address ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{ip}
 +
Current IP in 172.217.12.141 format (randomly generated IP).
 +
</pre>
 +
=== Current IP address (V6) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{ip6}
 +
Current IP in format in 2001:0db8:85a3:0000:0000:8a2e:0370:7334 format (randomly generated IP).
 +
</pre>
 +
=== Current volume (Alarm) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{vol_alarm}
 +
Current volume level used for alarms.
 +
</pre>
 +
=== Current volume (Bluetooth voice) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{vol_bt_voice}
 +
Current volume level used for multimedia/calls via Bluetooth.
 +
</pre>
 +
=== Current volume (Media / Music) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{vol_music}
 +
Current volume level used for multimedia.
 +
</pre>
 +
=== Current volume (Notification) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{vol_notif}
 +
Current volume level used for notification alerts.
 +
</pre>
 +
=== Current volume (Ringer) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{vol_ring}
 +
Current volume level used for ringtone.
 +
</pre>
 +
=== Current volume (System sounds) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{vol_system}
 +
Current volume level used for system sounds e.g. screen unlocking and locking, touch sounds among others.
 +
</pre>
 +
=== Current volume (Voice call) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{vol_call}
 +
Current volume level used when a call is in progress.
 +
</pre>
 +
=== Day of the month ===
 +
<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.
 +
</pre>
 +
=== Day of the week ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{dayofweek}
 +
Day of the week, e.g. Monday or Friday.
 +
</pre>
 +
=== Device manufacturer ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{device_manufacturer}
 +
Brand name of your device.
 +
</pre>
 +
=== Device model ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{device_model}
 +
Model name of your device.
 +
</pre>
 +
=== Device uptime ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{uptime}
 +
Time that the device has been on (this time is reset if the device is restarted) in hour : minute : second.
 +
</pre>
 +
=== Device uptime (s) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{uptime_secs}
 +
Time that the device has been on (this time is reset if the device is restarted) in seconds e.g. 3000s
 +
</pre>
 +
=== Device serial ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{}
 +
Not available on android 10+.
 +
</pre>
 +
=== Dictionary/Array size ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{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.
 +
</pre>
 +
=== Foreground app name ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{fg_app_name}
 +
Name of the application in the foreground, if you are in macrodroid, the output will be MacroDroid.
 +
</pre>
 +
=== Foreground app package ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{fg_app_package}
 +
Package of the application in the foreground, if you are in macrodroid, the output will be MacroDroid.
 +
</pre>
 +
=== Hour of day ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{hour}
 +
Time of day in 24h format.
 +
</pre>
 +
=== Hour of day (12h) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{hour12}
 +
Time of day in 12h format.
 +
</pre>
 +
=== Hour of day (Leanding zero) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{hour_0}
 +
Time of day in 24h format, includes leading zero.
 +
</pre>
 +
=== IMEI ===
 +
<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.
 +
</pre>
 +
=== Language code ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{language_code}
 +
Language code used e.g. English is 'en'
 +
</pre>
 +
=== Last known location (accuracy meters) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{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.
 +
</pre>
 +
=== Last known location (altitude) ===
 +
<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.
 +
</pre>
 +
=== Last known location (lat) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{last_loc_lat}
 +
Gets the latitude above sea level of the last known location.
 +
</pre>
 +
=== Last known location (lat,lon) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{last_loc_latlong}
 +
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) ===
 +
<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.
 +
</pre>
 +
=== Last known location (lon) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{last_loc_long}
 +
Gets the longitude above sea level of the last known location.
 +
</pre>
 +
=== Last known location (time) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{last_loc_age_timestamp}
 +
Gets the last known time in format (year - month - day hour : minute : second).
 +
</pre>
 +
=== Last location speed (kmh) ===
 +
<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.
 +
</pre>
 +
=== Last location speed (mph) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{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>
 +
=== Location area code ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{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.
 +
</pre>
 +
=== Macro category ===
 +
<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>
 +
=== Macro id ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{macro_id}
 +
is a GUID number used to uniquely identify a macro file.
 +
</pre>
 +
=== Macro name ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{macro_name}
 +
Name of the macro that was invoked.
 +
</pre>
 +
=== Macrodroid is pro ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{macrodroid_is_pro}
 +
Boolean value (true or false) depending on whether macrodroid is pro or not.
 +
</pre>
 +
=== Macrodroid version ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{macrodroid_version}
 +
Version of macrodroid installed for example 5.40.x.
 +
</pre>
 +
=== Minute ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{minute}
 +
Current minute.
 +
</pre>
 +
=== Mobile country code ===
 +
<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.
 +
</pre>
 +
=== Mobile network code ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{mnc}
 +
Mobile Network Code (MNC) is a two or three digit code that uniquely identifies a mobile network operator within a country.
 +
</pre>
 +
=== Month ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{month}
 +
Current month.
 +
</pre>
 +
=== Month (as digit) ===
 +
<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 ===
  
Android  version (SDK level)
+
<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
  
Storage total (external)
+
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
  
Storage free (external)
+
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}
  
Storage total (internal)
+
Caution: Particular care should be taken when modifying settings, as incorrect changes could affect the functionality or security of the device.
  
Storage free (external)
+
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.
  
List of additional magic text dependant on triggers:
+
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
  
App installed/updated/removed trigger:
+
corresponds to the google assistant.
Application name
+
</pre>
Application package
+
=== System setting (System) ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 +
{setting_system=time_12_24}
  
Application opened/closed trigger:
+
Caution: Particular care should be taken when modifying settings, as incorrect changes could affect the functionality or security of the device.
Application name
 
  
Call triggers:
+
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
Call name
+
</pre>
Call number
+
=== 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 17:28, 23 April 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 and action that reference 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".

Bluethooth (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.