Safe Arrival User Guide

traveler.png9.49 KB
status_armed.png4.38 KB
status_arrived.png4.04 KB

This page provides a detailed description of setting up an event and of the transitions an event goes through.  An event is always created by the "worrier", the person that, without this application, would be waiting up for the arrival of the "traveler", who is the person making the trip or outing.  The worrier must have the Safe Arrival application installed on their phone.  If the traveler also has the application installed, they can see all the event details (except any password) and use the application to indicate that they've arrived.  If the traveler doesn't have the application installed, they will receive a text message at the earliest time they can turn off the worrier's alarm.  They send a text message starting with the word "SafeArrival" from their phone to the worrier's phone to say they've arrived.

Creating an event

worrier icontraveler icon

The worrier creates an event by pressing the Create New Event button at the bottom of the screen that normally shows the list of events that have been created.  Once they have created the event, which includes choosing the person to be the traveler, they are asked if the traveler has the Safe Arrival application installed on their phone.  If they do, the details of the event are immediately sent to the Safe Arrival application on the traveler's phone, where the new event appears in the traveler's list.  On the worrier's phone, the event displays an icon of a house to indicate this is the worrier, who normally waits at home.  In the traveler's list, the event displays an icon of a globe to indicate this person is traveling.

A smaller icon will overlay the house or globe icon, unless the event is disabled, to indicate its status.  This will be described later.

The worrier supplies the following settings for an event, many of which can be left with their default values:

  1. An optional name for the event.  If you create more than one event, you'll want to name them, otherwise when you get a notification, it will be difficult to tell which event it's for.
  2. A flag indicating whether or not the event is enabled.  This is labeled "Turn on alarm".  If you create an event, but don't actually want it to be active, disable it by unchecking this checkbox.
  3. The time of day the alarm should sound.  This defaults to 11:00 PM, but the default can be changed in the worrier settings (press menu, then Settings, then Worrier Settings).
  4. The days of the week the alarm should automatically repeat.  If no days are chosen, the alarm doesn't repeat.  When enabled, the alarm will sound the next time the selected time-of-day arrives, which will be either the same day or the next day.  Once the alarm sounds, the event will be automatically disabled.  You can reenable it to activate the alarm again at any time.  If you choose one or more days of the week for the alarm to repeat, it will sound again at the selected time of day on each of those days, unless turned off by the traveler on each occurrence.
  5. A window of time for turning off the alarm, expressed in hours.  It defaults to 6 hours, but the default can be changed in the worrier settings.  If you select 6 hours, for example, then 6 hours before the alarm is due to sound the event is considered to be "under way".  Any time between then and when the alarm is due to sound the traveler can turn it off.  You might think of this window as representing the beginning of the trip, but it doesn't have to.  Really, it's the earliest time that it's likely the traveler will really arrive home, or complete their trip.
  6. Who will turn off the alarm.  This is the traveler.  Enter a phone number, a name from your contacts list, or press the button to the right of the input area to choose a contact from your contacts list.  This must be a phone number to which text messages (aka SMS messages) can be sent.  Even if you let all the other fields default, you must choose a traveler to complete defining the event.
  7. The sound the alarm should make when it sounds.  Select from among the sounds available on your phone.  Note that the alarm volume is controlled by a system-wide alarm volume setting that is independent of the ringer or notification volume.  You can adjust the alarm volume using an external program or in the worrier settings (press menu, then Settings, then Worrier Settings).  This alarm sound is used only when the worrier isn't "waiting up".  If the worrier is waiting up, a normal notification is raised.  The sound used for normal notifications raised by the application are controlled by a setting (press menu, then Settings, then Notification Settings).
  8. Whether or not the phone should vibrate when the alarm rings.

The Lifecycle of an Event

scheduled iconWhen an event is disabled, it stays that way until you enable it.  When it's first enabled, it's put in the Scheduled state, meaning that Safe Arrival has figured out when the alarm should sound, and when the start of the window for turning off the alarm is.  An image of a clock is shown on the event summary screen for events in the Scheduled state. armed icon

When the beginning of the window for turning off the alarm occurs, the event is put in the Under Way state, and an ongoing notification icon is silently placed on the status bar.  If the traveler is using the Safe Arrival application too, the same thing happens on their phone.  If not, the Safe Arrival application on the worrier's phone will send a text message to the traveler telling them that they now have the opportunity to turn off the worrier's alarm.  An image of a flag is shown on the event summary screen for events in the Under Way state.

If the traveler still hasn't turned off the alarm when there's only 10 minutes left before the alarm would sound, the traveler is reminded that they should turn off the alarm if they've actually arrived.  If the traveler is using the application, they are reminded by way of a notification raised by the application on their phone.  If not, the Safe Arrival application on the worrier's phone will send a text message to the traveler to remind them.  The reminder lead time defaults to 10 minutes, but can be customized in the traveler's settings (press menu, then Settings, then Traveler Settings).

failed icon

If the time of the alarm occurs without the traveler having turned it off, the event is set to the Failed to Arrive state.  On the worrier's phone, the alarm sounds as an insistent notification.  This is just like a normal notification except that the audio repeats until you draw down the notifications pane.  If you are sleeping, therefore, you'll need to turn on the phone's screen, swipe to unlock the phone, then draw down the notification pane to stop the audio. (As an aside, we're interested in feedback on whether this alarm mechanism is sufficient, or if it should be upgraded to one that turns on the phone's screen automatically and replaces what's on the screen presently with an alarm screen, which would allow the alarm to be silenced by touching anywhere on the screen.)  If the worrier indicated in their settings that they are waiting up, then instead of using an insistent notification, a regular notification will be raised.  To indicate that you are waiting up, press menu, then Settings, then Worrier Settings, then touch the Waiting Up checkbox, which is the first setting.

On the traveler's phone, if they are using the application, a notification is raised to tell them they didn't arrive before the expected time and that the worrier's alarm has sounded.

An image of an exclamation mark inside a yellow triangle is shown on the event summary screen for events in the Failed to Arrived state.

arrived icon

If the traveler declares that they've arrived before the alarm is due to sound, the event is set to the Arrived state.  A silent notification is raised to tell this to the worrier.  It's silent because the worrier is presumed to be sleeping and doesn't want to be woken up for this event.  If the worrier said they are waiting up, however, the notification is not silent, so that the worrier can learn as soon as possible that their loved one is safe.  Any message the traveler included will be shown in the notification, and also in the event details.  An image of a check mark is shown on the event summary screen for events in the Arrived state.

If the event is repeating, the status will be set back to Scheduled two hours before the start of the next window for disabling the alarm.  You can force this to occur earlier at any time by touching the yellow header of the details screen to reset the status.

How the Traveler Declares Arrival

If the traveler is using the Safe Arrival application, they declare that they've arrived using any of the following means:

  • Draw down the notification pane and touch the ongoing icon for Safe Arrival.  This takes you to the screen that shows you the details of the event, or if there are more than one events under way, to the screen that lists all the events.  Then do one of the following.
  • On the screen that shows the list of events, touch the item for the event under way.  Normally this touch will go to a screen that shows the details of the event, but when the event is underway, a menu is offered instead to list the most common things to do.  At the top is Declare Arrival.  Touch this to open a dialog that you use to declare arrival.  If no password is configured, press OK after entering any message you want conveyed silently to the worrier (so as not to wake them up).  Entering a message is optional.  If a password is configured, enter it in the field provided.  The capitalization of the password is not important.  When focus leaves the input field, the text will turn green if the password is correct, and red if it isn't.  You'll have to enter the correct password to turn off the worrier's alarm.
  • If you are viewing the details of the event, perhaps because you touched the ongoing icon which opened that screen, touch the yellow area at the top to open the Declare Arrival dialog or press menu and select Declare Arrival.
  • If you are viewing the application's notification list, perhaps because you got a reminder notification, then touch the notification to get prompted with a list of common things to do, starting with Declare Arrival.

If the traveler is not using the application, they declare that they've arrived by sending a text message to the worrier's phone starting with the word "SafeArrival".  The capitalization of this word is not important, but it's important that there are no blanks in the word.  Only messages that start with "SafeArrival" are intercepted by the Safe Arrival application.  If you mispell this word, the regular Messaging application on the worrier's phone will process the message and raise a notification, which would probably wake up the worrier, which of course we're trying to avoid.  Any other text in the message is presented to the worrier as arrival information, in the same manner as if a message were entered into the Declare Arrival dialog on the phone of a traveler that has the application installed.  If the event requires a password to disable the alarm, include it in the text message.  The capitalization and position of the password in the message is not important, but it must appear someplace.  It too will be removed from the message before presenting it to the worrier.  If you successfully turned off the worrier's alarm, you'll receive a text message confirming this.  If a password is required but it didn't appear in the message, you'll receive a text message saying that.  If you don't receive any response at all from the Safe Arrival application on the worrier's phone, then you probably made a typo in the "SafeArrival" word.  Try again.

Time Zone Differences

It's not necessary for the worrier and the traveler to be in the same time zone, or to remain in the time zone they were in when the alarm was scheduled.  When the worrier creates an event, the time zone in effect for the phone at that moment is remembered with the time of the alarm.  The actual time of the alarm is always calculated relative to that time zone.  For example, if the worrier is in the eastern time zone of the United States and schedules an alarm for 11:00 PM, then travels west to the central time zone, the event summary screen will now show 10:00 PM as the scheduled time of the alarm.  The design principle is that the absolute time of the alarm doesn't change with movement, because such movements are assumed to be transient in nature, and the alarm time should always be the same instant for the worrier and the traveler, no matter what their local clocks say.  If you as a worrier permanently move time zones and you have a repeating alarm that you wish to use the new time zone, simply edit the time.  If your original 11:00 PM alarm now says 10:00 PM, simply edit the time to say 11:00 PM again and save it.

The same principle apples to time zone differences between the worrier and the traveler.  If a worrier creates an alarm for 11:00 PM in the eastern time zone and shares the event with a traveler in the central time zone, on the traveler's phone the event time will be listed as 10:00 PM.  If the traveler changes time zones, the displayed time will continue to adjust and be displayed relative to their current time zone, but the absolute time of the alarm won't change.  It's important that this be the case in order to allow a worrier to set an alarm for a traveler that is making a trip across time zones.

If the traveler doesn't use the Safe Arrival application, then text messages are sent from the worrier's phone to the traveler's phone to tell them when the event is under way.  Times in the messages are given relative to the worrier's time zone, since the time zone of the traveler is not known in that case.  If you know that your traveler is in a different time zone, then you might want to enable the worrier setting that includes the time zone abbreviation on times sent in text messages to travelers (press menu, then Settings, then Worrier Settings).  This should help to reduce any confusion with regard to the times.

Deleting an Event

To delete an event, simply long press on the event in the event summary screen and select Delete Event from the context menu, or view the event details, then select the Delete Event menu item.  If the traveler has the Safe Arrival application installed on their phone, the event will disappear from their list.  If not, and the event is under way, they will be sent a text message saying the event has been deleted.

Repeating Events with a Password

If a worrier creates a repeating event that requires the traveler to have a password to turn it off, the worrier should change the password for each occurrence of the alarm, otherwise the traveler will use the old password to turn off the alarm, which undermines the requirement that they actually be at home in order to turn off the alarm.  To make this task a bit easier, Safe Arrival will raise a notification for the worrier two hours before the next time an alarm is due to sound if the password hasn't been changed since the last time the event was under way.  You can either wait for this notification or change the password yourself at any time.

Editing Traveler Capabilities

The first time a worrier selects a particular traveler for an event, they are prompted to indicate if the traveler has the Safe Arrival application installed on their phone.  Since you are only prompted once per traveler, what do you do if the traveler changes whether or not Safe Arrival is installed?  To change the remembered information about each traveler, press menu, then Settings, then Miscellaneous, then "Show and Edit Peers".  Entries that have a check mark are phones that are believed to have the Safe Arrival application installed.  Simply touch the checkbox for a particular peer to indicate whether they have Safe Arrival installed or not.  Alternatively touch the name or phone number and you will be prompted to select an action.

The Event History

If you ever want to look back on the recent activity for your events, select menu, then Event History.  You'll be shown a list of recent actions and events.  Items older than 6 months old will be automatically deleted from this list.  Also, only the most recent 100 items are retained.  You can clear the event history if you like by selecting menu, then Erase History.

Convenient Calling or Text Messaging

Menu items and context menu items are provided in a number of places in the Safe Arrival application to make it easy for a worrier to call a traveler on the phone or to send them a text message.  If the traveler has the Safe Arrival application installed on their phone, they can use the same menu items to call or send a message to the worrier.  Long press on an event item on the event summary screen to get a list of context-menu items.  Included there are Send Message and Call.  If you're viewing the event details, press menu to see the same choices.  Similar menu items are available on the notifications screen and from the menu a traveler gets if they touch an event that is underway in their event summary screen.

Background Operation

Some users believe that seeing an application in the list of running applications when they're not actually interacting with the application is a bad thing.  They are often encouraged to use a task killer application to kill such processes.  This can occasionally be useful if an application is truly misbehaving, but in general, this is not necessary.  The Android framework will end a process that is not visible and not doing anything useful when it needs the memory; otherwise it leaves the process around in case the user opens it again, so that it is as responsive as possible.

More importantly, only the Android framework really has the information necessary to know if the process is doing anything useful.  If the process is in the middle of handling an alarm or some other system event, for example, the Android framework knows that is not a good time to terminate the process.  A person using a task killer application doesn't have the same insight.  If you kill the Safe Arrival process, for example, because you see it in the list of running processes when you're not interacting with it, you might kill it while it's handling an alarm event or an incoming text message.  The Safe Arrival application also processes time changes and time zone changes, for example, and if you kill it when it's processing one of those events, it may not operate correctly.

Rest assured, however, that the Safe Arrival application performs no long-running background processing.  When it does process a system event, it does so very quickly using a minimum of system resources.  If the Android framework chooses leave the process around after that, it must not need the memory at the moment, so there is no need to manually kill it.  Furthermore, as discussed above, if you're unlucky enough to kill it while it is performing some short-running, but important, background processing, the application may not behave as expected after that.  For example, alarms might not sound when you wish, and notifications of a traveler having arriving might not occur.