Goal
Provide guests with an ‘OnDemand’ menu of quick request options that are automatically dispatched through HotSOS or handled via a Request view within the Loop Inbox. The motivation is both guest convenience and hotel monetization (either incremental revenue or operational efficiencies).
Objectives of this feature include to:
- Create a strong emotional connection with guests
- Prioritize menu-driven requests over chat to minimize employee workload
- Minimize guest bounce rate
- Not be limited to ‘HotSOS’ as fulfilment
Overview
The OnDemand feature allows hotel guests to find, submit and see progress of quick requests using a simple menu control. An example guest workflow requesting two towels is below:
OnDemand has three components: the associate experience, guest experience and the admin configuration. Each is covered following.
Supported Workflows
For the success of new OnDemand deployments, Benbria supports the following two usage scenarios (with the goal of minimizing deviations from current processes):
- With an existing Ticketing System (e.g. HotSOS used on-site)
Loop shall be fully integrated with the Ticketing System to support the current fulfilment process for requests. HotSOS is the only fully-supported ticketing platform integration today (see doc 1192 for detail). - With an existing manual process (e.g. front-desk triage and manual dispatch)
Loop shall support the current workflow while minimizing changes to the fulfillment process. Examples of manual processes include: answering guest room calls either at the front-desk or a service desk, an agent recording notes and dispatching by radio, word of mouth or similar. The agent is responsible to close the ticket when staff report back. The Loop ‘Requests’ page of the user inbox is designed for the agent’s use. Loop does not support live routing of OnDemand requests to mobile associates for dispatch or updating.
Guest Experience
OnDemand is bundled with the Loop Messenger Channel. There is an option to have either the Messenger Channel standalone, or Loop Messenger + OnDemand. The screenshot on the left shows Guest UI when only the Messenger Channel is enabled and the one on the right the Guest UI when both OnDemand Menu and the Messenger Channel are enabled:
The Guest UI supports submitting requests using the menu controls. Since OnDemand menu is enabled on location-per-location basis, Loop does not display OnDemand menu controls on the Guest UI until the location is selected. The screenshots below shows an example OnDemand menu:
After a request is made, it will appear in the Messenger Timeline:
Additionally, guests can view the list of all of their requests separately from Loop Conversation when they navigate to the Profile menu (via the ‘Me’ icon, top right). This is also where they can cancel any of their requests before they are fulfilled:
Guests may cancel a request from this page:
Associate Experience
Managing Requests
Information about the Requests menu can be found on our Loop Inbox - Requests Knowledge Base page.
Creating a Request
"Staff Request Create" is a feature that provides a separate OnDemand menu to associate users which contains internal-only requests. This menu is available from a corresponding screen within the employee's inbox to streamline creation of requests from this menu.
Create a Request
To create a request from the staff OnDemand menu, navigate to the "New Request" page from the Connect menu option.
The form (below) will provide fields to select a location, and specify a room, both mandatory. The location list will only display locations scope to the user, and only those that contain internal OnDemand menus.
Upon selecting a location, a second dropdown is populated with all requests in the location's internal menu. The dropdown is searchable to quickly filter for a specific request in a large menu. Selecting a request will load the list of controls. One of these controls is required to be completed to be able to submit the request.
Created requests will appear on the request page similar to externally/guest created requests, but currently, they will not appear as events in a guest's conversation history, even if the room entered matches a current conversation.
The location and room fields will be retained after each request to facilitate creating multiple requests for a given room.
Administration
Overview
The OnDemand guest menu (left) is viewable and managed (using import/delete) through Loop Admin pages (shown center) and defined through an imported CSV file (right):
Guest (presentation): |
Loop Admin (structure): |
CSV File (definition): |
The guest-facing labels including the overall title of the menu (“OnDemand Example” here) is configured in the CSV file.
Menu Elements: Items
Any OnDemand menu is composed of one or more items. Each item has a type – either one of three container types or one of several control types. Container item types simply hold items and organize. Control items represent an orderable thing.
To create the structure of the menu, every item has a name and a parent. An item’s name must be unique within the menu. Items are linked to their parents using the name of the parent. The menu name itself must be unique within the account. The menu’s name is defined through the menu item.
Container Item Types
The different types of container items are:
- menu The top-level menu container. This item must exist. There is only one menu item in any CSV; there should be only one row of this type. The menu’s name will uniquely identify the menu after importing. The title defines the guest-facing menu header. The menu item can only contain submenus or requests; the menu item cannot contain control items.
- submenu A navigation sub-menu (e.g. Bedding and Pillows) that can contain either submenu or request items. The submenu item cannot contain control items.
- request A container for control items. A request represents a thing (product or service) or a group of things that can be ordered. The request container displays one or more control items and presents a ‘submit’ and ‘cancel’ button to the guest. The request item cannot contain submenu or menu items.
The following illustrates an example menu and container types are noted:
Control Item Types
The different types of container items are:
- action Allows the guest to select a service action (e.g. yes/no).
No additional parameters - quantity Allows the guest to order some number of the item (e.g. - 0 +).
Supports the parameters: initial, minimum (min) and maximum (max) value. - time Allows the guest to submit a time (e.g. 7:30am).
Supports the parameters: initial time, and interval. - text A single-line textbox that allows the guest to type (e.g. “#15282” or “Lavender scent please”)
Supports the parameters: initial value or placeholder text value and max character length. - textarea A multi-line textbox that allows the guest to type (e.g. or “Lavender scent please”)
Supports the parameters: initial value or placeholder text value and max character length.
Examples of text (first) and textarea (second) are shown below:
The following illustrates an example menu and item types are noted:
All menu items have the following common fields:
- name The unique, internal (not visible to the guest) reference name for the item.
- title The guest-facing label (visible to the guest) used to display the menu item.
- parent The name of the parent item in the menu hierarchy.
- type The item type (either menu, submenu, request, action, quantity, time, text, label).
Controls have additional fields; these can be ignored (left empty) when not applicable as shown in the example CSV below:
- Initial The starting value for the time, text or textarea controls.
- Min/Max The minimum and maximum constraint for a numeric value.
- Interval The increment interval for the control (e.g., the step increment for time controls).
- Price The price of the service/item. Used in revenue calculations and reporting.
- Cost The cost of the service/item.
- Description Notes for an item; to add detail, disclaimers or any other short descriptive messages. The message will be displayed below the item title as in the example below:
There is currently no restriction on the Description length, however, the suggested length is below 30 words to ensure the best readability for all of the controls on the screen. Please see an example of how a long Description would look:
- Initial Placeholder text for text and textarea controls.
After selecting the import file, the file will be automatically uploaded, parsed, and the menus created from the row definitions.
Menu & Request Configuration
Configuration information is also visible for request menus and submenu items:
With the Valet menu example from above shown below (guest UI):
Initial Configuration
Setting up an OnDemand Menu requires the following steps:
- Enabling Loop Messenger for the account (see 4001).
- Creating a new Request Menu using the CSV Import file that details
all request types and the menu layout. - Associating the new Menu with a location on the Locations admin page.
Following step 1. above, the "OnDemand Menus" link is available under "Content". Please note that the item does not appear for the accounts, which do not have Messenger enabled.
This page allows users to upload the CSV import files that describe the request types and menu structure. One account can have multiple active menus, allowing every location to have its own menu structure. A menu can also be shared across several locations, but needs to be assigned to each location individually using the Locations page in Bootstrap.
The "Import" button on the "OnDemand Menus" page allows importing of new Request Menus using a CSV file. The import action can be used to add a new menu, or to update an existing menu (a CSV with a matching menu names will trigger an update).
The CSV file structure is as follows. Each row of the CSV defines a menu item. There is always one top-level item of the “menu” type that is used as a parent container for all other items. Other types include submenu and request items described below. The layout of the menu is specified by referencing the titles of menu items in the “Parent” column as shown in the sample file below:
Viewing and Editing Menus
Once imported, an entry in the overview table will appear for each imported menu. Clicking these menus will display details for the menu, including the viewable tree of the menu and configuration details of each control.
To make changes to a menu, edit the source import file, and ensure the "menu" row item retains the same "name". On re-import of this file, the contents will replace the existing menu in its entirety.
Deleting a menu should be reserved for permanent removals from the system. All linking of location-to-menu will be lost when a menu is removed, but all existing request will be preserved.
Associating Menus to Locations
To use a given OnDemand Menu, the menu must be assigned to a location. On the Bootstrap Locations page there is now a new dropdown field listing all available menus. Select a menu and save the location. By default, no location will have any OnDemand Menu until explicitly configured:
Internal Menus
On the existing administration page for configuring OnDemand menus, support has been added to upload an internal (team member) menu. The CSV format of the menu is the same as the external/public (guest) menus. To indicate the menu is internal, set the "type" of the menu row item to "internalmenu":
Similar to assigning a public OnDemand menu to a location, on the location page of account administration, a new dropdown field is added to associate a staff OnDemand menu to the given location.
Reference Material
Design: Information Architecture
OnDemand Control Types
Controls are
Example Configurations
In the following example, with a sub-menu containing one item, the submenu is displayed full-screen:
Orderable Item Examples
Taken from various hotel service offerings to serve as ideas for new configurations:
Comments
0 comments
Article is closed for comments.