Automation
Activating Rule \"%1$s\"
Activating profile %1$s
Activating Rule \"%1$s\" in Togglemode
Add location
Add Rule
Location List:
Rule List:
Please enter a valid name.
Please specify at least one trigger.
Please specify at least one action.
No rules defined. Service won\'t start.
No activated rules defined. Service won\'t start.
Automation Service started.
Version %1$s.
Starting service.
Don\'t have all location measurings, yet. Can\'t do comparison.
Distance between GPS location and network location is %1$d meters. This +1m should be the absolute minimum radius.
Have both network and gps location. Comparing...
No suitable location providers could be used.
If you are in a building it is strongly advised to place your device next to a window until a position has been found. Otherwise it may take a very long time if it is able to find one at all.
Getting position. Please wait...
Requesting location using provider:
Yes
No
Got GPS update. Accuracy:
Got network update. Accuracy:
Please enter a valid latitude.
Please enter a valid longitude.
Please enter a valid positive radius.
Select at least one day.
Attempting to bind to service...
Attempting to unbind from service...
Bound to service.
Unbound from service.
Request to start service, but it is already running.
Do what with rule?
Do what with location?
Do what with profile?
delete
Delete
Automation service stopped.
Stopping service.
Still getting position
Last Rule:
at
Service:
Get current location
Save location
Delete location
Latitude
Longitude
Rule name
Trigger(s)
and-connected (all have to apply at the same time)
Add trigger
Action(s)
(will be executed in that order)
Add action
Save Rule
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
Start
End
Save
URL to trigger:
Variables:\nYou can use the following variables. Upon triggering they will be replaced with the corresponding value on your device. Include the brackets in your text.\n\n[uniqueid] - Your device\'s unique id\n[serialnr] - Your device\'s serial number (< Android 9)\n[latitude] - Your device\'s latitude\n[longitude] - Your device\'s longitude\n[phonenr] - Number of last incoming or outgoing call\n[d] - Day of the month, 2 digits with leading zeros\n[m] - Numeric representation of a month, with leading zeros\n[Y] - A full numeric representation of a year, 4 digits\n[h] - 12-hour format of an hour with leading zeros\n[H] - 24-hour format of an hour with leading zeros\n[i] - Minutes with leading zeros\n[s] - Seconds, with leading zeros\n[ms] - milliseconds\n[w] - Day of the week in text form\n[F] - Month in text form\n[notificationTitle] - title of last notification\n[notificationText] - text of last notification\n[last_triggerurl_result] - The result of the last triggerUrl action execution\n[last_run_executable_exit_code] - The exit code of the last run executable action\n[last_run_executable_output] - The output of the last run executable action (only for non-root)\n[last_calendar_title] - Title of the last rule-triggering calendar event\n[last_calendar_description] - Description of the last rule-triggering calendar event\n[last_calendar_location] - Location of the last rule-triggering calendar event\n[variable-VARIABLENAME] - The value of your custom defined variable
wifi
Activating
Deactivating
Failed to trigger Bluetooth. Does this device have Bluetooth?
The url has to have least 10 characters.
Enter a phone number and a text.
Select type of trigger
entering
leaving
You haven\'t specified any locations. Do that first.
started
stopped
connected
disconnected
Select location
Select type of action
Select sound profile
What to do with trigger?
What to do with action?
Radius has to be a positive number.
There are still rules that reference this location (%1$s). I can\'t delete it, yet.
General settings
Start at system boot
On/Off
Write log file
Use TextToSpeech on normal
Use TextToSpeech on vibrate
Use TextToSpeech on silent
TTS on normal
TTS on vibrate
TTS on silent
Positioning settings
Listen to wifi state changes where possible
Wifi state
Observe device movement where wifi is not available
Accelerometer
Use Accelerometer after x minutes without tower mast change
Cell tower idle time
Threshold for accelerometer movements
Accelerometer threshold
Positioning thresholds
Minimum distance change for gps location updates
Distance for gps update [m]
Minimum distance change for network location updates
Distance for network update [m]
Satisfactory accuracy when getting location via gps in meters
GPS accuracy [m]
Satisfactory accuracy when getting location via cell towers in meters
Network accuracy [m]
Minimum time change in milliseconds for location updates
Time for update [milliseconds]
Sound settings
Show help
Rules
All triggers in a rule are AND-connected. The rule will only apply if all triggers are met. If you want OR, create another rule.\nThe terms trigger and condition are being used synonymously. All of them are conditions, but the last one to meet its required value could be called trigger because it is the final piece of the puzzle to cause a rule to be executed.\nIf you\'d like to save certain variables from a rule and evaluate them in another rule, checkout the variable trigger/action.
TimeFrames
If you specify a rule with a timeframe you have two choices. You can choose between entering OR leaving a timeframe. Either way a rule is triggered only once. So if you create a rule that has \"entering timeframe xyz\" as trigger and let it change your sound profile to vibrate that does not mean that the phone will automatically go to ring if the timeframe is over. If you want that you need to specify another rule with another timeframe.
On the main screen you can use lock sound changes to temporarily avoid rule based sound changes. E.g. you may be in a situation or place where usually ringtones are ok, but this one time it would be disturbing. The feature will automatically deactivate once the configured time has elapsed. Click the + button to add the given amount of time. Once it is active you may deactivate it again using the toggle button (and that way enable rule based sound changes again).
Toggable rules
Rules have a flag called \"Toggable\". This means that if a rule is executed and afterwards the same triggers apply again the rule will be executed in an opposite mode where applicable. Currently this will only happen in conjunction with NFC tags. If you tap them twice and there\'s a toggable rule associated with it it will do the opposite of the current situation, e.g. deactivate wifi if it\'s currently activated.
If you specify a rule with a process monitor the application will check for that process every x seconds (you can change that in settings). I know that can be kind of slow, but continuous monitoring would drain the battery to fast. And there is no broadcast from the OS for that event.
Energy saving
Many Android device manufacturers try to save energy by limiting the background activity of running apps. Unfortunately that often results in those apps not working properly, Automation is amongst these. See this webpage on how to find out how to exclude Automation from those measures.
Maximum time between 2 locations for speed determination.
Time in minutes
exceeds
drops below
Noise level measurement
Seconds between noise level measurements
Seconds between noise level measurements
Length in seconds for each noise level measurement
Length of each noise level measurement
Physical reference value for noise level measurement
Reference for noise measurement
Log level (1=minimum, 5=maximum)
Log level
Rule active
Location
Timeframe
Battery charging
USB connection to a computer
Speed
Background noise level
Wifi
Bluetooth
USB Tethering
Wifi Tethering
Bluetooth Tethering
Display rotation
turn Wifi on
turn Wifi off
turn Bluetooth on
turn Bluetooth off
Trigger a URL
Change sound profile
turn USB Tethering on
turn USB Tethering off
turn Wifi Tethering on
turn Wifi Tethering off
turn Bluetooth Tethering on
turn Bluetooth Tethering off
turn airplane mode on
turn airplane mode off
enable screen rotation
disable screen rotation
ScreenRotation enabled.
ScreenRotation disabled.
ScreenRotation was already enabled.
ScreenRotation was already disabled.
No locations defined.
Active location:
Closest location:
Overview
Location
Locations
A location is made up of GPS coordinates and a radius. Since positioning via cell towers is rather unprecise (but fast and cheap) do not specify the radius too small. The application will suggest you a minimum radius when you create a new location.
Service is not running.
General
To use this program you must setup rules. Those contain triggers, e.g. if you reach a specified area or you enter a certain time. After that\'s been done click the on/off button on the main screen.
Unknown action specified
Error triggering URL
Error changing screen rotation
Error determining wifiAp state
Error activating wifiAp
Failed to trigger Bluetooth. Does this device have Bluetooth?
attempting download of
Error getting connectionManager service. Not doing anything to UsbTethering.
Error determining current UsbTethering state.
Detecting tetherable usb interface.
Clearing both location listeners.
Starting service after app update.
Not starting service after app update.
Starting service at phone boot.
Not starting service at phone boot.
Application has been updated.
Start service automatically after app update if it has been running before.
Start service after update
Wifi connection
Wifi name
Enter a wifi name. Leave empty for any wifi.
Cancel
Rule \"%1$s\" doesn\'t apply. We are slower than
Rule \"%1$s\" doesn\'t apply. We are faster than
Rule \"%1$s\" doesn\'t apply. It\'s quieter than
Rule \"%1$s\" doesn\'t apply. It\'s louder than
Rule \"%1$s\" doesn\'t apply. Battery level is lower than
Rule \"%1$s\" doesn\'t apply. Battery level is higher than
Rule \"%1$s\" doesn\'t apply. Not the correct SSID (demanded: \"%2$s\", given: \"%3$s\").
Rule \"%1$s\" doesn\'t apply. There is no tag label or not tag at all.
Rule \"%1$s\" doesn\'t apply. Wrong tag label.
Rule \"%1$s\" is deactivated, can\'t apply.
starting
stopping
connecting
disconnecting
exceeding
dropping below
connected to wifi \"%1$s\"
disconnected from wifi \"%1$s\"
any wifi
Can\'t stop it.
HTTP(s) Requests
Accept all certificates
Skip validity check of SSL certificates (recommended against activating this)
Number of attempts in case HTTP requests fail for connectivity reasons
Number of HTTP attempts
Timeout for HTTP requests [seconds]
Timeout [sec]
Pause before another attempt [seconds]
Pause [sec]
Run manually
The service has to be running for that.
GPS comparison
Stopping comparison GPS measurement due to timeout.
GPS timeout [sec]
Maximum time in seconds to trying getting a GPS location for comparison. If over last known location will be applied.
Starting GPS timeout.
Forced location update
Due to timeout in comparison measurement the last best location will be applied.
If you are at a location, restart your device or the application and leave the location the application will run rules accociated to leaving the location upon its next start.
Remember last active location
Mute during calls
Mute TextToSpeech during calls
There is already another location by that name.
There is already another rule by that name.
Start another program
Select app
Select package of application
Select activity of chosen package
Error starting other activity
Another app is started/stopped
Process monitoring
Seconds between process monitorings
The lower, the higher the battery usage
Refreshing process list.
Processes
Starting periodic process monitoring engine.
Process monitoring
Periodic process monitoring is already running. Won\'t start it again.
Stopping periodic process monitoring engine.
Periodic process monitoring is not active. Can\'t stop it.
Periodic process monitoring started.
Periodic process monitoring stopped.
Rearming process monitoring message.
Not rearming process monitoring message, stop requested.
Message received stating process monitoring is complete.
App started.
App stopped.
Running app
Error writing settings to persistent memory.
Settings
Writing settings to persistent memory.
Refreshing settings from file to memory.
Error reading settings.
Invalid stuff stored in settings. Erasing settings...
Initializing settings to persistent memory.
Error initializing settings to persistent memory.
Settings erased.
Settings set to default.
Battery level
Select speed
Select battery level
Applying settings, rules and locations.
Privacy Policy
A browser will now open on your device and load the privacy policy from the developer\'s website.
Wait before next action
Wakeup device
Enter a value in milliseconds how long it should be waited before next action.
Enter a value in milliseconds how long device should at least stay awake. 0 for default values.
Enter a positive valid non-decimal number.
Move up
Move down
Can\'t move item up. It is already at the top.
Can\'t move item down. It is already at the bottom.
Wifi name specified, checking that.
Wifi name matches. Rule will apply.
No wifi name specified, any will do.
RuleCheck of \"%1$s\"
Airplane mode
Activate
Deactivate
Beginning from Android version 4.2 this feature only works if your device is rooted.
You asked for a position to be added to your URL. Unfortunately at this point I do not have any location, yet.
Add Intent pair
Parameter name
Parameter value
Parameter type
Select a type for the intent pair.
Enter a name for the intent pair.
Enter a value for the intent pair.
What to do with pair?
Getting list of installed applications...
On which days?
Inside or outside those timeframes?
Switch on or off?
Name
Radius [m]
Status
Data connection
turn mobile data on
turn mobile data off
Roaming
activated
deactivated
until
Application
is
Phone call
with
Phone number
Enter phone number. Leave empty for any number.
Enter phone number.
Select call\ndirection
any
incoming
outgoing
incoming
outgoing
any number
number
NFC tag
close to
with label
It appears this device does not have NFC.
Read ID from tag
Write tag
Enter a valid identifier for the tag (like \"Home front door\").
Tag written successfully.
Error writing tag. Is it in range?
Tag discovered.
Bring an NFC tag into range.
Tag found with text:
Unsupported encoding:
No NFC NDEF intent, but
NFC not supported in this Android version, yet.
Cannot run rules.
Can\'t download anything. Amount of http requests in settings is lower than 1.
Apply tag to rule
Tag read successfully.
Value stored not suitable.
No tag present.
Write new NFC ID
Use existing NFC tag
New ID:
Current ID:
Tag data no usable, write anew.
Bring a tag into range to read.
Toggle rule
Toggling
toggle
Overlap detected to location %1$s of %2$s meters. Reduce radius by at least that.
No overlap to other locations detected.
Rule \"%1$s\" is toggable.
Rule \"%1$s\" is not suitable for toggling.
none
any location
Invalid name for location.
Erase settings
Default settings
Are you sure?
At least location %1$s could be in range, if not others in addition.
No location in relevant range.
Activity detection
Activity detection
Detected activity:
In vehicle (car/bus)
On bicycle
On foot
Still
unknown
Tilting
Walking
Running
Invalid activity
Rule \"%1$s\" doesn\'t apply. Detected activity %2$s given, but too low probability (%3$s %%), required %4$s %%.
Rule \"%1$s\" doesn\'t apply. Required activity %2$s not present.
Select type of activity
This trigger is only available if Google Play Services is installed.
Activity detection frequency [sec]
Seconds between attempts to detect activity.
Activity detection probability
Certainty from which activities are accepted as fact.
Incoming telephone call from %1$s.
Outgoing telephone call to %1$s.
Speak text
Text to speak
Toggling is currently only allowed for rules that have NFC tags as trigger. See help for further information.
Error reading locations and rules from file.
It appears no data change has been saved. However there may have been changes in memory that need to be rolled back. Rereading file.
Bluetooth connection
Bluetooth connection to %1$s
Bluetooth connection from %1$s torn
Bluetooth device %1$s in range.
Bluetooth device %1$s out of range.
any device
Rule \"%1$s\" doesn\'t apply. Not the correct bluetooth device name.
Rule \"%1$s\" doesn\'t apply. Not the correct bluetooth device address.
no device
one from list
connection to device
disconnection from device
device in range
device out of range
Select a device option.
Select a connection option.
Rule \"%1$s\" doesn\'t apply. Device is in range, but should not be.
Rule \"%1$s\" doesn\'t apply. Wrong state.
Headset connection
Open music player
Headset (type: %1$s) connected
Headset (type: %1$s) disconnected
Headphone
Microphone
Either
Select type of headphone
Rule \"%1$s\" doesn\'t apply. Wrong headphone type.
Ignoring activity detection update. Came in sooner that %1$s seconds.
What\'s this?
At least rule \"%1$s\" is using a trigger of type \"%2$s\".
Only private locationing
Avoid locationing methods that may send your location to a provider, e.g. Google. This will use GPS only and may therefore be slow or not work reliably.
Private Locationing enabled, enforcing GPS use.
Private Locationing not enabled, using regular provider search.
GPS measurement
GPS measurement stopped due to timeout.
Cell tower changed: %1$s
If you think the noise detection isn\'t working correctly (depending on the value you specify) please keep in mind that every phone is different. You can therefore change \"Reference for noise measurement\" in settings. See http://en.wikipedia.org/wiki/Decibel for more information. You can use the volume calibrator from the main screen to calibrate your device.
Hint
Select noise level
Location has wifi. Stopping CellLocationChangedReceiver.
Location doesn\'t have wifi. Not stopping CellLocationChangedReceiver.
Show on map
No maps application found on your device.
Location engine not active.
Add profile
Profile
Sound mode
Volumes
Tone for incoming calls
Tone for notifications
Haptic feedback (vibrate when touching screen)
Music, video, game and other media
Ringtone and notifications
Alarms
Change
Audible selection (sound when making screen selection)
Screen lock/unlock sound
Vibrate when ringing
Profiles
Normal
Vibrate
Silent
Enter a name.
No change selected. Profile doesn\'t make sense.
There are no profiles in your configuration. Create one first.
Error activating profile:
There is already another profile by that name.
Invalid name for profile.
Error writing settings file.
Unknown error.
No writable folder found to store config file.
This will most likely not work as you\'re above Android 2.3. You could use wifi tethering instead instead.
Using new thread for rule activation.
Start new thread for rule activation.
New thread
Show icon
Show icon when service is running (hiding it only works below Android 7). If you\'re on a higher version, go to system settings, then Automation, then notifications and disable the \"Service notification\".
Rule history (most recent first):
Some options are disabled as they cannot be used, yet. They will be introduced in a later program version.
Lock sound changes
Profile will not be activated. Last activated profile has been locked.
Current volume
Enter a valid reference value.
Volume calibration
To calculate a dB value for noise monitoring you need to specify a so called physical reference value. Please read Wikipedia for further information. This value is most likely different for every phone. Drag the seekbar to change the defined physical reference value. The higher the reference value the lower the dB value will be. Constant measurings will be performed every %1$s seconds and the results displayed below. Press back when you have found a suitable value.
Some settings will not be applied before certain environment settings change or service is restarted.
Phone is rooted.
Phone is not rooted.
Data connection was successfully changed using superuser permissions.
Data could not be changed using superuser permissions.
You need to root your phone for this function to work. Afterwards you need to \"run the rule manually\" to show up the superuser permission question. When the superuser popups shows up you need to always allow the application to do that. Otherwise the rule cannot function when the phone is unattended.
Error writing config. Do you have a writable memory?
I could not insert the last phone nr in the variable. I don\'t have it.
Username
Password
Use authentication
Required permissions
Explanation of required permissions
Ok
Disabled features
The following permissions have been denied:
The app is current running in limited mode and has deactivated some features. To fully function it requires permissions. If you want to use all functionality you have to grant the permissions in the following rights dialogues. If you do, not certain rules can not be executed. In the following you are given an explanation for the requested permissions. Click "continue", when you are ready to proceed.
To enable the feature you just tried to use more permissions are required. Click continue to request them.
continue
Rule
Read and store settings
WARNING: Features are disabled, Automation is running in limited mode. Click here for more information.
Green = enabled, red = disabled, yellow = not enough permissions
The permission to change some OS settings is required (even simple stuff like turn on bluetooth or wifi). After clicking "continue" a window will popup where you need to enable this for Automation. Then hit your "back" key.
Further permissions will be requested in a second dialog afterwards.
Automation requires access to external storage to read its settings and rules.
Automation requires more permissions to fully function. Click on this text to find out more and request them.
Invalid device
your app id
Maximum log file size in Megabyte. Will be rotated if bigger.
Maximum log file size [Mb]
Read phone log
Read calendar entries
Read exact location
Read coarse location
Read location
Send data over a network connection
Read device\'s network state
Read device\'s wifi state
Change Bluetooth settings
Change Bluetooth settings
Use NFC module
Let phone vibrate
Keep phone on
Change audio settings
Record audio
Detect outgoing calls
Change device settings
Detect phone state
Read storage
Write storage
Detect running processes
Change device settings
Detect device reboot
Change secure device settings
Read battery state
Change data connection
Send text messages
Read contact data
Override do not disturb policy
These are the permissions required:
Rule \"%1$s\" requires this.
Profile \"%1$s\" requires this.
This feature can detect if you\'re currently on the go and if it is on foot or in which type of vehicle (to a certain extent). The feature is not fully built into Automation, but is provided by Google Play Services. Technically it does not give a yes/no result, but return a percentage to which level it is sure it detected you\'re status. You can setup the percentage value from which Automation will accept a result. Two remarks: 1) More than 1 status could occur at the same time. For example you might be WALKING inside a driving bus. 2) This sensor is relatively expensive in terms of battery usage. If it is possible you might consider using alternatives, e.g. require your car\'s handsfree device to be connected to detect you\'re driving.
Send text message
Text to send
You can directly enter a phone number. Alternatively use the contacts option to pick one. But keep in mind: The number will be stored here, not the contact. If you change the phone number of a selected contact you\'ll need to update this rule. It doesn\'t do that by itself.
Import number from contacts
If you\'re using the noise level trigger: Unfortunately beginning with Android 9 (Pie) Google decided to disallow background applications to use the microphone. So this trigger has no effect anymore and won\'t trigger anything.
Unfortunately Google decided to remove this feature in Android 10. Regular apps are not allowed anymore to turn wifi on or off. Only if your device is rooted it should continue to work. If not, then I\'m afraid this won\'t have an effect anymore.
This message won\'t be shown again.
In this final selection popup you need to select a specific activity. Simplified this is like a window of the desired application. If you do not know which one it is generally a good idea to pick one that has \"main\" or \"launcher\" in its name.
Edit
Click and hold an item for options.
Rule \"%1$s\" finished.
Positioning engine
Thanks to Google\'s infinite wisdom and constant endeavor to protect everyone\'s privacy, all the rules that may be used to send sms or read the phone state have been stripped off of all the triggers and actions which Google considers risky.
Start automation as a service
Set screen brightness
Enter the desired brightness (from 0 to 100).
Enable auto brightness
apply
automatic brightness
manual brightness
If you use auto brightness the brightness value you use below will probably not be used long.
Screen lock sounds cannot automatically be changed anymore on devices running Android version 6.0 or higher. Whatever you set here, it will not work in either direction.
Start screen
Select the screen the applications opens with at start.
Run rules/profiles with single click.
This app collects location data to enable location based rules and speed detection even when the app is closed or not in use.
This app collects location data to determine if you\'re currently at one of the locations you created. Furthermore it is used to determine your current speed if you are using that trigger in rules. That is done even when the app is closed or not in use (but only when the service is activated).
Read location in background.
This device does not seem to have bluetooth. You can still continue configuring this, but it will most likely not have an effect.
Create or edit locations
Error
This feature is based on non-free software. Therefore is is not available in the F-Droid version.
Your settings and or rules are currently referencing non-free features that cannot be provided in the F-Droid version. That includes detecting your current physical activity.
Your settings and or rules are currently referencing features that cannot be provided in the Google Play version. Among other things that includes anything related to phone calls and text messages.
published on
Display application news on main screen
Announcements about this app only, we\'re probably talking about 1-2 per year, not more.
Automation now uses another path to store your files. All your Automation-files have been moved here: \"%s\". The external storage permission is not required anymore; you can revoke it. It will be removed in a future version.
Location disabled
Location cannot be determined in the background anymore. Click here to find out why.
Unfortunately your location cannot be determined anymore. A debt of gratitude is owed to Google for its infinite wisdom and amiableness.\\n\\nLet me explain this further. Starting with Android 10 a new permission was introduced that is needed to determine your location in the background (which of course is required for an app like this). Whilst I consider that a good idea in general the chicanery it involves for developers is not.\\n\\nWhen developing an app you can try to qualify for this permission by abiding to a catalog of requirements. Unfortunately new versions of my app have been rejected over a period of three months. I fulfilled all those requirements, Google\'s shitty development support claimed I would not. After giving them proof that I did after all - I got a response like \"I cannot help you anymore\". Eventually I gave up. \\n\\nAs a consequence the Google Play version can NOT use your location as a trigger anymore. My only alternative option would have been to have this application removed from the store entirely.\\n\\nI\'m very sorry about that, but I\'ve tried my best arguing with a \"support\" that repeatedly failed to pass the Turing test.\\n\\nThe good news: You can still have it all!\\n\\nAutomation is now open source and can be found in F-Droid. That is an app store that really cares about your privacy - rather than just acting like that. Simply backup your config file, uninstall this app, install it again from F-Droid, restore your config file - done.\\n\\nClick here to find out more:
Config and log files are stored in folder %1$s. Click on this text to open a file explorer. Unfortunately this will only work on a rooted device. FOR ALL OTHER DEVICES: Simply use the export button to make a backup.
Notification
Title
Text
equals
contains
starts with
ends with
not equals
any app
This trigger will respond to other applications opening notifications in the notification area (or such being closed). You can specify another application from which the notification has to come from. If you don\'t the notifications from any other application will count. You can also specify strings that must be or must not be in their title or notification body. The comparison is done case-INsensitive.
%1$s posts notification
notification from %1$s removed
Notification appears
Notification disappears
Direction
Read system notifications
Play sound
always play
If this settings is active the sound will always be played. If it is deactivated it will only play if your phone is neither on mute nor vibrate. However if active it will not have an effect on the volume. So if your phone is on ring mode it will not increase the media volume for example. So if media volume is on mute you won\'t hear anything either.
Select sound file
File does not exist.
No file manager installed.
Attach config and log files.
This will start a new email with your config and log files attached as zip file. It will not be sent automatically, you still need to hit \"send\". You can also change the recipient to yourself for example.
Here you have 2 general options:\n\n1. You can start a program by selecting an activity. Imagine this like preselecting a specific screen/window of an application. Keep in mind this may not always work. This is because the windows of an app might interact with each other, e.g. pass on parameters. When bluntly starting a specific screen that interaction has not happened and the window might close instantly (therefore it\'s never really shown). Try it nevertheless! You can enter an activity path manually, but it\'s recommended to use the \"Select\" button. If you decide to enter it manually enter the app\'s package name in the upper field and the full path of the activity in the lower one.\n\n2. Selection by action In contrast to selecting a specific window you can also start a program by an action. This is like shouting out \"I\'d would like xyz\" and if there\'s an app installed that can help you with that it will be started. A good example would be start browser - you might even have multiple installed (one is usually the default one). You need to enter this manually, PackageName is optional here. Keep in mind no variables will be resolved. If you want to start the camera for example using \"MediaStore.ACTION_IMAGE_CAPTURE\" will not work. You have to take a look at the Android documentation and use this variable\'s actual value instead which in this example would be \"android.media.action.IMAGE_CAPTURE\".
There was an error running a rule.
Cannot find sound file %1$s and therefore not play it.
Add parameters
Control tunnels of the wireguard app
Method to\nselect application
by activity
by action
Enter a valid action
Enter a valid package name.
State
You can enter a specific remote phone number, but you don\'t have to. If you want to specify one you can either pick one from your address book or enter it manually. In addition you may use regular expressions. To test a regular expression I like this page:
Import configuration
Export configuration
More settings
Configuration exported successfully.
There was an error while exporting the configuration.
Rules and locations have been imported successfully.
There was an error importing rules and locations.
Configuration imported successfully.
There was an error importing the preferences.
No applicable files could be found in that directory.
No file could be imported.
Not all applicable files could be imported.
When clicking import or export you select the directory from which files are imported or exported to. When exporting existing files might get overwritten.
If your parameter is of type Uri AND you specify \"IntentData\" as name (lower/upper case is not important), the parameter will not be added as a normal parameter with putExtra(), but will instead be added to the intent with setData().
String %1$s is not allowed.
Select start type
by startActivity()
by sendBroadcast()
Open webpage with examples
Package name
Activity/action name
Warning
ringing
from
to
matching
https://regex101.com/
Load wifi list
The list of wifis your device has been connected to could be used to determine which places you have been to. That\'s why the location permission is required to load the list of wifis. If you want to be able to pick one from the list you need to grant that permission. If you do not want that, you can still enter your wifi name manually.
There are no known wifis on your device.
This feature does NOT open a browser, but triggers a URL in the background. You can use this e.g. to send commands to your home automation.
Check for updates
Only applies to APK version.
There\'s a new update available. Would you like opening the browser to download it?
Location found. The suggested minimum radius for locations is %1$d m.
Only a location with a limited accuracy could be found. It might not work reliably. The suggested minimum radius for locations is %1$d."
Clone
No position could be found after a timeout of %1$s seconds.
In the next screen please go to permissions, then location. There select \"Allow all the time\" to allow Automation to determine your location in the background.
Vibrate
Try
Enter a vibration duration, followed by a comma, then a pause duration. You can concatenate as many vibrations as you like. Separate them by commas again. E.g. the pattern 100,500,500,1000,100 will vibrate 100, wait 500, vibrate 500, wait 1000, vibrate 100 ms. If you think a vibration is dropped, try increasing the pause before them.
Please enter a valid vibration pattern.
Would you like to receive (only important) news about this app on the main screen? Those are downloaded from the developer\'s website. There will be no intrusive notification, just a text on the main screen when you open the app.
Top
Bottom
Position of tab bar
Choose where the tabs bar should be placed.
Because Google screwed up yet another part of Android, starting with API 30 only the currently visible wifis can be displayed, not all the ones your device has connected to anymore.
REMARK: The silent mode often triggers Do-Not-Disturb on newer devices. If that happens on your device, I recommend using the normal mode instead and lowering all volumes to zero.
Tones
Miscellaneous
Do not disturb
DND off
Let priority notifications through
Let alarms through
Let nothing through
Fine tuning (like allowing phone calls, picking specific numbers, etc.) can only be done from the system\'s settings.
If you do not choose a specific app, but choose \"Any app\", notifications from Automation will be ignored to avoid loops.
Repeat every x seconds
repeat every %1$s seconds
You need to enter a positive non-decimal value for repetition time.
An element of the configuration file could not be read. The file may have been created by a newer program version.
Donate
This feature is confirmed to work up until Android 8.0. From some higher version upwards it ceases to work, but due to a lack of physical devices I cannot tell which one that is. On Android 11 it definitely ain\'t working anymore. If you have a version in between please let me know if it\'s working or not.
Notice
Device orientation
Tolerance (0-180)
Azimuth:
Pitch:
Roll:
Enter valid numbers in all fields.
When you move your device the below numbers will update. What you can see there, is the current orientation of your device measured in degrees. If it is in the desired orientation, click the apply button to copy the current values to the desired fields. Because reaching this exact orientation ever again is highly unlikely you must also enter a tolerance. This is amount of degrees to which the orientation can deviate in either direction. 15° will result in a total angle of 30°, 15° in every direction. If you only care about one specific axis, specify a tolerance of 180° for the two other ones.
Would currently apply?
the device is in a certain orientation
A tolerance of 180 is allowed for 2 tolerance fields only, not all 3. Otherwise the trigger would ALWAYS apply.
unknown
Orientation
There\'s something wrong with this trigger. It could not be loaded correctly.
Turn screen on or off
turn screen on
turn screen off
Must apply
Signal frequency
Accept new movement signals every x milliseconds
Device orientation settings
Device administrator
Device administrator permissions required for at least 1 rule you created.
If the checkbox is checked that means the device has to be in the orientation you specify. If it\'s not checked, any orientation that does NOT match your criteria will do.
Your rules required permissions which cannot be requested from this installed flavor of Automation.
If you have not used a send-sms action in this program before, Android may show an additional confirmation dialog, asking you to allow sending messages. You need to select the \"always allow\" checkbox and confirm if you want this action to work in the background. It\'s advised to run this rule manually once to provoke this confirmation dialog.
Exclude from battery optimization
Recommended for better reliability
Needs to be active
Check settings
profile %1$s is active
profile %1$s is not active
If this checkbox is not disabled, it will only be checked if the selected profile has been the last one to be activated. It doesn\'t matter if any audio related settings have been changed externally. However if the checkbox is enabled, the current audio settings really need to be like defined in the profile. BEWARE: Checking the ringtone file is currently not supported, yet.
Cannot delete this profile. Rule \"%1$s\" is referencing profile %2$s.
Profile could not be deleted.
no repetition
using authentication
to number
message
on days
not set
Find automatically
Choose manually
Easy mode: Automation can try to identify the launcher activity of the desired program automatically. Alternatively you can also pick one of the application\'s activities manually. What would you like?
A launcher activity of this app could not be identified. You will have to pick one manually.
Create notification
Enter a title.
Enter a text.
Info
The profile used in this rule doesn\'t seem to exist anymore. The alphabetically first one has been selected.
If you don\'t specify any criteria this action will close ALL notifications. So it\'s advised to at least specify criteria for at least 1 of application, title or text.
Close notification(s)
Comparisons are done case-INsensitive
The settings you can adjust here, can cause that you don\'t notice certain things from your phone anymore. They may even silence your wakeup alarm. So whatever you do - it is highly recommended that you test it - also after Android updates.
if
Email is my preferred method of contact to report bugs, ask questions or make proposals. Go to control center to learn more.\nMany questions cannot be answered straight away, but require some technical research. So please have some patience.
Control center
Send email to developer
screen is %1$s
on
off
unlocked
Select desired state
Screen state
Because of Google\'s infinite wisdom, the last Android version this feature is known to work on is %1$s. You can configure it, but it probably will not have any effect.
Control media playback
Select command
toggle play/pause
play
pause
previous
next
Control media playback
stop
Please select an action!
Keep in mind that this action may not work with ALL players out there. And even if it does, not every button may be functional.
Music playing
Select parameters
music is playing
music is not playing
Music playing detection
Check frequency [ms]
Milliseconds between checks
Getting the location does not seem to be working on Android 12 devices currently. If it isn\'t working for you, I\'m sorry. I\'ll try to fix this as soon as I know the cause. So if the donut doesn\'t stop spinning, you know why.
Last profile:
Get a list of installed applications
If you use a timeframe that stretches over midnight you need to select the following day as well if you want the trigger to apply after midnight.
This feature is not available in the Google Play version anymore.\n\nEvery now and then Google bullies developers. If you want to keep using certain features you have to file paperwork. Unfortunately there\'s a 99% chance that the paperwork gets rejected. It\'s pretty much like in the Asterix comic/movie.\n\nI\'ve spent weeks arguing with them about cases like that in the past, but I kept getting rejections - either by bots or people who are about as intelligent as bots. In the I can decide between the app being removed from the Play Store entirely or remove the feature.\nPlease consider using the APK version from my website or the one from F-Droid if you need those features.
This limitation concerns only the selection of an app, not the actual start. So you can still enter the name of an application manually if you know it.
Device starts
Service starts
device is starting
service is starting
broadcast received
broadcast not received
Most events on your phone will be \"published\" by broadcasting them throughout the operating system.\nFor example turning on/off airplane mode will trigger such a broadcast. Those broadcasts are not automatically visible/audible, but if an application (like Automation) is interested it can hook up to them. When they occur it will get notified and can react.\n\nYou can define a broadcast event here for which the application will wait. You may enter it manually, copy & paste it from somewhere or pick one from the list of suggestions. As this trigger is meant to be and remain very flexible I cannot provide you with explanations for the items.\n\nThe list of suggestions does not claim to be complete. Please visit the below URL to have a look at the Android documentation.\nAlso any app can send custom events which will not appear in the Android documentation of course.\n\nMany broadcasts require specific permissions in order to work. I try to request permissions where I know they will be required. If you think a permission is required for the action you entered, please let me know.\n\nNot received means there has not been such a broadcast ever since the service has been started. Responding to certain parameters is in development.
https://developer.android.com/reference/android/content/Intent.html
Broadcast received
To avoid unnecessary wearing of your storage, logs are not saved by default. So if you have a problem please activate logging in settings first and set log level to 5. Then reproduce the problem. Only then logs can be attached.
Show suggestions
Select broadcast
locked (swipe only, no PIN)
locked (with PIN, etc.)
Any state of locked will only be detected if the screen is off.
If you have a problem, suggestions or question, please write something in the email. Do not just send me the files with the default mail body. I will ignore those unless we\'re already in a conversation.
Send broadcast
Enter a broadcast action.
This action allows to send a broadcast across the Android OS messaging system. This is not user-visible, but apps who listen for that specific broadcast can respond to it being sent.
does not contain
Run script or executable
Path
Parameters
Choose executable
Run as root
Select a valid executable file.
The file is not executable.
Apps targeting Android Q or higher cannot turn wifi on or off anymore. Please blame Google for this restriction, not me. You can bypass this restriction by rooting your device and activating the checkbox below. Alternatively download this application from F-Droid or my website as I am not forced to target the latest API level in those versions.
While airplane mode is activated, wifi can only be toggled from applications when using root permissions for that.
using root
You can select a script or an executable file here that will be executed as an action.\n\nBut there are some prerequisites which you have to deal with on your own. Google has made it very hard to run anything other than regular Android applications.\n\n1. The script needs to be marked as executable. On a regular Android system (without root) this is actually the hard part.\n\n2. That also means Automation must be able to execute the file, not just the owner or the group.\n\n3. If it is a script, a valid shell be specified in the script\'s header.\n\nIf you cannot meet the above requirements, you could alternatively try to specify a shell as the actual executable (like /system/bin/sh) and your script as parameter. That has worked for at least one user.
tethering is active
tethering is not active
Tethering state
If \"equals\" is selected, you may enter a regular expression.
Enter a number.
Duration [ms]
Keep device awake
Specify timeout
Activate will keep the screen on while deactivate will let it turn off. For keeping it on you can either enter a duration after which it may turn off again or you can keep it on indefinitely. In the latter case you would need to create another keep-awake action (in this or another rule) in which you select deactivate.
You may also enter a regular expression here.
Simply dismiss
Click a button
with button %1$s
Subsystem state
Bluetooth
To get the wifi SSID, the app requires location permissions. Because the Google version cannot get that, you can only use this trigger if you do not specify an SSID. So it can only be used to detect if wifi is connected or not.
USB
Type
Cable
Bluetooth tethering can currently not be detected. Only the other means of connection will activate this trigger.
Call phone number
Call phone number
Here you can enter a phone number that will be called without further prompts. You may use this to make settings like making adjustments to call routing, etc.. Please search for the codes required for this on your own.
End phone call
End phone call
Set a variable
Delete variable
Variable key
Variable value
If you set a variable to an empty value it will be deleted.
Enter a key for the variable.
Check variable
If you leave the value empty the variable must not be set for the condition to return true.
if variable %1$s is %2$s
if variable %1$s is not set
Message type
SMS
MMS
Attachment
choose file
by startService()
Show toasts
Show toasts when events like rule executions occur
After clicking ok, select Automation, then select \"Allow notification access\", then \"allow\".\n\nOn some systems this setting is greyed out. In those cases you need to go to \"settings\" -> \"apps\" -> \"Automation\" -> 3-dots-menu -> Lift these restrictions. Afterwards return here.
Display language
Set a custom language for the application
This permission is also required if the trigger is using the current wifi connection.
Copy text to clipboard
Text to copy
Display over other apps
After clicking OK you\'ll be sent to a system dialog. Please select Automation there and allow "Display over other apps".
Variables are only available for parameter types String and URI
If you want to specify a parameter you also have to click \"Add intent pair\". Otherwise your changes will not be saved.
This trigger will be valid if you just disconnected from the wifi specified above OR while the service is still starting and if you\'re not connected to any wifi. If you want the trigger to fire only when you\'re explicitly disconnecting from a certain wifi, add another trigger \"service is not starting\".
Class full name
by startForegroundService()
Method
GET
POST
Take screenshot
Bind to accessibility service
Bind to accessibility service
After clicking OK you\'ll be sent to a system dialog. Please select Automation there and allow "Allow accessibility API".
Required for certain actions.
If you fail to grant one the following permission and a system message like \"Restricted permission\" you need to go to Android settings first, then applications, choose Automation. Now there should be 3 dots in the upper right corner. Click \"Allow restricted settings\". After that the necessary permission should be grant-able. This should only apply to the APK version of the app, not the ones from F-Droid or Play Store.
set location service
Set location service
Unfortunately the permission WRITE_SECURE_SETTINGS cannot be given directly on your Android device. Instead you need to connect your device to a computer and grant the permission via ADB. Click here to find out how to grant it: https://server47.de/automation/adb_hack.php
Location service
SENSOR_ONLY
BATTERY_SAVING
HIGH_ACCURACY
The result of this request will be stored in the variable LAST_TRIGGERURL_RESULT if you wish to check it from another rule. In case of HTTP errors like 404 the value will be \"HTTP_ERROR\".
calendar event
Event is currently active
Calendar event
Location
Description/notes
Availability
Event is currently not happening/has ended
busy
free
tentative
out of office
working elsewhere
If you select no item, any one will be ok.
Calendars
It may be that only the first 3 types are actually working because the other types are not part of Android\'s standard calendar interface.
any calender
availabilities
In this trigger calendars with IDs %1$s have been previously configured, but have been deleted since. With the next save those will be removed from this trigger. Until then this trigger/condition will never be met.
account
All day event
event is an all day event
event is not an all day event
The permission to read your calendar will be required for a calendar trigger. It will already be required to populate the calendar fields in this window.
It appears like no calendars have been set up on your device. You can save this trigger, but it will never return true.
There was an error reading the calendars on your device.
Schedule exact alarms
After clicking OK a window will open. Please select Automation there and allow the app to schedule exact alarms.
Evaluate
An error occur occured while loading values.
Enter valid data into the parameter fields.
event is not reoccurring
event is reoccurring
reoccurring
If your calendar holds multiple parallel, overlapping or directly following events, a rule will get executed as many times as there are events matching the rule\'s criteria. In case a rule has multiple calendar triggers and there are multiple matching events in parallel, then the rule will get executed only once.
AC
wireless
charging
not charging
The type will only be evaluated if the device is charging. If not charging is chosen, it will fire at any previous charging type. If you want to evaluate that, consider using the variables trigger/action.
A profile is a collection of settings for ringtones, volumes and other audio related settings that you can have applied from rules or apply it manually.\n\nIt is also possible to query for the last activated profile as a trigger. In the normal case it will only query if the profile was the last activated one (regardless if specific audio settings have been changed in the meantime). But you can also have the individual settings compared.
In version 1.8.2 it was necessary to revise the way actions to start other programs were saved. Compatibility could not be ensured. Please check and edit your start other activity actions to make sure they are still working.
In the following dialog do not try to select specific files, but choose the folder in which the Automation backup files reside. If the choose button is disabled, you have found an Android limitation. In that case try moving the files to a subdirectory first.