Fidelio/Opera 1: Integrating MICROS Fidelio/Opera
Basic architecture
The NETx Server provides an interface which can be used to integrate information from the hotel management system Oracle Fidelio/Opera. Using this interface, information about the check-in/check-out procedure, the hotel guests and the hotel room states can be retrieved. In addition, it is also possible to send dedicated information from the NETx Server to the Oracle Fidelio/Opera system. This interface for the NETx Server is certified by Oracle. The official certificate can be found here.
The following figure shows how the integration has to be done.
In order to connect to Oracle Fidelio/Opera system, the so called IFC interface from Oracle Fidelio/Opera has to be activated at the Oracle Fidelio/Opera side. This has to be done by the Oracle Fidelio/Opera integrator. The following figure shows a screenshot of the IFC logging window:
The communication between the IFC interface and the NETx Server is based on TCP/IP. In detail, the IFC interface acts as a TCP server and the NETx Server acts a TCP client. The protocol itself is based on a communication standard called FIAS.
FIAS is a common protocol for interfacing with hotel management system. Many other vendors for hotel management system are also using FIAS. If you have to integrate a hotel management system other the than supported ones, please contact the team of NETxAutomation.
Installation
In order to use the Fidelio/Opera interface, an extra license is needed – for testing purposes, the "Demo" license includes the Oracle Fidelio/Opera interface. Please contact the team of NETxAutomation for more information.
Within the NETx BMS Server 2.0, the Oracle Fidelio/Opera interface is already included in the setup.
For NETx BMS Platform and NETx Multi Protocol Server, the driver is implement as a plugin. Therefore, it has to be installed via the Extension Manager. To do so, stop the server, and start the Extension Manager within the menu "Extensions" within the Core Studio. Select the "Fidelio Opera" interface and press install as shown in the following screenshot:
After having installed the interface, restart the server.
Integration steps
To start, open the Core Studio. Open Modules > Fidelio/Opera > Driver configuration and configure the IP address and port number that you have entered within the web service URL. If this information is not known, please ask the Fidelio/Opera integrator.
In addition the IP address and the port number, there are several configuration options which depend on the IFC settings at the Fidelio/Opera side. Normally, you can leave the default options. If the communication is not working correctly, please ask the Fidelio/Opera integrator whether "LRC" or "Use Ack" option have to be used.
Then, the used hotel rooms have to be defined. This is done within the "Room definitions" within the menu "Modules" -> "Fidelio/Opera". Each definition line corresponds to one room. The first column defines the room name. The room name must be unique and must identically be the name that is used within the Fidelio/Opera system. If you do not know them, please ask the Fidelio/Opera integrator for the room list.
The next two columns "Building Name" and "Floor Name" are used to define an optional structure within the item tree. "Description" is used to provide additional information which is stored within the item property "Description".
After having defined all rooms, the NETx Server has to be restarted. Afterwards, the configured devices are shown within the item tree. For the NETx BMS Platform and NETx Multi Protocol Server, you will find the items under the sub tree "NETx\XIO\Fidelio". For the NETx BMS Server 2.0, you will find them under "NETx\API\NXA_FIDELIO".
The retrieved information from Fidelio/Opera is stored as Server Items. Here all available Server Items that are available for each room are listed (including their access rights):
Item name | Data type | Access | Notes |
---|---|---|---|
BuildingNumber | String | read only | Specified within Room Definitions within NETx Server |
LevelNumber | String | read only | Specified within Room Definitions within NETx Server |
RoomNumber | String | read only | Specified within Room Definitions within NETx Server. Must be identical with the room number used within Fidelio/Opera |
Description | String | read only | Specified within Room Definitions within NETx Server |
GuestsCount | UINT8 | read only | Number of guest that are checked in for this room |
GuestName | String | read only | Guest name that is received from Fidelio/Opera |
GuestLanguage | String | read only | Language code that is received from Fidelio/Opera. E.g. de, en, es, ... |
GuestVIP | UINT8 | read only | VIP status that is received from Fidelio/Opera |
GuestId | String | read only | Reservation / guest ID |
RoomChecked | Boolean | read only | True if at least 1 guest is check in this room – False if room is free |
RoomCheckedForecast | Boolean | read only | True if forecast check-in happens. Only available if Sihot extension is enabled. |
ClassOfService | UINT8 | read only | Received from Fidelio/Opera. 0 (Barred/hotel internal only), 1 (local), 2 (national), 3 (no restrictions) |
DoNotDisturb | Boolean | read only | True if DND is received from Fidelio/Opera – False otherwise |
RoomStatus | UINT8 | read and writable | See table below |
ClearText | String | read and writable | |
GuestArrivalDate | DateTime | read only | Arrival data and time of guest. Normally, this is equal to the check-in data and time. Please keep in mind that Fidelio/Opera is not providing an arrival date before the check-in signal |
GuestDepartureDate | DateTime | read only | Scheduled depature data and time of guest. |
PrinterPort | UINT8 | read only | |
MessageCount | UINT8 | read only | Number of messages that are available for this room |
NextMessage | Boolean | write only | If set to true, the next message that is queued within the server is shown within the server item "MessageText" |
MessageText | String | read only | |
GetMessage | Boolean | write only | If set to true, all available messages are fetched from Fidelio/Opera and stored within the server. Using the item "NextMessage", these messages can be shown within the item "MessageText" |
SendMessage | String | read and writable | Used to send a message to Fidelio/Opera for this room |
MessageLightStatus | Boolean | write only |
Note that this list of data points is fixed by MICROS Fidelio/Opera – not by the server.
The room status is a very important information which can also be changed from the server side. Fidelio/Opera specifies the following predefined values:
Code | Room status |
---|---|
1 | Dirty/Vacant |
2 | Dirty/Occupied |
3 | Clean/Vacant |
4 | Clean/Occupied |
5 | Inspected/Vacant |
6 | Inspected/Occupied |
These are the predefined room states that are available within Fidelio/Opera. However, it is possible to specify additional room states for additional functionality. For example, further states for "Do not disturb" or "Make up room" can be defined. Using this additional room states, it is possible to send additional information from the BMS to the Fidelio/Opera system. A typical use case is to add a KNX switch for DND that sends a user-defined room status (e.g. 7 "DND) to the Fidelio/Opera system. These additional room states have to configured within Fieldio/Opera by the Fidelio/Opera integrator.
Adding control functionality
After having configured the Fidelio/Opera interface, the provided data points can be linked to other data points within the server. You can use V-Links, Server Tasks, LUA script or XLogic commands for providing this functionality.
A typical use case would be the mapping of the RoomCheck item from Fidelio/Opera to a data point like the set point or the mode of the room's climate control. For implementing this use case, a predefined XLogic command called "HotelCheckInCheckOut" is already included within the server. Open the XCommand Event Definitions (BMS Studio --> Extensions) and add a new definition line. Give the logic a name (e.g. Room101), select "ON_INPUT" as type and select the XLogic "HotelCheckInCheckOut". Within the configuration dialog, select the input item (e.g. NETx\API\NXA_FIDELIO\PartA\Floor1\101\RoomChecked) and as output the data point that shall be controlled by the checkin/checkout signal (e.g. KNX group address of the set point of the room). The following screenshot shows an example:
Repeat these steps for a hotel rooms. After having finished all definitions, restart the server.
To add additional definitions in a more easier and faster way, you can use the export/import to MS Excel function of the definition table.
Article applies to the following products:
- NETx BMS Platform
- NETx Multi Protocol Server
- NETx BMS Server 2.0