
contactspresets
Contacts with Presets a.k.a Contacts Extended.
For the most current version of documentation see http://sxjthefirst.blogspot.com/2008/04/contacts-extended.html
Introduction: Contacts Extended is an extension of the typical contacts application that’s ships in almost all mobile phones. This application runs on the Android platform. It provides the functionality of the usual contacts applications plus a few “extended” features.
This application is a proof of concept and many features are yet to be implemented. Please refer TODO section for future enhancements. Details:
The following actions are supported by Contacts Extended. Features similar to the existing Contacts application:
Maintain Contacts: CRUD features for storing and retrieving contacts. The UI for CRUD is implemented as a menu in the main Contacts Extended screen as seen in the image below. The menu options are self-explantory.
Making Calls: To make a call
Select the contact to call or scroll to the contact and select View XC. This will take you to the Contact View screen.
Select the number (Home or Mobile) to call or move to the number and select Call from the menu.
New Features: Autofilter contacts: In the textbox in the top of the main screen the user can type in a few characters of the contact he is searching for. This will trim the list of contacts to only those names matching the characters typed. In the image below, for example, only names beginning with “Ma” are shown.
To show all contacts again delete the characters typed in the textbox.
Contact Presets: This new feature allows the user to specify certain actions that the application must take before calling a user. Currently three actions are supported (Action Names and Values are case-sensitive. The first two actions will be most useful for those making conference calls which usually mean putting the phone on speaker mode and interacting with a voice system.
Action Allowed values Speaker true/false IVS post-dial string Timeout Number of minutes
Speaker instructs the phone to automatically set speaker mode on (true) or off(false) when calling the contact.
IVS sets a post-dial string to be called during the call. If the user separates multiple strings with the locale’s WAIT character it will dial multiple post dial strings. (The PhoneNumberUtils.WAIT static variable defines this character in Android.)
Timeout can be set to notify the user every N minutes with a message. This will help the user decide if he wants to continue with the call or hang-up.
Caveats: The application wherever possible tries to call the existing functionality of the phone instead of trying to build it’s own. As a result the following actions will not be currently possible:
Text Messaging: The code will try to call Android’s SMS editor. This is not present in as of SDK version m5 so user will get a message indicating it’s not supported.
Email: The code will try to call Android’s email program. This is not present in as of SDK version m5 so user will get a message indicating it’s not supported.
Video Call: The code will try to call Android’s default multimedia functionality. This is not present in as of SDK version m5 so user will get a message indicating it’s not supported.
Multimedia Messaging: The code will try to call Android’s MMS editor. This is not present in as of SDK version m5 so user will get a message indicating it’s not supported.
TODO:
This application is proof of concept the following enhancements will make it much more friendly.
Contact Image: Right now a default image is displayed for each contact. The database and code need to be modified to allow the user to set a different image for each contact.
More Actions: In addition to the three default actions many more can be added. Built in actions need to be shown as a list instead of being typed in.
User defined actions: The user should be able to specify a custom action or application to be called during/before/after call.
Project Information
- License: Apache License 2.0
- 3 stars
- svn-based source control
Labels:
Android
Contacts
ContactsExtended
Mobile
Application