Base Concepts Creating the First Flow Creating a Custom Widget Main Screens
Triggers Conditions Actions
Actions
Answer Ringing Call Call Number Clear Automagic Log Close System DialogsConnect/Disconnect Bluetooth Device Control Audio Player
Control UI Copy File Copy Files
Copy Text from Clipboard Copy Text to Clipboard Create Calendar Event Create Directories Delete Files
Dismiss Slide to Unlock Keyguard Download URL
Dropbox Delete Files Dropbox Download Files Dropbox Upload File Dropbox Upload Files Enable WiFi Access Point End Call
Execute Command Execute Flows
Execute Root Command Export Flows/Widgets Flashlight FTP Delete Files FTP Download Files FTP Upload File FTP Upload Files Gleeo Create Entry
Gleeo Filesystem Export Gleeo Start Recording Gleeo Stop Recording
Google Drive Delete Files (Experimental) Google Drive Download Files
(Experimental) Google Drive Upload Files (Experimental) Hide Custom Widget Overlay
HTTP Request Import Flows/Widgets Init Variable File List Init Variable Image File Init Variable Location Init Variable Random Number Init Variable System Setting Init Variable Text File Init Variables Call Log
Init Variables Device Orientation Init Variables File Info
Init Variables Gleeo Recording Init Variables Phone Info Input Dialog
Input Speech (Experimental) Kill App
Kill App Process Launch App Launch Shortcut Lock Device Mail with Gmail Map Values Message Dialog Modify Call Log Modify Image Move Files
Notification on Screen Notification on Statusbar Open URL in Browser
Perform Action on Notification on Statusbar Plugin (Experimental)
Post Tweet
Post Twitter Direct Message Query Content Provider Reboot
Remove Notification Missed Calls Remove Notification on Statusbar Request Sync Reregister Media Button Receiver Restore Audio Volumes
Save Variable in Image File Scan Barcode
Script
Send Broadcast Send SMS
Send Wake on LAN Packet Set Airplane Mode Set Alarm
Set Audio Manager Mode Set Audio Volume Set Auto Sync State Set Auto-rotate Screen State Set Bluetooth SCO State Set Bluetooth State
Set Bluetooth Tethering State
Set Car UI Mode Set Data Roaming State Set Default Input Method Set Default Ringtone Set Flow State Set GPS State Set Keyguard State Set Lock Pattern State Set Lock PIN/Password Set Microphone Mute Set Mobile Datanetwork State Set Mobile Network Mode (2G/3G) Set Network Location State Set NFC State
Set Night Mode Set Ringer Mode Set Screen Brightness Set Screen Orientation Set Screen Timeout Set Speakerphone State Set System Locale Set System Setting Set Telephony Radio State Set Timer
Set USB Debugging State Set USB Tethering State Set Vibrate on Ring State Set Wallpaper
Set WiFi Access Point Priority Set WiFi Sleep Policy Set WiFi State Set Wifi Tethering State Show Call Log
Show Custom Widget Overlay Show Home Screen
Show Input Method Selector Shutdown Silence Ringer Sleep Sound Speech Output Start Activity Start Daydream Start Recording Audio Start Service Stop Action Sound Stop Action Speech Output Stop Flows
Stop Recording Audio Store Audio Volumes Take Picture Turn Screen On Unzip Files Vibrate
Voice Search (Experimental) WiFi Reassociate
WiFi Scan
Write HTTP Response File (Experimental) Write HTTP Response Text (Experimental) Write to File
Write to Log Zip Files
Answer Ringing Call
The action Answer Ringing Call answers the currently-ringing call.
Warning: This function requires root access, is not officially supported by Android and might not work on all devices.
Examples:
Automatically answer a call when you are prepared to answer calls but don't have your hands free. Settings Method
Defines the method to use to answer the call.
Call Number
The action Call Number calls a number by opening the telephone application and directly calling the supplied number.
Example:
Automatically call a contact at 6pm.
Settings Number
The number to call. Variables are supported. Directly initiate call
The action Clear Automagic Log clears the internal log of Automagic (not the log on the SD-card when enabled in the
preferences).
Close System Dialogs
The action Close System Dialogs closes system dialogs like the expanded notification area, the expanded quick settings or
the power-menu.
Whether dialog is classified as a system dialog or not is controlled by the dialog itself. Regular dialogs and windows can not be closed using this action.
Connect/Disconnect Bluetooth Device
The action Connect/Disconnect Bluetooth Device tries to connect/disconnect to/from a paired bluetooth device (Android 3+ required). Warning: This function is not officially supported by Android and might not work on all devices.
Examples:
Connect to the bluetooth headset when a shortcut is pressed.
Settings
Bluetooth Profile
Defines the type of connection to establish.
Bluetooth Device Address
The address of the bluetooth device. Variables are supported. Bluetooth Device Name
The name of the bluetooth device.
Connect or disconnect Whether
to connect or disconnect.
The action Control Audio Player can launch and control the default audio player of Android. Note that device and
manufacturer specific audio players will probably not work.
Warning: This function is not officially supported by Android and might not work on all devices.
Examples:
Pause the audio player when the headphones are disconnected.
Settings Control Type
Defines the method used to control the media player:
Media Button: Simulates the press of a media button Broadcast: Sends a broadcast to the audio service Media Button
The button to press (not all apps handle all buttons):
Play: Starts to play (Android >3)
Play/Pause: Toggles between play and pause Pause: Pauses the audio player (Android >3) Stop: Stops the audio player
Previous: Plays the previous track Next: Plays the next track Fast forward: Fast forward Rewind: Rewind
Eject: Ejects the media (for example a CD tray) (Android >3) Close: Closes the media tray (for example a CD tray) (Android >3) Record: Starts to record (Android >3)
Track: Switches the audio track (Android >4.4) send to specified app
Whether to let the system choose the app to handle the media button or if the media button event should be sent to a specific app. This is mostly useful when multiple audio players are installed and the event is not handled by the desired player.
Package Name
The app to send the media button event to. Variables are supported. Class Name
The component inside the app that should handle the media button. Variables are supported. Action
The action to execute:
Launch: Launches the audio player Play: Starts to play
Play/Pause: Toggles between play and pause Pause: Pauses the audio player
Stop: Stops the audio player Previous: Plays the previous track Next: Plays the next track
Cycle Repeat: Activates the next cycle mode Toggle Shuffle: Toggles the shuffle mode on/off
Control UI
The action Control UI uses the accessibility features of the device to control the user interface and allows to automatically
press buttons, long-click elements, scroll lists and change the values of checkboxes and radio buttons.
Note: This action controls the user interface by simulating user input, therefore the screen has to be active, unlocked and the
user interface must be showing on screen.
The accessibility service of Automagic needs to be enabled in the preferences for this action to work. At least Android 4.1 (Jelly Bean) is required.
Examples:
Start the location settings page and enable/disable GPS.
Start the device update check by pressing the "Check now" button.
Settings Script
Defines the actions to execute.
See action Script for a description of the basic features of the scripting language.
Warning: The following example scripts are highly device specific! Please only use the scripts for reference and don't just
copy/paste the scripts. It might click the wrong control elements on your device. Clear all notifications:
notifications();//to expand the notifications
sleep(1000);//wait one second for animations to complete clicked = click("Clear all notifications");//click the button
if(not clicked) //check whether the button has been successfully clicked {
back();//hide the notification when the clear button was not available }
Toggle GPS on/off:
Use an action Launch App: Settings/Location services to directly start the GPS settings page
sleep(1000);//wait for settings page to show click("GPS satellites");//toggle setting on/off sleep(500);
back();//go back to the previous screen Open the Apps drawer:
home();//ensure the main home screen is showing
sleep(1000);//wait one second for animations to complete click("Apps");//open the apps drawer
Supported Functions
Boolean sleep(Number milliseconds) Waits for the specified amount of milliseconds. Boolean sleep(String duration)
Waits for the specified amount of milliseconds. Boolean back()
Presses the back key. Boolean home() Presses the home key. Boolean notifications() Opens the notifications. Boolean quickSettings() Opens the quick settings. Boolean recents()
Opens the recent application list. Boolean click(String pattern)
Clicks on the element containing the given glob pattern. Boolean click(Number x, Number y)
Clicks on the element at the specified location. Boolean longclick(String pattern)
Longclicks on the element containing the given glob pattern. Boolean longclick(Number x, Number y)
Longclicks on the element at the specified location. Boolean check(String pattern)
Checks the element containing the given glob pattern. Boolean check(Number x, Number y)
Checks the element at the specified location. Boolean isChecked(String pattern)
Tests whether the element containing the given glob pattern is checked. Boolean isChecked(Number x, Number y)
Tests whether the element at the specified location is checked. Boolean uncheck(String pattern)
Unchecks the element containing the given glob pattern. Boolean uncheck(Number x, Number y)
Unchecks the element at the specified location. Boolean scrollForward(String pattern) Scrolls the element containing the given glob pattern. Boolean scrollForward(Number x, Number y)
Scrolls the element at the specified location. Boolean scrollBackward(String pattern) Scrolls the element containing the given glob pattern. Boolean scrollBackward(Number x, Number y) Scrolls the element at the specified location. Boolean select(String pattern)
Selects the element containing the given glob pattern. Boolean select(Number x, Number y)
Selects the element at the specified location. Boolean clearSelection(String pattern)
Unselects the element containing the given glob pattern. Boolean clearSelection(Number x, Number y) Unselects the element at the specified location. Boolean expand(String pattern)
Expands the element containing the given glob pattern. (Android 4.4+) Boolean expand(Number x, Number y)
Expands the element at the specified location. (Android 4.4+) Boolean collapse(String pattern)
Collapses the element containing the given glob pattern. (Android 4.4+) Boolean collapse(Number x, Number y)
Collapses the element at the specified location. (Android 4.4+) Boolean cut(String pattern)
Cuts the text of the element containing the given glob pattern. (Android 4.3+) Boolean cut(Number x, Number y)
Cuts the text of the element at the specified location. (Android 4.3+) Boolean copy(String pattern)
Copies the text of the element containing the given glob pattern. (Android 4.3+) Boolean copy(Number x, Number y)
Copies the text of the element at the specified location. (Android 4.3+) Boolean paste(String pattern)
Pastes text to the element containing the given glob pattern. (Android 4.3+) Boolean paste(Number x, Number y)
Pastes text to the element at the specified location. (Android 4.3+) Boolean dismiss(String pattern)
Dismisses the element containing the given glob pattern. (Android 4.4+) Boolean dismiss(Number x, Number y)
Dismisses the element at the specified location. (Android 4.4+) String getText(String pattern)
Returns the text of the element containing the given glob pattern. String getText(Number x, Number y)
Returns the text of the element at the specified location. List getBounds(String pattern)
Returns the bounds of the element containing the given glob pattern in a list with the values [x, y, width, height]. Boolean sendKey(Number keyCode)
Simulates the specified key (Automagic input method required). Boolean sendKey(String keyCodeName)
Simulates the specified key (Automagic input method required). Boolean sendText(String text)
Sends the text to the focused component (Automagic input method required). Boolean setText(String text)
Sets the text of the focused component (Automagic input method required). Boolean setSelection(Number start, Number end)
Boolean selectAll()
Selects the text of the focused component (Automagic input method required).
Copy File
The action Copy File locally copies a file.
Examples:
Create a weekly backup of the Automagic flows to a file containing the timestamp
Settings Source File
The absolute path of the file to copy. Variables are supported.
Examples:
/mnt/sdcard/export_{triggertime,dateformat,yyyy_MM_dd}.csv becomes /mnt/sdcard/ export_2011_02_13.csv
Target File (including filename)
The absolute path of the target file. The path has to include the filename of the target file. Variables are supported.
The action Copy Files locally copies one or a list of files to the specified target directory or file.
Examples:
Backup all files in directory /mnt/sdcard/xyz/ to the folder /mnt/sdcard/xyz_backup/
Settings Source Files
A comma separated list of files or directories to copy. Glob patterns can be used to match multiple files. Variables are supported.
Examples:
/mnt/sdcard/export* matches all files with a name starting with export in folder /mnt/sdcard
When multiple files are matched the target has to be a directory. The directory will be created when it does not exist yet. A directory with an ending slash (like /mnt/sdcard/) matches the files contained in the directory like using
/mnt/sdcard/*.
Target
The absolute path of the target file or directory. Variables are supported. Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Copy Text from Clipboard copies the text on the clipboard to the specified variable.
Examples:
Send the text on the clipboard directly by sms or text.
Settings Variable
The name of the variable to store the content of the clipboard.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
clip_data
the text of the clipboard
The action Copy Text to Clipboard copies the specified text to the clipboard.
Examples:
Copy the scanned barcode value to the clipboard to paste it in the browser. Copy the text of an incoming SMS to the clipboard to paste it in a mail.
Settings Text
The text to copy to the clipboard. Variables are supported.
Create Calendar Event
Examples:
create a calendar event based on the text of a received SMS create a calendar event for every received call
Settings Calendar
The name of calendar to create the event in. Variables are supported. Start/End Type
Whether the event should be created relative to the time when the action is executed or absolute.
Start in
The start offset of the event from now. 1h creates an event that starts in one hour. Variables are supported. Duration
The desired duration of the event like 1h or 45m. Variables are supported. From
A script whose last statement must evaluate to a date (milliseconds since 1970) to use as the start time of the event.
To
A script whose last statement must evaluate to a date (milliseconds since 1970) to use as the end time of the event.
All day
When checked creates an event lasting the whole day, the event spans all days intersecting the time span specified in Start in/Duration or From/To.
Title
The title. Variables are supported. Description
The description. Variables are supported. Location
The event location. Variables are supported. Reminders
The reminders to create. Variables are supported. Event Availability
The availability (not all calendars support Tentative).
The action Create Directories locally creates one or multiple directories.
Examples:
Create a target directory /mnt/sdcard/backup/ before copying files into this directory
Settings Directories
A comma separated list of directories to create. Variables are supported.
Delete Files
Examples:
Monthly delete all files in the /mnt/sdcard/download/ folder
Settings Source Files
A comma separated list of files or directories to delete. Glob patterns can be used to match multiple files. Variables are supported.
Examples:
/mnt/sdcard/download/* matches all files and subfolders in the download directory
Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
Dismiss Slide to Unlock Keyguard
The action Dismiss Slide to Unlock Keyguard unlocks the device when the slid-to-unlock keyguard is used. This action can
not unlock a secure keyguard that requires to enter a password, PIN or pattern.
Warning: This function is not officially supported by Android and might not work on all devices.
Some devices require that the screen is off to dismiss the keyguard.
Some devices turn off the screen when the keyguard is dismissed. You can mitigate the problem by adding an action Turn
Screen On to the flow after dismissing the keyguard.
The action Download URL directly downloads a file in the background to the defined directory.
Examples:
Download a PDF newspaper every morning
Settings URL
The URL to download. Variables can be used to create dynamic urls based on time. Examples:
http://example.com/newspaper_{triggertime,dateformat,yyyyMMdd}.pdf becomes http://example.com/ newspaper_20110213.pdf
Directory
The directory to place the downloaded file in
Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Dropbox Delete Files deletes the defined files on Dropbox.
Examples:
Delete all files in a folder before uploading new files to this folder to get rid of files you don't need anymore.
Settings Dropbox Access
Whether Dropbox access is currently possible or not and allows to sign in to your Dropbox account.
Dropbox Paths
A comma separated list of files or directories to delete on Dropbox. Glob patterns can be used to match multiple files.
Variables are supported.
Examples:
/backup/export* matches all files with a name starting with export in folder /backup
Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Dropbox Download Files downloads multiple files and directories recursively to your device.
Warning: This action downloads all specified files and overwrites already existing target files. The files will be downloaded
even when the same file already exists on the device.
Warning: Dropbox limits the amount of data each user can transfer.
Examples:
Download each morning the newest file of keypass containing your passwords to ensure you have the newest offline copy available.
Settings Dropbox Access
Whether Dropbox access is currently possible or not and allows to sign in to your Dropbox account.
Dropbox Paths
A comma separated list of files or directories to download from Dropbox. Glob patterns can be used to match multiple files. Variables are supported.
Examples:
/backup/export* matches all files with a name starting with export in folder /backup
Target
The absolute path of the target directory to download the files to. Variables are supported. Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Dropbox Upload File uploads one file to your Dropbox.
Examples:
Upload a backup of all data in Gleeo Time Tracker to the your Dropbox
Settings Dropbox Access
Whether Dropbox access is currently possible or not and allows to sign in to your Dropbox account.
Local File
The absolute path of the local file to upload. Variables are supported.
Examples:
/mnt/sdcard/export_{triggertime,dateformat,yyyy_MM_dd}.csv becomes /mnt/sdcard/ export_2011_02_13.csv
Path on Dropbox (including filename)
The absolute path of the file on Dropbox. The path has to include the filename of the target file. This allows you to store the file using a different name on your Dropbox. Variables are supported.
Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Dropbox Upload Files uploads one or multiple files and directories recursively to your Dropbox.
Warning: This action uploads all specified files and overwrites already existing target files. The files will be uploaded even
when the same file already exists on Dropbox.
Warning: Dropbox limits the amount of data each user can transfer.
Examples:
Upload a backup of all data in Gleeo Time Tracker to the your Dropbox
Settings Dropbox Access
Whether Dropbox access is currently possible or not and allows to sign in to your Dropbox account.
Source Files
A comma separated list of files or directories to upload to Dropbox. Glob patterns can be used to match multiple files.
Variables are supported.
Examples:
/mnt/sdcard/export* matches all files with a name starting with export in folder /mnt/sdcard
Path on Dropbox
The absolute path of the target on Dropbox to upload the files to. Variables are supported. Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Enable WiFi Access Point enables one of the access point configurations and optionally prevents to connect to
other access points by disabling them. Examples:
Enable a free access point at home and disable a paid access point.
Settings SSID
The SSID of the access point configuration to enable.
Disable other access points
Whether to disable all other access point configurations or not.
The action End Call hangs up the current call.
Warning: This function is not officially supported by Android and might not work on all devices.
Example:
Let the phone call home for 15 seconds and automatically terminate the call to notify something.
Execute Command
The action Execute Command executes a shell command and stores the output in variables.
Examples:
ls -l to list all files in the working directory
ps to store the running processes in the defined variable ps > file.txt to store the running processes in a file cat file1.txt > file2.txt
to copy a file
cat /proc/wakelocks to show the wake locks preventing your device from sleeping String variables are replaced before the command is passed to the interpreter.
You can use this for example to create a filename based on the current date: ps > file-{triggertime,datetime,yyyyMMdd}.txt.
Special characters in the command have to be escaped using backslash or placed in quotes as appropriate: cat 'Test File1.txt' > 'Test File2.txt'
cat Test\ File1.txt > Test\ File2.txt
Settings Command
Enter the shell command to execute in this field. The command is passed to /bin/sh to be interpreted. The available commands vary from device to device.
Working Directory
The path the command is executed in.
Variable to store the standard output
The output written by the command to the standard output is stored in the variable defined in this field.
Variable to store the error output
The output written by the command to the error output is stored in the variable defined in this field.
Variable to store the exit code
The exit code of the command is stored in the variable defined in this field.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
stdout
the standard output of the command
stderr
the standard error output of the command
exit_code
the exit code of the command
The action Execute Flows executes one or multiple flows specified in the field Flow pattern list.
The executed flow will inherit the execution context with all variables of the parent flow.
The variables usually supplied by the trigger of the target flow will not be available since the trigger of the target flow is bypassed when using this action.
Examples:
Execute all flows with the words battery save in the name when the battery reaches a critical level Settings
Flow pattern list
A comma separated list of flow names to execute. Glob patterns * and ? can be used to match similar named flows. Examples:
Test Flow
Test Flow, SMS Flow *battery save*
Exclude flow pattern list
A comma separated list of flow names to not execute even when the field Flow pattern list includes the flow. Wait for called flows to finish
Whether the action should wait until all called flows have been finished or not.
Return variables to the calling flow
Whether the local variables of the called flow should be returned to the calling flow.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
flow_count
Execute Root Command
The action Execute Root Command executes a shell command as root by passing the command to su and stores the output in variables.
Warning: This function requires root access, is not officially supported by Android and might not work on all devices.
Examples:
reboot to reboot the device reboot -p to shutdown
String variables are replaced before the command is passed to the interpreter.
You can use this for example to create a filename based on the current date: ps > file-{triggertime,datetime,yyyyMMdd}.txt.
Special characters in the command have to be escaped using backslash or placed in quotes as appropriate: cat 'Test File1.txt' > 'Test File2.txt'
cat Test\ File1.txt > Test\ File2.txt
Settings Command
Enter the shell command to execute in this field. The command is passed to su to be interpreted. The available commands vary from device to device.
Working Directory
The path the command is executed in.
Variable to store the standard output
The output written by the command to the standard output is stored in the variable defined in this field.
Variable to store the error output
The output written by the command to the error output is stored in the variable defined in this field.
Variable to store the exit code
The exit code of the command is stored in the variable defined in this field.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
stdout
stderr
the standard error output of the command
exit_code
the exit code of the command
Export Flows
The action Export Flows exports the selected flows to the specified file.
Examples:
Export all flows to a file and upload the file to Dropbox as a backup
Settings Flow pattern list
A comma separated list of flow names to export. Glob patterns * and ? can be used to match similar named flows.
Variables are supported.
Examples: Test Flow
Test Flow, SMS Flow *time tracking*
Exclude flow pattern list
A comma separated list of flow names to not export even when the field Flow pattern list includes the flow. Glob patterns
*and ? can be used to match similar named flows. Variables are supported. Widget pattern list
A comma separated list of widget names to export. Glob patterns * and ? can be used to match similar named widgets.
Variables are supported. Exclude widget pattern list
A comma separated list of widget names to not export even when the field Widget pattern list includes the widget. Glob
patterns and can be used to match similar named widgets. Variables are supported. Target File
The path of the target file. Variables are supported.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
export_path
the path of the created file
Flashlight
The action Flashlight enables or disables the flashlight of the device.
Examples:
Turn on or off the flashlight using a toggle widget.
Settings Flashlight
Whether to turn the flashlight on or off.
The action FTP Delete Files deletes the files specified on the FTP server.
Examples:
Recursively delete all files in a directory on the server before uploading new files
Settings Server/Port
The name or IP and port (default 21) of the FTP server. Variables are supported. Username
The username to connect. Variables are supported. Password
The password to connect. Variables are supported. Paths on Server
A comma separated list of files or directories to delete on the server. Glob patterns can be used to match multiple files.
Variables are supported.
Examples:
/pub/export* matches all files with a name starting with export in folder /pub
Control Encoding
Whether to use a special encoding for the control channel or not (Encoding of file names, not the encoding of the content of text files). Variables are supported.
Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action FTP Download Files downloads files and folders stored on an FTP server.
Examples:
Recursively download a directory with music every morning
Settings Server/Port
The name or IP and port (default 21) of the FTP server. Variables are supported. Username
The username to connect. Variables are supported. Password
The password to connect. Variables are supported. Paths on Server
A comma separated list of files or directories to download from the server. Glob patterns can be used to match multiple files. Variables are supported.
Examples:
/pub/export* matches all files with a name starting with export in folder /pub
Local Directory
The absolute path of the target directory to download the files to. Variables are supported. Control Encoding
Whether to use a special encoding for the control channel or not (Encoding of file names, not the encoding of the content of text files). Variables are supported.
Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action FTP Upload File uploads one file to an FTP server.
Examples:
Upload a backup of all data in Gleeo Time Tracker to the your company server
Settings Server/Port
The name or IP and port (default 21) of the FTP server. Variables are supported. Username
The username to connect. Variables are supported. Password
The password to connect. Variables are supported. Local File
The absolute path of the local file to upload. Variables are supported.
Examples:
/mnt/sdcard/export_{triggertime,dateformat,yyyy_MM_dd}.csv becomes /mnt/sdcard/ export_2011_02_13.csv
Path on Server (including filename)
The absolute path of the file on the FTP server. The path has to include the filename of the target file. This allows you to store the file using a different name on your server. Variables are supported.
Control Encoding
Whether to use a special encoding for the control channel or not (Encoding of file names, not the encoding of the content of text files). Variables are supported.
Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action FTP Upload Files uploads files and folders to an FTP server.
Examples:
Recursively upload a directory with photos every morning to an FTP server
Settings Server/Port
The name or IP and port (default 21) of the FTP server. Variables are supported. Username
The username to connect. Variables are supported. Password
The password to connect. Variables are supported. Local Paths
A comma separated list of files or directories to upload to the server. Glob patterns can be used to match multiple files.
Variables are supported.
Examples:
/mnt/sdcard/export* matches all files with a name starting with export in folder /mnt/sdcard
Server Directory
The absolute path of the target directory on the server to upload the files to. Variables are supported. Control Encoding
Whether to use a special encoding for the control channel or not (Encoding of file names, not the encoding of the content of text files). Variables are supported.
Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Gleeo Create Entry creates an entry of the specified project and task in Gleeo Time Tracker.
Examples:
Track the amount of time spent in the Twitter app and create an entry in Gleeo Time Tracker at the end of the day.
Settings Project
The name of the project to create an entry for. The project has to already exist in Gleeo Time Tracker. Task
The task of the entry to create. The task will be created in Gleeo Time Tracker when it not already exists.
The task name can be defined dynamically using variables. Examples:
Phone Support for {incoming_number} becomes Phone Support for 17001111111
Visiting {trigger} becomes Visiting Customer X (use different location triggers named Customer X, Customer Y etc.)
Variable containing the start time
The name of the variable (without curly braces) containing the start time. Variables are supported. Variable containing the end time
The name of the variable (without curly braces) containing the start time. Variables are supported. Move to Background
Whether to move Gleeo Time Tracker to the background when the entry has been created.
The action Gleeo Filesystem Export creates a CSV export of the defined projects and time range.
Examples:
Backup all data in Gleeo Time Tracker to the SD card
Export the current month by pressing a shortcut on the launcher and attach the created file to a Google Mail message draft
Each month export all recorded entries of the month to the SD card and send the file by mail to your employer
Settings
Projects to Export
The list of projects to export.
Time Range
The time range to export.
CSV Column Delimiter
The delimiter used to separate two columns. Excel users can set this to Semicolon to simplify the import in Excel.
Target File
The file to store the exported data in. Variables can be used to create dynamic file names based on time. Examples:
/mnt/sdcard/export_{triggertime,dateformat,yyyy_MM_dd}.csv becomes /mnt/sdcard/ export_2011_02_13.csv
/mnt/sdcard/export_{export_start_time,dateformat,yyyy_MM_dd}-{export_end_time,dateformat, yyyy_MM_dd}.csv becomes /mnt/sdcard/export_2011_03_01-2011_03_31.csv
Attach to Mail
Opens the desired Mail App and attaches the CSV file.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
export_start_time
the start time of the exported time range
export_end_time
export_path
the absolute path of the exported file
Gleeo Start Recording
The action Gleeo Start Recording starts recording the defined project and task in Gleeo Time Tracker when this task is not
already recording. Examples:
Start tracking the time when you arrive at your office. Start tracking the time when your employer calls.
Start tracking the time when you press a shortcut on the launcher.
Settings Project
The name of the project to start recording. The project has to already exist in Gleeo Time Tracker. Variables are supported.
Task
The task to start recording. The task will be created in Gleeo Time Tracker when it not already exists. Variables are supported.
Examples:
Phone Support for {incoming_number} becomes Phone Support for 17001111111
Visiting {trigger} becomes Visiting Customer X (use different location triggers named Customer X, Customer Y etc.)
Move to Background
Gleeo Stop Recording
The action Gleeo Stop Recording stops recording the currently recording task in Gleeo Time Tracker.
Examples:
Stop tracking the time when you leave your office.
Stop tracking the time every evening at 6pm and show an alert when you forgot to stop recording.
Settings Projects to Stop
The name of the project to stop recording.
Glob patterns are supported. Variables are supported. Tasks to Stop
The tasks to stop recording.
Glob patterns are supported.Variables are supported. Move to Background
Whether to move Gleeo Time Tracker to the background when the task has been stopped.
The action Google Drive Delete Files (Experimental) deletes the defined files on Dropbox.
Examples:
Delete all files in a folder before uploading new files to this folder to get rid of files you don't need anymore.
Settings Device account
The account to access Google Drive.
Google Drive Paths
A comma separated list of files or directories to delete on Google Drive. Glob patterns can be used to match multiple files.
Variables are supported.
Examples:
/backup/export* matches all files with a name starting with export in folder /backup
Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Google Drive Download Files (Experimental) downloads multiple files and directories recursively to your device. Warning: This action downloads all specified files and overwrites already existing target files. The files will be downloaded
even when the same file already exists on the device.
Note: Google Drive allows to create duplicate files which is not possible on a regular filesystem. Automagic only considers the
newest file in such a case and ignores duplicates.
Note: Google Documents are not downloaded.
Examples:
Download each morning the newest file of keypass containing your passwords to ensure you have the newest offline copy available.
Settings Device account
The account to access Google Drive.
Google Drive Paths
A comma separated list of files or directories to download from Google Drive. Glob patterns can be used to match multiple files. Variables are supported.
Examples:
/backup/export* matches all files with a name starting with export in folder /backup
Target
The absolute path of the target directory to download the files to. Variables are supported. Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Google Drive Upload Files (Experimental) uploads one or multiple files and directories recursively to your
Google Drive.
Warning: This action uploads all specified files and overwrites already existing target files.
Examples:
Upload a backup of all data in Gleeo Time Tracker to the Google Drive
Settings Device account
The account to access Google Drive.
Source Files
A comma separated list of files or directories to upload to Dropbox. Glob patterns can be used to match multiple files.
Variables are supported.
Examples:
/mnt/sdcard/export* matches all files with a name starting with export in folder /mnt/sdcard
Path on Google Drive
The absolute path of the target on Google Drive to upload the files to. Variables are supported. Show progress notification
Whether or not to show a notification on the statusbar indicating the progress of the operation.
The action Hide Custom Widget Overlay hides a previously shown overlay. Settings
Overlay name
The name/identification of the overlay to hide.
HTTP Request
The action HTTP Request requests a resource from a server using the specified HTTP request method.
Note: This action is meant to be used for technical requests (REST and the like) and to process the response using scripts. If
you simply want to download a file please use the action Download URL. Examples:
Fetch a web page of a weather service and test if it contains the word rain Get the price of a product from an online retailers REST service
Settings URL
The URL to request. Variables are supported.
Examples:
http://example.com/weather.html?ts={triggertime,dateformat,yyyyMMdd} becomes http://example.com/weather.html?ts=20110213
Verify certificates (https)
Whether certificates should be checked or not. Can be useful to ignore errors for self-signed certificates.
Authentication
Whether username and password should be passed to the server using basic authentication.
Username
The username to pass to the server. Variables are supported. Password
The password to pass to the server. Variables are supported. Request Method
The HTTP request method to use.
Content Type
The content type to use in the request as header Content-Type. Variables are supported. Form Field List
Comma separated list with key=value to send as application/x-www-form-urlencoded to the server. The values are automatically URL encoded. Variables are supported.
Example: Firstname=Hugo,Lastname=Habicht
Data
The text data to send to the server. Variables are supported. Timeout
The timeout to use.
Store response in a variable or file
Whether to store the response in a variable or a file.
Variable
The name of the variable to store the response in. The response is converted to a string. Variables are supported. Warning: Responses larger than 1MB are not supported in a variable.
File
The path to store the file in. Variables are supported.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
name as declared in the field Variable
the response as string
the numeric HTTP status code, -1 when a general error occurs
error_message
error message when the request could not be executed and status_code is set to -1
Import Flows
The action Import Flows imports all flows of the specified file. The imported flows are disabled. Already existing flows are not
imported.
Flows can be enabled after importing when desired using action Set Flow State and the variable
{imported_flow_names,listformat,comma}. Examples:
Import a flow to lock the device on the stolen device.
Settings File
The file to import. Variables are supported. Replace existing
Whether or not to replace existing Flows, Triggers, Actions, Conditions and Widgets with the same name.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
imported_flow_names
the list of imported flows
duplicate_flow_names
Init Variable File List
The action Init Variable File List lists all files or only the newly added files in a directory and stores the list in a variable.
Examples:
Send all files of a directory by mail to your mail account. Send all new backup files of Gleeo Time Tracker to your inbox. Settings
Variable
The name of the variable to hold the list of files.
File Pattern
The files to list. The file pattern can contain glob pattern characters like * and ?. Examples:
/mnt/sdcard/folder/*
/mnt/sdcard/GTT-export-20120101.csv /mnt/sdcard/GTT-export-*.csv
/mnt/sdcard/file1,/mnt/sdcard/file2,/mnt/sdcard/file3
Include changes only
Whether to store all files matching the pattern specified in File Pattern or only the new files.
A file is considered to be new when it was not available the last time this action executed or the size of the file changed or the last modified time of the file has changed since the last execution of this action.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
files
Init Variable Image File
The action Init Variable Image File loads the pixel data of an image into the specified local variable to modify the image with
action Modify Image or to read color values of pixels with script function getPixelColor.
Warning: Loading large images uses a lot of internal memory which could cause Automagic to crash in the worst case. It's
recommended to read only one image into memory and not to load very large images. Examples:
Load an image, shrink the size and send the smaller file by mail.
Settings File
The path or URL to the image file. Variables are supported. Variable
The name of the local variable to store the pixel data. Variables are supported.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
image_data
the local variable of the image
image_width
the width of the image
image_height
Init Variable Location
The action Init Variable Location acquires one location from the defined provider and stores the location in the variable. Note: Getting one location can take several seconds to complete. The passive provider might not return a location until
another app is activating one of the location providers. Examples:
Send the location in response to an SMS containing the text Where are you? to the sender.
Store the location coordinates in a file when the employer calls.
Send the location and phone number by mail whenever you call someone.
Settings Variable
The name of the variable to store the location in.
New or Last Known Location
Defines if the action should acquire a new location or if the action should use the last known location. Loading the last known location uses almost is very fast but might return an outdated location or no location might be available when the device was freshly started.
Location Provider
The location provider to use.
Network
This provider uses the location provided by the cell tower and Wi-Fi signals. Depending on environment this provider can deliver location of about 60 meters of accuracy. Locations found using the cell tower can be very inaccurate (up to several kilometers or miles).
Passive
This provider delivers the location from the currently active provider (Network or GPS) without activating one of the providers by itself. This might result in very infrequent location updates.
GPS
This provider delivers the location using the GPS receiver. This provider usually uses more battery than the network provider.
High Accuracy (Experimental)
This provider delivers the finest available location using different sensors available on the device.
Balanced Power/Accuracy (Experimental)
This provider delivers the a location with an accuracy of about 100m and uses less battery than the high accuracy provider.
Low Power (Experimental)
This provider delivers the a location with an accuracy of about 10km.
No Power (Experimental)
This provider will only deliver locations when another app on the device has requested locations.
Minimum Accuracy (in meters)
Only newer locations with at least this accuracy are accepted.
This can be useful to filter out locations calculated using the cell tower when also more exact locations using WiFi are available.
Timeout
The maximum amount of time to wait for a location fix, otherwise terminate the flow with an error.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
location
the reported location
location_accuracy
the accuracy of the location
location_altitude
the altitude of the location when available (not available on all devices)
location_bearing
the direction of travel in degrees East of true North when available (not available on all devices)
location_speed
the speed of travel in meters per second when available (not available on all devices)
The action Init Variable Random Number generates a random number in a defined interval.
Examples:
Simulate to throw a dice.
Play a random sound for every received SMS.
Settings Variable
The variable to store the random number in.
Lowest Value
The lowest generated value.
Highest Value
The highest generated value.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
n
contains the generated random value
The action Init Variable System Setting reads a value from the system setting database and stores the value in a variable. Settings
Category
System: for regular settings
Secure: for settings which can usually not be modified
Global: for global Settings valid for all users of the device (Android 4.2+) Name
The name of the setting to read. Variables are supported. Variable
The name of the variable to store the value in. Variables are supported.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
setting
the value of the setting
The action Init Variable Text File reads the contents of a text file into the specified variable. Files up to 1MB are supported.
Binary files are not supported. Examples:
Read a text file containing a mail template and send the text by mail.
Settings File
The path of the file to load. Variables are supported. Encoding
The encoding used to decode the bytes of the file to text.
Variable
The name of the variable to store the text in. Variables are supported.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
file_text
the name of the variable to store the text in
The action Init Variables Call Log initializes variables with the values of the last entry of the call log.
Examples:
Update a widget with the values of the last call
Settings Query Criteria
Specifies which call should be stored in the variables.
Variable for Call Number
The name of the variable to store the call number.
Variable for Call Date/Time
The name of the variable to store the point in time of the call.
Variable for Call Duration
The name of the variable to store the call duration.
Variable for Call Type
The name of the variable to store the call type (1=incoming, 2=outgoing, 3=missed).
Variable for Call Contact Name
The name of the variable to store the contact name.
Variable for Call New Flag
The name of the variable to store if the call log entry has not been marked acknowledged.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
call_number
the call number
call_time
the time of the call in millis since 1970
call_duration
call_type
the call type (1=incoming, 2=outgoing, 3=missed)
call_cached_name
the name of the contact (might be outdated when the contact has been modified in the contacts afterwards)
call_new
true or false whether the entry in the call log has not been acknowledged yet
Init Variables Device Orientation
The action Init Variables Device Orientation measures the device orientation using the accelerometer and magnetometer
sensors of the device.
Warning: This action uses the device hardware sensors and might increase battery usage (depending on device model).
Some devices turn off the sensors when the screen is off. Examples:
Show your current orientation value in a popup.
Select the task to record by changing the device orientation.
Settings
Variable for Azimuth
The name of the variable to store the azimuth of the device (in degrees).
Variable for Pitch
The name of the variable to store the pitch of the device (in degrees).
Variable for Roll
The name of the variable to store the roll of the device (in degrees).
Timeout
The amount of time to wait for a value of the sensor, the action is terminated with an error when no value becomes available.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
azimuth
the azimuth in degrees
pitch
the pitch in degrees
roll
the roll in degrees
Init Variables File Info
The action Init Variables File Info provides information about a file as variables to the flow.
Examples:
Check if a file is older than one week and delete the file.
Settings File
The file to check. Variables are supported. File Type
The variable to store the file type (dir, file or other).
File Exists
Variable to store whether the file exist or not.
File Size
recursive for directory
For directories whether to collect the size of all directly contained files or to also recursively traverse and sum the size of all subdirectories.
File Last Modified
Variable to store the last modification timestamp.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
file_type
the type of the file (dir, file or other)
file_exists
if the file exist or not (true or false)
file_size
size of the file in bytes (or the sum of the files in directory)
file_last_modified
timestamp of the last modification
Init Variables Gleeo Recording
The action Init Variables Gleeo Recording checks if a task is recording in Gleeo Time Tracker and stores the recording
project title and task in variables. Examples:
Store the recording task when someone calls and start recording the same task again when the call ends. Don't use a funny alert sound when you are working for a special project.
Variable for Recording Boolean
The name of the variable to store the boolean whether Gleeo Time Tracker is currently recording. Variable for Recording Project Title
The name of the variable to store the project Gleeo Time Tracker is currently recording. Variable for Recording Task Name
The name of the variable to store the task Gleeo Time Tracker is currently recording. Variable for Recording Start Time
The name of the variable to store the start time of the currently recording task.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
recording
the recording boolean
recording_project_title
the project title
recording_task_name
the task name
recording_start
the start time of the currently recording task
Init Variables Phone Info
The action Init Variables Phone Info initializes the desired variables (not all values are available on all devices).
Check the network operator once an hour
Settings
Variable Device ID (e.g. IMEI/MEID/ESN)
The name of the variable.
Variable Software Version (e.g. IMEI/SV)
The name of the variable.
Variable Line 1 Number (e.g. MSISDN)
The name of the variable.
Variable Network Country ISO
The name of the variable.
Variable Network Operator (e.g. MCC+MNC)
The name of the variable.
Variable Network Operator Name
The name of the variable.
Variable Phone Type
The name of the variable.
Variable SIM State
The name of the variable.
Variable SIM Country ISO
The name of the variable.
Variable SIM Operator
The name of the variable.
Variable SIM Operator Name
The name of the variable.
Variable SIM Serial Number
The name of the variable.
Variable Subscriber ID (e.g. IMSI)
The name of the variable.
Variable Voice Mail Alpha Tag
The name of the variable.
Variable Voice Mail Number
The name of the variable.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
device_id
the device ID (e.g. IMEI/MEID/ESN), null when unavailable
device_software_version
the software version (e.g. IMEI/SV), null when unavailable
the phone number string for line 1 (e.g. MSISDN), null when unavailable
network_country_iso
the ISO country code (only when registered to a network, unreliable on CDMA)
network_operator
numeric network operator name MCC+MNC (only when registered to a network, unreliable on CDMA)
network_operator_name
network operator name (only when registered to a network, unreliable on CDMA)
phone_type
type of the phone (0=no, 1=GSM, 2=CDMA, 3=SIP)
sim_state
State of the SIM (0=unknown, 1=absent, 2=SIM PIN required, 3=SIM PUK required, 4=network PIN required, 5=ready)
sim_country_iso
SIM ISO country code
sim_operator
SIM MCC+MNC (only available when SIM in state ready)
sim_operator_name
service provider name SPN (only available when SIM in state ready)
sim_serial_number
serial number of the SIM, null when unavailable
subscriber_id
the subscriber ID (e.g. IMSI), null when unavailable
voice_mail_alpha_tag
the alphabetic identifier associated with the voice mail number
voice_mail_number
the voice mail number, null when unavailable
The action Input Dialog shows an input dialog with an input text field, password field, single- or multi-selection list.
Examples:
Ask the user whether he wants to turn WiFi off or not Ask for the password to use for an FTP upload
Ask whether airplane mode should be activated in the evening. Activate airplane mode when the user does not respond within 30 seconds.
Settings Title
The title of the input dialog. Variables are supported. Input Dialog Type
The type of the input dialog to show. Can be one of:
Text for plain text input Password for a password input Number to type number characters
Phone number to type characters used in phone numbers Date to show a date picker
Time to show a time picker
Date & Time to show a dialog with a date & time picker
Single Choice Menu for a list of values like a menu without OK, Cancel buttons Multi Choice for a list of values the user can choose multiple values from
Prompt (only applicable to Text and Password)
The question or input description to show in the input dialog. Variables are supported. List Values (only applicable to Single Choice and Multi Choice)
A comma separated list of values to show as values the user can choose from. Variables are supported. Default Value
The default value provided when the user does not change the input value. This value is also provided when the user cancels the dialog or hits the back key. Variables are supported.
Whether the user has cancelled the dialog can be evaluated using the variable operation (see below). The default value for date/time input types must be formatted as specified below:
Date: Pattern yyyy-MM-dd for example 2014-01-25 or when using a variable {variable,dateformat,yyyy-MM-dd}
Date & Time: Pattern yyyy-MM-dd HH:mm (time in 24-hour format) for example 2014-01-25 14:20 or when using a variable {variable,dateformat,yyyy-MM-dd HH:mm}
Values not formatted according to the rules above are ignored.
Activate Timeout
Whether an automatic timeout should provide a value to the flow when the user does not react within the specified time.
Duration
The amount of time to automatically close the dialog and to continue the flow.
Value on Timeout
The value to provide to the flow when a timeout occurred. Variables are supported. Options
Show when locked: show the input dialog even when the device is locked Turn screen on: Turn the screen on when the dialog is shown initially
Keep screen on: Keep the screen on as long as the dialog is shown (power button still allows turn off the screen)
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
operation
the operation used to close the dialog. Can be one of:
ok when the user pressed the OK button
cancel when the user pressed the cancel button or the back key timeout when the dialog was closed by a timeout
value
the selected value in the dialog or the list of values in case of Multi Choice or a date when the input dialog type was of type date/time
index
the index of the selected value of a Single Choice list or -1 when not definable
indices
the indices of the selected values of a Multi Choice list or -1 for every not definable value
The action Input Speech (Experimental) starts the speech recognition of the device and provides the recognized text to the
flow in variable value. The speech recognition engine usually requires network access. Examples:
Control Automagic using spoken commands.
Settings UI Mode
Whether user interface should be shown or the speech recognition should be executed in the background.
Prompt
An optional title to show in the user interface. This setting might be ignored by the engine. Variables are supported. Language
Optional the desired language to use in the speech recognition engine. This setting might be ignored by the engine.
Variables are supported.
Use Bluetooth headset (Android 3+)
Whether or not a Bluetooth headset is used.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
value
the recognized text
operation
whether the recognition was successful (ok) or not (cancel)
The action Kill App kills the processes of an app running in the background.
Warning: The operating system does not allow to kill an app currently running in the foreground.
Examples:
Kill the browser app when another app is started to reclaim memory.
Settings Package Name
The name of the package to kill. Variables are supported.
The action Kill App Process sends the defined signal to the process using the kill command.
Warning: This function requires root access, is not officially supported by Android and might not work on all devices.
Examples:
Kill the browser app when another app is started to reclaim memory.
Settings Package Name
The name of the package to kill. Variables are supported. Signal
The signal to send.
A variable is a container for a value that can be used in many actions and conditions to dynamically define a part of a text.
See action Script for a description. Supplied Variables
pid
the id of the process
importance
the importance of the process. The smaller the value the higher the importance.
lru
least recently used. Smaller value means more recently used.
uid
the user id of the process