Dindy For Android
This is the homepage of Dindy, an open source mobile application for the Android platform. In general, Dindy is an SMS auto reply (or auto respond) application with a twist – it allows urgent calls to get through by letting the caller decide whether the call is urgent or not. See the help text for more details.
Go to Dindy’s GitHub repository.
Dindy (DND) is useful when you are busy but still want urgent calls to come through.
For example, before going to sleep you start the “Night” profile. The first time a mobile contact calls or texts, Dindy silences the phone and sends an SMS reply automatically asking to call (or call again) if it’s important or urgent. If the same person calls, Dindy will make the phone ring to let you know a call requires your attention.
Other examples where Dindy is useful are in meetings (and the phone is set to vibrate on the second call) or while driving.
Per-profile settings allow you to customize Dindy’s behavior. Available settings are:
- Enable SMS reply-to-call: when disabled, Dindy works the same but SMS messages are not sent to callers.
- SMS message (callers): set the message to be sent to mobile phone callers.
- Enable SMS reply-to-SMS: when disabled, Dindy works the same but SMS messages are not sent to texters.
- SMS message (texters): set the message to be sent to known texters.
- First event (call or SMS): set whether the phone should ring, vibrate (or both) when a mobile contact calls or texts for the first time.
- Second event (second call or call after SMS): set whether the phone should ring, vibrate (or both) when a contact calls for the second time or calls after texting.
- Non-mobile caller: set how to treat calls that are in your contact list but are not listed as mobile. The choices are to use the first call settings, the second call settings, Dindy’s behavior for mobile contacts without an SMS reply or your regular call settings from before you started Dindy.
- Unknown caller: set how to treat calls from unknown callers (that are not in your contact list.) The choices are to use the first call settings, the second call settings, Dindy’s behavior for mobile contacts without an SMS reply or your regular call settings from before you started Dindy.
- Unknown texter: set how to treat text messages from unknown texters (that are not in your contact list.) The choices are to ignore the messages or use Dindy’s behavior for mobile contacts without an SMS reply.
- Time between events: set the timeframe between the first and second event during which a call is considered urgent. It is advised to let the person know this timeframe in the SMS replies you set. Available options are 5 minutes, 10 minutes, half an hour, one hour and until Dindy is stopped. For the latter option, Dindy will activate the second event notification for every contact that calls more than once until Dindy is stopped.
- Use time limit: check this option to be asked for a time limit every time the profile is started. The profile will stop automatically according to your setting. Time limit only works from the main screen or widgets. When started from a shortcut, a profile will start with no limit.
- Dindy will not send the automatic SMS reply message if the call was accepted or declined.
- Alarms will go off while Dindy is running even if it was set to silence the ringer (so, for example, you can set an alarm to wake you up even if the current profile silences the phone.)
Using Dindy shortcuts
A Dindy profile shortcut can be used to start and then stop the same profile. The “Stop Dindy” shortcut can be used to stop any running profile.
When using Dindy shortcuts in external applications, after deleting a profile or after uninstalling and reinstalling Dindy you must re-apply all of Dindy’s settings in these applications (upgrades are safe).
Important note to AppAlarm users: when using Dindy with AppAlarm, UNCHECK the “Force App Restart On Launch” option. Failing to do so will leave your phone silent!
Using Dindy in Locale
To correctly use Dindy in Locale add the “Stop Dindy” setting to each situation where you do NOT want to use Dindy, specifically the default situation.
For each situation where you want to use Dindy, add the desired Dindy profile setting.
After deleting a Dindy profile that is used in Locale you must change the Dindy setting in the relevant situations. If you uninstall and reinstall Dindy, you must re-apply all of Dindy’s settings in Locale (Dindy upgrades are safe).
Dindy was conceived and created by Amit Schreiber (aka gnobal). For support, comments, requests and bug reports please contact Amit at firstname.lastname@example.org. For more information about Dindy, visit Dindy’s page. Check periodically for Dindy updates on the Android App Market.
Copyright © 2011 Amit Schreiber
All Rights Reserved.
- Initial release
- Fixed an issue where rarely the SMS was sent later than expected
- Better wakelock granularity (keep the CPU working only for a few seconds, not a few minutes)
- Fixed a rare race which would cause Dindy to treat a third late call as a second call
- Only refresh settings if the currently active profile is edited, not on every edit (slightly faster UI)
- Show notification and status bar icon indicating that Dindy is running only after everything is actually started
- Fixed an issue where sometimes a second call was considered as first
- Code + user interface cleanups
- Added two new profiles to new installations: Away and Busy
- Speed improvement for the main screen
- Clicking the notification now shows the existing main screen instead of opening a new one
- Speed improvement for the main screen
- Use a little less memory
- Better app behavior
- Even more memory and speed improvements
- Introducing single profile widgets
- Locale plug-in added
- Shortcuts added
- Fixed an issue where a caller with a blank caller ID was not treated as unknown
- Added a profile option for known non-mobile numbers
- Added a time-limit option for profiles
- Fixed an issue where Dindy didn't function correctly alongside other programs that monitor incoming calls (like call recorders), mainly on older/slower devices
- Do not allow profile names with an apostrophe to avoid database errors
- Code cleanup and reorganization in preparation for future enhancements
- Added the option to treat non-mobile and unknown callers as if they were mobile (first+second call) without the SMS reply
- Minor category changes in profile preferences
- Added SMS reply-to-SMS (in perpetual beta until officially supported by Google)
- Include new Locale library and modify code accordingly
- Now requires at least Android 2.1 (sorry, old versions)
- Cope with the service being killed (by task managers or Android) and restarted
- Some users have been having trouble updating, so this is just a version bump to solve update issues
- Fix time limit, which stopped working after recent changes
- Run the service in the foreground to avoid being killed while operating
- Changes to widget due to ICS changes
- Now requires at least Android 4
- Visual refresh - change icons for now
Now that SMS is officially supported in the SDK (it only took Google around 5 years):
- Remove reply-to-SMS "perpetual beta" warning
- New profiles enable reply-to-SMS by default
- Support SMS messages in any language
- Support long SMS messages
Main screen, inactive state
Main screen, active state (also note the notification DND icon in the status bar)
Home screen single profile widgets with one of them active alongside profile shortcuts
Profile manager/select screen, where you either select a profile to use or edit/rename/delete an existing one
The profile editor screen, where you change the settings for a specific profile (not all settings shown in image)
Starting a profile that has time limit enabled shows a dialog where you may choose a duration or an end time for the profile
Using Dindy shortcuts in AppAlarm
Using Dindy in Locale