Profiles for Treo 600/650 (Simple Profile Manager) http://www.kwik.cz/palm/treo/profiles ------------ NOTE: This is a preliminary version of the guide. ------------ User & Installation Guide ------------------------- Version: 1.01 Date: Apr 19, 2005 Copyright 2003-2006 Milan Votava votava@mageo.cz Documentation assistance provided by Neil Smithline Email "profiles-support" at "smithline.net". Content: 1. What is the Simple Profile Manager 2. Installation 3. Deinstallation 4. Usage 4.1 Main Screen 4.2 Profiles Screen 4.3 Triggers Screen 4.4 Profile Switcher 4.5 Notifier 4.6 Preference Screen 4.7 About screen 5. Release Notes 5.1 Known Problems 5.2 Version History 6. FAQ 1. What is the Simple Profile Manager Using the Simple Profile Manager (Profiles) for Treo 600/650 you can setup and maintain a set of profiles. Selection of the profiles can be manually or automated based on specific triggers. The function is very similar to custom profiles available on more typical mobile phones. 2. Installation You can install Profiles (profiles.prc) as a normal Palm application using Hotsync manager or directly from the Internet using Blazer (or any other) Web browser. The installation installs the following files: profiles.prc - the application itself ProfilesDB.pdb - a database of all created profiles ProfilesTriggersDB.pdb - a database of all created triggers ------------ Important: Profiles is not a standard application and cannot be started from the launcher screen. You access its functionality via the "Profiles" tab of the Prefs application. ------------ 3. Deinstallation You should be able to remove Profiles as a normal Palm application. From the menu of the launcher screen choose the delete item and select Profiles as the application to be removed. All databases will be automatically removed together with the application. 4. Usage The general usage model is to first create profiles that specify the phone's settings. Typically multiple profiles will be created. You can then either access these profiles by manually selecting them or you can create triggers to automate the changing of profiles. 4.1 After you access Profiles from the Prefs application, the main screen is presented. By default this starts out listing all existing profiles (initially none). You can switch between a list of all available profiles and triggers by selecting one of the push buttons at the top of the screen. When the list of profiles is displayed, you can select an existing profile from the list and choose 'Set' to activate the profile, 'Edit' to modify the profile, 'Delete...' to delete the profile with a confirmation dialog or 'Duplicate' to make a copy of the profile. You can choose 'New' to add a new profile. The name of the currently active profile is displayed above the list of all defined profiles in boldface. When the lnist of triggers is displayed, you can select an existing trigger from the list and choose 'Edit' to modify the trigger or 'Delete...' to delete the trigger with a confirmation dialog. You can also choose 'New' to add a new trigger. From the application menu you can open Profile preference screen ('Preferences' menu item) or an about screen ('About' menu item) 4.2 Profiles Screen In this screen you can add a new profile or edit an existing one. You can specify the name of profile in the top left text field. Every profile must have a unique name. By default the profile will be named "untitled" but descriptive names such as "Loud" and "Silent" are recommended. On the right from the name you can choose preference settings you want edit for the current profile. For example, you can have one profile that affects the display and another that affects various sounds. Most of the options shown in the top right corner of the Prefs application are available: Display - The same settings as in the 'Display' panel of the Prefs application. Additionally you can set 'Light Mode' to normal or night settings. When 'night' is on, the Treo keyboard is always lit and the display is dimmed. This is good for profiles used when the phone is in a car or movie theater. General - The same settings as in the 'General' panel of the Prefs application. In addition you can change 'StayOnWhenPlugIn' property (when on, the Treo stays powered while charging), 'Mute' (Treo should be completely silent when on) and 'Alarm Sound' (The 3rd party agenda applications should respect this settings) Keyguard - The same settings as in the 'Keyguard' panel of the Prefs application. Phone - You should be able to change the GSM/CDMA radio state and your call forwarding policy for each profile here. The screen is very similar to the one you can get when you choose 'Call Preferences' from the Options of the 'Phone' application. Sound - The same settings as in the 'Sound' panel of the Prefs application. Profile - you can disable the notifier (see below) for this profile. Applications - See section 6.3 below for developers. Right to the preference list is a checkbox. When checked, the currently displayed profile preference settings (selected by the preference list) will overwrite the system ones when the current profile is set. When off, these settings are ignored and related system settings are preserved. This is useful when you don't want to switch among complete sets of system preferences but just among limited sets. For example, you can have profiles called "Loud" and "Silent" that only affect the sounds and ones called "Bright" and "Dim" that only affect the display. Then you can select any pair of these to have Loud and Dim, Soft and Dim, Soft and Bright, and Loud and Bright options. The menu on the Profile page allows you to copy the current Treo system settings to the profile being edited/added via the 'Copy Prefs' selection. 4.3 Triggers Screen In this screen you can add a new trigger or edit an existing one. By default no triggers exist. Each trigger consists of an event which fires the trigger and an action (profile switch) to be performed. You change the component to be edited using the 'Event' and 'Action' push buttons at the top center part of the screen. While editing 'Event', the event which fires the trigger has to be specified: PluggedIn - the event is posted when Treo is put on a charger. PluggedOut - the event is posted when Treo is taken off from a charger. TimeOfDay - the event is posted in a certain time of day. To define this event you need to specify the time of day and day(s) of week when the event will be generated. The event is generated on each day chosen in the 'Repeat on' control. DateBk - the event is posted when a defined DateBk appointment is scheduled. To define this event you need to define a 'Pattern'. Every appointment having the string as substring of its description fires this trigger at the time defined in the appointment. If you specify an empty 'Pattern', every appointment description matches. Be careful with the matching. If your pattern is simply "meet" then this will match "meeting" and "Meet the plumber". The longer the length of 'Pattern', the less likely a false match is to occur. While editing an 'Action', the action is performed when the specified trigger is fired: SetProfile - a specified profile ('Profile' dropdown list) is activated when the related event has occurred in the system. You can define if Profiles switches back to previous profile using 'Switch back' selector: Never - the profile specified as a part of the action is simply activated over the previous one. After - the profile specified as a part of the action is activated and the previous profile is remembered in memory. After the timeout specified on the next line (either 'Minutes' or 'Hours' as a time unit) occurs, the remembered profile is restored. ??? Did I get pluggedin and pluggedout correct - Neil ??? When PluggedIn - When the device is plugged-in the profile specified as a part of the action is activated and the previous profile is remembered in memory. When the device is unplugged the remembered profile is restored. When PluggedOut - When the device is unplugged the profile specified as a part of the action is activated and the previous profile is remembered in memory. When the device is plugged-in the remembered profile is restored. When EndOfAppt - When the specified appointment begins, the profile specified as a part of the action is activated and the previous profile is remembered in memory. When the current appointment ends the remembered profile is restored. This action is only available when the 'DateBk' event has been selected. 4.4 Profile Switcher The most convenient way to switch profiles is to open the profile switcher. By default this is the Option key. Pressing and holding the Option key (or the Menu key if selected) displays a small panel that has all the names of the profile. you see the name of the currently active profile. Below is a list of all defined profiles from which you can choose using either the Treo's 5-way rocker or touch screen. If you select with the rocker you must press the center button to make your selection have effect. If you do not press the center button the profile will not be changed. You can temporarily set a profile by selecting a profile with the 5-way rocker and then entering a time with the 0-9 keys and then pressing the center button to make it effective. If you do not press the center button the profile will not be changed. By default this time will be in minutes but can be switched to hours using the toggle to the right of the time or the 'M' and 'H' keys. After the specified time has elapsed the previous profile will become active again. If you wish to disable automated profile switching you can uncheck the 'S' checkbox in the bottom right corner or pressing the 'S' key. Automatic triggers will not work until you re-enable the scheduler. You can go to the Profile Prefs tab by pressing the Menu key while in the profile switcher. After a few seconds of inactivity the switcher is switched off automatically. 4.5 Notifier Every time the phone is powered on, a small window showing the currently activated profile, current time and date appears for a brief time. The notifier will also appear each time the current profile is changed using defined triggers. You can turn the notifier off in Profiles preferences. 4.6 Preference Screen On this screen you can change several options: 'Enable active profile notifier' - you can turn on/off the profile notifier. This can also be set in the Profile Switcher with the 'S' checkbox. 'Switcher activated by:' - you can choose the key which opens the profile switcher. When all checkboxes are off, the switcher is disabled. 4.7 About screen Every application should have such a screen. Not really useful... Except you can check the version of Profiles installed here. 5. FAQ Q: After I installed Profiles application I can't find it anywhere on my phone. A: Start the 'Prefs' application and choose 'Profiles' from the drop down menu in the top right corner... Q: How can I define a 'Pattern' matching all appointments in the Datebook application when creating a Trigger with 'DateBk' as an event? A: Leave the 'Pattern' field empty... 6. Release Notes 6.1 Known Problems - the call forwarding option doesn't work for everyone. - when a profile is deleted the related triggers should be removed too. 6.2 Version History Apr 19, 2005: 1.01 - a bug fix release Apr 15, 2005: 1.00 - a bug fix release Apr 7, 2005: 0.32 - current time and date added to the notifier - several bugs (hopefully) fixed Apr 5, 2005: 0.31 - Phone panel: GSM/CDMA radio switch added Apr 2, 2005: 0.30 - a bug fix release Apr 1, 2005: 0.29 - 'menu' key opens profiles setup panel when pressed in the profile switcher - problem with screen update when notifier closed fixed (text drawn in bold instead in standard font) - Treo 650: added support for Treo 650 specific color themes - Treo 650: Messaging alerts settings preserved during profile switching - Treo 650: side button (press&hold) can be used to open the profile switcher Mar 29, 2005: 0.28 - Treo 650: Night LightMode setting fixed - Treo 650: DateBk trigger fixed - Treo 650: speed optimization Feb 16, 2005: 0.27 - experimental Treo 650 support Oct 22, 2004: 0.26 - a bug fix release Oct 21, 2004: 0.25 - reset loop protection added - Profiles app can be disabled in preferences form Oct 19, 2004: 0.24 - a bug fix release (Power Off After, Call forwarding) Oct 11, 2004: 0.23 - a bug fix release Oct 10, 2004: 0.22 - a new calendar driven trigger added - an option to disable the integrated profile scheduler added Oct 05, 2004: 0.21 - a bug fix release Oct 05, 2004: 0.20 - a full fledged multi level profile scheduler implemented - an interface to external applications implemented Sep 12, 2004: 0.19 - timed profiles added - triggers added - simple txt user guide added Feb 25, 2004: 0.18 - no new features, maintenance (bug fixing) realease only. From now on I'm moving Profiles to PalmGear.com (http://www.palmgear.com/index.cfm?f...re&prodid=55044). Feb 6, 2004: 0.17 - General/Colors popup added (Color theme support). - Display/Light mode popup added. Feb 2, 2004: 0.16 - CDMA call forwarding fixed - Beam Receive fixed Jan 27, 2004: 0.15 - CDMA call forwarding fixes - Stay On When Powered implemented - other fixes Jan 23, 2004: 0.14 - an attempt to make mute option working Jan 17, 2004: 0.13 - stupid bug crashing the Treo after pressing down the switcher launch key fixed. Jan 17, 2004: 0.12 - minor bugs fixed - yet another attempt to make Profiles notifier compatible with other apps (Megaclock, ...) Jan 13, 2004: 0.11 - Notifier bug (maybe) fixed Jan 12, 2004: 0.10 - major bug fixed Jan 11, 2004: 0.09 - every profile component (Display, Sound...) might be enabled/disabled within the profile to preserve the current settings for this component. Jan 10, 2004: 0.08 !EXPERIMENTAL! - 'Mute' option added to 'General' profile panel. You should be able to mute Treo completely now :-) - A new panel called 'Phone' has been added. You can configure a different call forwarding option for each profile now. There are three new options there. First one, 'Manage call forwarding', if enabled, will try to change your phones 'Forward all calls' option to the one specified in the profile. This operation is VERY slow (your phone has to negotiate with your network provider to set this up), thats why this switch is provided there for those of us who are not interested in this.. :-) Then there is a checkbox called 'Forward all calls'. If you set this option to 'Don't forward calls', your calls won't be redirected anywhere, if you set it to 'Forward calls to the number...', then you have to specify a number below, where all calls will be redirected to. I can't guarantee it's working right now, there some differencies between GSM and CDMA (I have GSM only), so consider this option as a experimental one, but give it a try :-) There is another important fact, after you switch between profiles with different call forwarding setup, the phone still shows in 'Options/Call Preferences' the old call forwarding setiup. You have to tap 'Get Status' to see an actual settings... - A new panel called 'Profile' has been added. Right now, the only thing you can do there, is to disable the profile notifier for the current profile. I don't know why but some of you required this :-) Other options (timed profile etc) should appear there soon. - The Profiles application will try to upgrade its profile database to the latest version. If there is any problem with the app after hotsync or so, please delete the previous version (including your profiles of course) and install the latest one after the deletion. Jan 1, 2004: 0.07 - Alarm sound added to 'General' preference panel - several bug fixes Dec 30, 2003: 0.06 - various bug fixes Dec 28, 2003: 0.05 - active profile notifier implemented - experimental - Preference panel added to the Profiles menu Dec 25, 2003: 0.04 - The application reworked to be a part of the system preference - Pressing & holding down the option button pops up/down a simple profile switcher Dec 19, 2003: 0.03 - User Interface cleanup according to Palm UI guidelines Dec 17, 2003: 0.02 - integrated preference editor - additional preferences supported (Display, General, Keyguard) Dec ?, 2003: 0.01 - initial release, Sound preference supported 6.3 Application Integration Applications - (!!! for integration experts only !!! you can set up which applications are being 'notified' when profiles are being switched. You can configure at most three different applications to be notified when a new profile is going to be activated. For an application to be notified you have to check the related checkbox, select the name of an the application (currently only 'appl' and 'panl' types are offered) and specify a launch command to be sent to the application upon its call. Optionally you can specify a 15 characters long data sent to the application when invoke. // info for developers during a profile switch Profiles calls: Err SysAppLaunch (UInt16 cardNo, LocalID dbID, UInt16 launchFlags, UInt16 cmd, MemPtr cmdPBP, UInt32 *resultP) on each of defined applications with: - 'cmd' equal to a numeric value specified in the 'C:' (Command) field in 'Appliactions' panel. - 'cmdPBP' pointing to the following 'C' structure: typedef struct { char *data; UInt16 profileVer; ProfileRecType *profile; } ProfileExtAppData; where: - 'data' points to a (optional, max 15 characters) string specified in the 'D:' (Data) field. - 'profileVer' contains the actual version of the Profiles database (More information upon an e-mail request). - 'profile' points to a 'C' internal opaque structure representing an actualy selected profile (More information upon an e-mail request).