Status: Available Scope: Loop Messenger & OnDemand Platform
Background
The Loop Messenger Web Channel can be delivered to guests (inside an app or directly) containing URL parameters. If a Conversation is started, the additional Contact, Stay, Conversation and other details appear in the Contact Profile to give Team Members additional information on the Contact, thereby allowing them to provide better service.
When guest and stay information is provided via URL parameters the relevant fields are populated automatically in the system.
Integration Detail
Base URL:
-
http://<youraccount>.blazeloop.<com|net>/loop/create/<locationShortCode>?<queryparams>
Supported URL query parameters are:
- ui - Controls which user interface features are available from the guest Timeline. Options are:
default
,messenger
orondemand
default
uses the current system configuration for the select channelmessenger
only the Messenger (chat) feature is available.ondemand
only the OnDemand (request) feature is available. This option requires an OnDemand menu be configured for the location, otherwise, it will show a misconfiguration error "This location's Loop OnDemand menu is not configured."
- demoreset - two possible values:
yes
orno
(default/omitted). Functions as a demo integration where Loop will not persist the user session in browser cookies and instead create a new user every time. We will set up a new Conversation with all the data provided in the URL, but the Conversation will not be created until the user comments or submits a request. - fname, lname, name - Guest's name can be provided either as a name, or split between fname and lname.
- email - Guest's email address. Must be valid email, otherwise will fail to create the loop.
- sms - Guest's SMS number. Should be e.164 format, without leading "+" (e.g. 16135551234). Must be a valid phone number, otherwise fails to create the loop.
- arrival, departure - Arrival and departure date. Must be an integer representing milliseconds since the epoch or YYYY-MM-DD. This third-party utility allows converting human readable date to millisecond since epoch format: http://www.esqsoft.com/javascript_examples/date-to-epoch.htm
- Dates must be valid, or will fail to create the Conversation. Departure date must be in the future, or it will be ignored.
- room - Guest's room number.
- vip - A VIP Status cost, string, number or omit as required.
- guestId - Guest ID from third party system.
- <shortcode> - Any custom field short code can be used as a query parameter.
Example URL:
Where:
- “1000” is the location short code,
- card is a custom field shortcode
- All other fields as examples from the field list above
User ID Alternate
You can also create a loop for a specific user, given their user ID, via:
/loop/create/<locationShortCode>?_uid=####
Embedding Information
It is recommended the URL be hidden from Contacts (to prevent URL-hacking) by embedding in an app frame. An example below:
Example Tablet/Browser Layout
|
Example Mobile Layout
|
The App must designate a frame into which the Loop page will be drawn (shown here as dotted outline). Branding and themes are fully configurable; configured to match the look and feel.
Example URL#2: https://(account).blazeloop.com/loop/create/005
Loop supports URL-encoding of the location number and other fields. See Loop Messenger Web Embed via URL for details.
Loop App State
The Loop mobile UI is a self-contained, stateful HTML5 web application which does not require a ‘page re-load’ after initialization. All user actions within the Loop application do not require a page re-fetch, as depicted below:
User Profiles & App Sequence
Using the Loop RESTful Web Services API, an App or third party system (‘Other System’) may optionally create a user profile in Loop before loading the Loop interface. A pre-created user profile allows a more rich and convenient user experience for the guest (not covered in the basic "/" integration).
In the figure above, the Contact user account is optionally created by either system before fetching the Loop mobile web UI (out of scope here).
Comments
0 comments
Article is closed for comments.