Updating Events

Top  Previous  Next

Events can be edited using the Event Editor and then copied to the iPad using either a web site or via Dropbox. The same interface for updating events is presented to the user for both options:

 

events screen run or update

 

Tap on "Refresh list" to update the list of events available to the iPad. This will download the events.xml file containing a list of events and an event_info.xml for each event containing more detailed information about each event. Tapping "Refresh list" does not update any events: it only updates the list of available events.

 

Tap on "Update all events" to refresh the list of events and update each event. Alternatively left swipe on an event in the list and select "Update" to update just that event.

 

An event can also be updated while it is running by creating a "Sync event" touchscreen action.

 

Updating via Dropbox

Events can be updated via Dropbox. This provides a convenient and secure way to update events without requiring a website. It can also save time when editing events because the event information is available to downloaded to the iPad as soon as it is saved on the apps' Dropbox folder on the PC.

 

For a simple introduction see this blog post.

 

In order to use Dropbox to hold events you need to sign into DropBox from the app settings screen. When you tap "Sign in to Dropbox" the official Dropbox app will open on the iPad and ask you whether you want to allow Breeze Booth to access the folder Apps/Breeze Booth in your Dropbox account. Tap "Allow" to allow Breeze Booth to access this folder.

Please note: Breeze Booth will only be allowed to access files within the Apps/Breeze Booth folder in your Dropbox account. It will not be able to access any other files in your Dropbox account.

 

An error message will be displayed ff the official Dropbox app is not installed on the iPad when you tap "Sign in to Dropbox".

Tap "Sign out of Dropbox" to sign out of Dropbox if access is no longer required.

 

Security

Once signed in to Dropbox Breeze Booth will be able to access the Apps/Breeze Booth folder in your Dropbox account until you sign out of Dropbox from the app settings screen or you revoke the app's access from your Dropbox account.

Please either sign out of Dropbox from the Dropbox app or uninstall the Dropbox app after signing in from Breeze Booth. This will ensure that unauthorized people will not be able to access your Dropbox account if they get hold of the iPad. Breeze Booth will still be able to access the Apps/Breeze Booth folder even you have signed out from the official Dropbox app or it has been uninstalled.

 

After signing in to Dropbox from Breeze Booth a folder named Apps/Breeze Booth will be created in your Dropbox account. Create a subfolder named 'events' in this folder and then copy the events.xml file and the event subfolders into the events folder. It should look something like this:

 

dropbox

 

WARNING: Do not delete the Apps/Breeze Booth folder in Dropbox. If you do delete this Dropbox will assume that you have revoked Breeze Booth's permission to access Dropbox and none of your iPad's will be able to access it. If you do accidentally delete the Apps/Breeze Booth folder you need to sign out of Dropbox by tapping on "Sign out of Dropbox" in the app settings screen in Breeze Booth and then sign back in again. Dropbox will ask you again whether you want to allow Breeze Booth to access the folder Apps/Breeze Booth in your Dropbox account. Tap "Allow" and Dropbox will create the Apps/Breeze Booth folder and you can copy the files back into it.

 

IMPORTANT NOTE: Free Dropbox accounts impose rate limits on the number of files that can be synced in a given time and may not be suitable for hosting iPad events. If you get errors like the one below you may need to switch to a paid Dropbox account.

 

dropbox_rate_error

 

 

Updating Events from a Website

There are two methods of updating events from a website:

1.The default option which is to simply get each file directly from the website using an HTTPS GET. All you need to do to use this option is to upload the event files to a folder on your website and then enter the URL of the folder in the "Events sync server" field of the app settings.
 
2.For more secure hosting of events select the "Use HTTPS POST when syncing" option in the app settings and set a password. For this to work you will need a suitable server side script to accept the request and check the password before returning the file. The POST request is sent with the following JSON encoded parameters:
{
       "request": "download",
       "password": "<password>",
       "id": "<ipad_id>",
       "name": "<ipad_name>",
       "model": "<ipad_model>",
       "Filename": "<relative_pathname>"
}
Where:
<ipad_id> is the ID of the iPad which is displayed at the bottom of the app settings screen
<ipad_name> is the name of the iPad as defined in the iPad's settings under General->About
<ipad_model> is information about the iPad model
<relative_pathname>" is the relative pathname of the file to be downloaded

 

Please note: Only secure websites with SSL certificates can be used i.e. websites with URLs starting with https:// not http://

 

Event Files

A set of events consists of an events.xml file and one or more subfolders containing the files for each event. The events.xml file contains a list of events with their title, a short description and a link to the events' event_info.xml file. When the event list is refreshed the events.xml file is downloaded to the iPad and any old events that are on the iPad but not in the events.xml file are deleted.

 

An event's event_info.xml file includes a list of profiles for that event and a list of manifest files. The profile files contain details of the settings for different options for an event (e.g. the number of photos, print layout, email text etc.). A manifest.xml file is simply a list of files required for that event together with a checksum. When an event is updated the event_info.xml file for that event is downloaded to obtain a list of the manifest.xml files for that event. Each manifest.xml is then downloaded and the listed files are compared with the files already on the iPad. If a file is not on the iPad or has a different checksum from the one in the manifest the file is downloaded to the iPad. Any files that are on the iPad but are not in the manifest will be deleted.

 

The event related files on the iPad can be viewed using the iOS Files app by browsing "On my iPad" and selecting "Breeze Booth" then the "assets" folder.

 

Advanced Usage

Tokens can be used to automatically modify the events that are updated on an iPad. For example you may wish to make different sets of events available to different users. This can be done using the {user_name} or {user_id} tokens. The {user_name} token returns the username when the user the iPad is logged in and {user_id} returns the user Id.

 

When updating events from a website add the token to the URL e.g. change https://acmephotobooth.com/sync to https://acmephotobooth.com/sync/{user_name}

Then create a subfolder of the sync folder on your website, give it the same name as the user name and copy the events.xml file and event folders into it.

 

When updating events via Dropbox set the Dropbox prefix in the app settings screen to {user_name}.

Then create a subfolder of the Apps/Breeze Booth/events folder in your Dropbox account, give it the same name as the user name and copy the events.xml file and event folders into it.

 

For example suppose you run corporate events and social events and wish to keep them separate. You could do this by creating two users e.g. breeze_corporate and breeze_social. Then append {user_name} to the events sync server URL in the app settings screen (e.g. https://acmephotobooth.com/sync/{user_name}) or set the Dropbox prefix to {user_name}. Now when the iPad is logged in as the user "breeze_corporate" it will update the events from https://acmephotobooth.com/sync/breeze_corporate when updating from a website or from the Apps/Breeze Booth/events/breeze_corporate folder when using Dropbox. If the iPad is logged out and then logs back in again as "breeze_social" it will update the events from https://acmephotobooth.com/sync/breeze_social when updating from a website or from the Apps/Breeze Booth/events/breeze_social folder when using Dropbox.

 

Updating the App Settings

The settings in the app settings screen are saved in a file named settings.xml in the Breeze Booth folder on the iPad. Some or all of these settings can be updated when "Update all events" is tapped in the events screen by placing a file named device_settings.xml in the same folder as the events.xml on the update website or in the Dropbox events folder. When "Update all events" is tapped the iPad will update its app settings using the information in the device_settings.xml file if it is available.

 

The device_settings.xml file can be edited so that only a few settings are changed on the iPad. For example suppose you want to update the event name on the iPad and leave all the other settings the same. This could be done by editing the device_settings.xml file so that it is something like this:

 

<?xml version="1.0" encoding="utf-8" standalone="no"?>

<breeze_booth version="1.0" build="23">

       <device_settings>

               <getEventStringsFromBreezeHub>false</getEventStringsFromBreezeHub>

               <localEventName>New Event Name</localEventName>

       </device_settings>

</breeze_booth>

 

Please use this feature with care otherwise updating all events may result in unexpected changes to the app settings.