Wednesday, July 4, 2012

AutomateIt and NFC

AutomateIt latest version (Free: v1.22.0, Pro: v2.22.0) introduces a new trigger named "NFC Trigger" (NFC stands for Near-Field-Communication).
This trigger can be used with NFC tags to launch various actions just as you would do with any other trigger, utilizing all the large selection of actions AutomateIt has to offer.
For those who are not so familiar with the NFC technology, the following video gives a pretty good demonstration of what are NFC tags and how they are used with your device.
One thing that you should be aware about this new trigger is that by design, Android does not monitor nearby NFC tags when the screen is turned off or locked.
There are some workarounds for that published on the web that can make your NFC experience even better, such as the following post on XDA:

Monday, June 18, 2012

AutomateIt - The Next Generation

AutomateIt has been around for quite some time now, but as you probably noticed, it wasn't updated in a long time.

This does not mean that we abandoned this product - in fact, it means that there is something BIG happening and coming your way.

Use the following link to sign-up for our pre-release version which should be available for a limited number of users at first before it's released to the rest of the world.

Don't get left behind !

Sign up Here

Thursday, February 16, 2012

My Top Apps

No, This isn't just another post that provides a very long list of apps that someone decided that they are the best apps ever.
This is an actual app that helps you understand what are YOUR top apps.

Free Version
Download from Android Market
Download from AppBrain

Pro Version
Download from Android Market
Download from AppBrain

My Top Apps monitors the apps that you use and provides quick access to the apps you used recently, most used apps or the apps that you use for the longest duration (Pro version only).

When you first launch My Top Apps the main screen is kinda blank since you haven't launched any apps yet
But, once you start using your apps, My Top Apps display is constantly updated according to your usage habits. My Top Apps offers a launcher-style view, details view or a timeline view of the apps you use.

Clicking any app on the launcher-style or details view will launch the application so you can easily access all of your apps.

As mentioned before, You can select the way the apps will be organized by as shown on the following image:

The available organization algorithms are:
  • LRU (Last Recently Used) - Organizes your apps according to the last time it was used in a descending order, meaning that the last used app will appear first on My Top Apps.
  • MRU (Most Recently Used) - Organize your apps according to the number of times each app was activated within the defined calculation duration
  • Use Duration (Longest Use Duration) - Organize your apps so that the app used for the longest time will appear first. This Algorithm is only available on My Top Apps Pro Version.
For all algorithms you can define a calculation duration which filters your apps usage statistics only from the defined time period.

One of the most usable features of My Top Apps is its widgets. My Top Apps offers widgets in multiple sizes that can be customized to your needs so you will never have to customize your home page with your favorite apps !

When creating a new widget you can customize the following parameters:

My Top Apps has the following features:
  • Click app icon - Launches the clicked app
  • Click My top apps icon (on the top left) - Launches My Top Apps
  • Click widget header (Where you see the selected Algorithm and Calculation duration) - Launches the widget configuration so you can update the widget settings.
  • Some widget sizes are only available on My Top Apps Pro version - 4x3, 4x4, 5x5
Widget theme selection is available on My Top Apps Pro version (Blue, Transparent, Purple, Dark):

My Top Apps settings provide some additional configuration parameters as shown on the following image:

  • Number of columns - Sets the number of columns that will be displayed on My Top Apps Grid view. This has no affect on other views or My Top Apps widgets
  • Clear History - Clears the app usage history before a selected date
  • Ignored Apps - My Top Apps allows you to select apps that you don't want to be displayed on My Top Apps views or on its widgets.
  • Include debug info in log - This is mostly used when reporting an error with the app. If you encounter a problem with the app, check this checkbox and send me an email using the "Help !" button on the About screen.
Finally, one more thing that is easily done using this app - We all know that once there is a new Android user around you immediately start thinking "What apps are the MUST HAVE ?". Using My Top Apps, this is no longer a question, simply click the "Share" button from the app menu and an email will be generated for you with a list of YOUR Top Apps and links to downloads from the Android market:

Thursday, December 22, 2011

AutomateIt - Cell Id Trigger Guide

Visit our new website at

The most requested feature on Vote for feature - Take II was the Cell Id Trigger. Without getting too technical, your device is using cell towers to connect to the cellular network, and as you move from one place to another, the device is connecting to different cells. This trigger monitors the cells your device is connected to, allowing you to define triggers for connecting or disconnecting from cells in desired areas.
The trigger configuration screen has the following settings:
  • Log cells data - When this setting is checked, whenever your device connects to a new cell, it will be logged to the rule log. The log will contain the cell details and an indication whether the rule is active or not.
  • Connected to cell - This setting lets you define whether the trigger will launch when you are connected to one of the defined cells or when you are not connected to any of the defined cells.
  • Location - The dropdown list lets you select a location. a location is a saved set of cells which you can define. When defining your first Cell Id trigger, you don't have any saved locations so you will only be able to select "Custom Location". When you select a location it shows the list of cells which comprise the selected location.
To configure the list of cells, you should click the menu icon to the right of the location selection box, which will show the following menu:
The menu has the following options:
  • Scan cells - The application will start monitoring connected cells, adding all found cells to the list of cells. The scan will continue until you press the "Back" button. Notice that in some areas it could be that there is a large number of cells to scan so it is recommended to try and scan for cells several times during the day until all cells in the area are acquired.
  • Add cell (from recent) - Once you start using the Cell Id Trigger, AutomateIt keeps a log of the recent cells your device was connected to so in case your trigger does not recognize a cell which you want to include in one of your triggers, you can use this option to add the cell from the list of recent cells. When clicking this option, the following list is displayed allowing you to select one or more cells that will be added to your trigger. Each cell shows the time your device was connected to the cell and some information of the connected cell.
  • Add cell (manually) - In addition to the "Scan cells" and "Add cell (from recent)", you can manually add cells. When selecting this option from the menu, you will be required to enter the cell details as follows:
  • Save location - In order for you to be able to define several triggers which relate to the same location (for instance, Arrived home and Left home) you can save the set of cells as a location which will be available for selection using the selection box on the trigger configuration screen (AutomateIt free version only allows saving a single location while the Pro version has no limitation on the number of saved locations). The main advantage of saving locations is if you have more than a single trigger using the same location, updating it through one trigger will affect all triggers using the same location. When a saved location is selected the menu will have two more options:
  • Rename location - That's pretty much self-explanatory...
  • Delete location - This option deletes the saved location but does not remove the cells from trigger.
Each cell displayed has two buttons on the right side allowing you to remove the cell from the trigger or edit its details.

Cell Id Settings
The Cell Id Trigger has some general settings that can be changed using the application settings screen:
  • Trigger when device is asleep - Using this setting you can choose to monitor connected cells even when the device is asleep, otherwise, it will only monitor connected cells when the device screen is on. By default, this setting is set so it will monitor cells even when the device is asleep. Please notice that un-checking this setting will not necessarily prevent your device from checking for cell updates, but it will not enforce it to check for updates every defined interval. In case some other application wakes the device it could be that the trigger will still launch. if you wish to prevent the trigger from executing when device is asleep, I recommend using the Composite AND Trigger available on the Pro version and combine it with a "Screen On Trigger".
  • Cell updates monitoring interval - When the previous setting is set, AutomateIt will check for connected cell on specific time intervals as defined by this setting.
  • Turn screen on for cell update check - This setting determines if when checking for cell updates the device screen will be turned on. For most devices this is not required and by default this will be set to false. If despite the fact you set the "Trigger when device is asleep" setting, the trigger does not launch when the device is asleep, try using this setting.
  • Screen on duration (ms) - When using the "Turn screen on for cell update check" setting, this setting is used to define the screen on duration. By default this is set to 500 milliseconds.
Currently (version 1.20.0 or 2.20.0) AutomateIt was only tested for GSM support and has CDMA support as an experimental feature. If you have a CDMA-based device and use this trigger please keep in mind that this was not fully tested and report any errors using the "Help" button on the About screen of the application.

Thursday, September 15, 2011

AutomateIt - Vote for feature - Take II

This is a second round for you, AutomateIt users, to vote for your favorite features for next updates.
Those of you already familiar with the Vote for feature post can go ahead and vote !

The list below was combined from requests I received through emails, comments on this blog, the AutomateIt thread on and some new ideas that I came up with...

Obviously I can't implement all of those requests so I'm letting you decide which features you would like to see coming in next updates by hitting the "Like" button for your favorite feature(s).

The "Like" count for each feature will have significant impact on the upcoming versions of AutomateIt.

Like it ! Feature
Add Feature: Copy rule
Add Action: Send email (With keywords similar to Send SMS Action)
Add Feature: Contact selection enhancements (Unknown contact, phone number pattern, last caller, last SMS sender, last called phone number, last SMS recipient, choosing a specific phone number for a contact with several numbers)
Add Feature: Main screen UI enhancements (Reorder rules, Group/Sort rules etc.)
Add Action: Reboot
Add Feature: Request user confirmation to execute action (Show dialog to confirm action execution by user before executing, possibly adding countdown to dialog)
Add Feature/Action: Pause between actions in a composite action
Add Trigger: Recurring event (Execute action every defined time interval)
Add Feature: Create reverse rule (Create new rule with reverse trigger and action)
Add Trigger: Cell IDs (determine location by nearby cells)

On top of these features, there is a long list of more features that were already requested and will be considered for upcoming updates (Strikeout text means its already implemented) :
  • Add Trigger: Home screen launched
  • Add Trigger: New email received (specific subject/sender/...)
  • Use locale date and time format instead of fixed format
  • Add Action: Clear notifications
  • Add Trigger: Roaming active/inactive
  • Add Action: Switch 2G/3G (Is it even technically possible ???)
  • Add Action: Screen off/on
  • Add Action: Lock device
  • Add Action: Run shell script
  • Add Action: Custom action - allows plugins that will be developed by other developers to be activated by AutomateIt triggers
  • Add Feature: Add NOT operator for triggers (maybe just to selected triggers...)
  • Add Trigger: Above/Below Speed (using GPS)
  • UI: Improve the way sliders are displayed (for instance - on Set Volume Action settings)
  • Add Action: Toggle auto-answer
  • Add Action: Media play actions
  • Add Feature: Add to Calendar Trigger the ability to trigger some time before a calendar event starts/ends
  • Add Action: SMS Forwarding
  • Add Widget: Show rules list and select rule to execute
  • Have some basic rules pre-installed with AutomateIt
  • Add Feature: Set Sound Mode Action without changing the vibrate settings
  • Add Feature: Save location when rule is triggered (per rule and as a general setting)
  • Add Feature: Show popup setting per rule
  • Add Feature: Add "Call answered" state to Call State Trigger
  • Add Feature: Store favorite locations for Location trigger or use Google Maps favorites (or both...)
  • Add Trigger: Battery Drain - Triggers when battery level drops X% over defined time
  • Add Action: Save current location
  • Add Action: Toast message
  • Add Action: Flash Blink (rate, duration)
  • Add Feature: Integrate TTS for actions (Read last SMS, Say sentence etc..)
  • Add Trigger: Speakerphone turned on/off
  • Add Feature: Save action sets
  • Add Trigger: GPS State
  • Add Action: Change Input Method
  • Add Trigger: Signal level trigger (No signal, low, high...)
  • Add Action: Launch shortcut
  • Add Keyword: Current Time
  • Add Action: Auto-Answer incoming call (Including add to conference call option)
  • Add Feature: Add TTS to the Notification Action
  • Add Action: Mobile Hotspot
  • Add Trigger: Shake Device
  • Add Feature: Require password to change rules
  • Add Action: Execute widget/shortcut
  • Add Trigger: Headset Button Clicked
  • Add Trigger: NFC Trigger
  • Add Action: Take a picture
  • Add Trigger: HDMI connected
  • Add Feature: Add "Vehicle movement" state to sensor trigger for Accelerometer

Wednesday, July 27, 2011

TranslateIt - AutomateIt with your desired language

Visit our new website at

Well, it's a small world after all... Lots of users have been requesting to have AutomateIt support different languages (Spanish, Dutch, German, Hebrew, Polish, Russian...) and I would have gladly do it, but there is only one problem - I can't speak all of these languages...
That's where you come in - I thought of an open-source-style-translation-mechanism that will let you, AutomateIt users, participate in the process of translating AutomateIt to your desired language.

How will that work ????
basically I created a few Excel spreadsheets that has all of AutomateIt strings that needs translation and shared those spreadsheets via Google Docs sharing.

All you have to do is open the spreadsheet that has the translation to your language and start translating.

Sounds good ? Great.
BEFORE your start, There are a few guidelines and instructions I'd like you to follow:
  1. Don't use automatic translation tools such as Google Translate. The translation of these tools will most probably provide very poor translation for most cases.
  2. If you don't understand the meaning of a string, don't translate it. Leave it for someone else.
The translation spreadsheets have the following structure (Click on the image to enlarge):
  1. Column A [Category] - A general category used to identify where the string comes from so you'll have some context when translating the string. This column is for information only.
  2. Column B [Array Name] - Some strings are part of a list. In that case, Array name will show the name of the list (See example on rows 747-749 on the image above - list name is widget_config_action). This column is for information only.
  3. Column C [String Id] - The internal Id of the string used by AutomateIt.This column is for information only.
  4. Column D [String Text] - The English text to be translated. This column is for information only.
  5. Column E [String Params Description] Some strings are dynamically built by AutomateIt using pre-defined parameters. These parameters  are represented in the strings (Column D) as %1$s or similar strings (See example on rows 737-739). These parameters MUST be kept when translating to any language. Each parameter meaning is explained in column E. This column is for information only.
  6. Column F - Headers column. Nothing special here...
  7. Column G [Language Name] - This is the ONLY column you should update.
    • Row 1 - Shows the language name
    • Row 2 - Shows the language code
    • Row 3 - Shows statistics of the number of strings translated / Total number of strings
    • Row 4 - Shows statistics of the translated strings percentage out of the total strings
    • Row 5 - Shows the number of invalid strings (See explanation on Column H below)
    • Rows 6-... - This is where the translated text goes. You only need to translate the text from Column D.
  8. Column H [Is Valid] - To assist you with the translation process, and especially with the parameterized string, the "Is Valid" indication will be TRUE for all valid strings and FALSE for invalid strings (Invalid string is a parameterized string that one or more of its parameters is missing). Please make sure that you only enter valid strings since invalid strings will not be used and the original English text will be displayed. This column is for information only
Some strings have HTML tags or URLs embedded as part of the string. When translating those strings (See example on row 753) these tags and URLs MUST be included in the translated string.

Have you read ALL of the instructions ? If there's something that is still not clear, Don't start translating yet.
Since the translation files are shared and you are all able to edit them, please follow these instructions and don't change anything that you are not supposed to or you are not sure that you are supposed to.

Currently, There are spreadsheets ready for the following languages (click on the language name to go to the relevant spreadsheet):

The following table shows the current status of translation per language. Languages with over 90% translation progress are supported by AutomateIt or will be on next update: