Tutorial: Integrating Kaba door locks

Architecture

Our server provides the opportunity to integrate event information from Kaba online door locks. The following figure shows how the integration has to be done.

Kaba door locks are using a wireless communication protocol which is based on ZigBee. In order to retrieve information like door events, ZigBee/IP hubs are required. These hubs are provided by Kaba and have the aim to translate ZigBee packets into IP packets for the local area network (LAN). Depending on the project multiple ZigBee hubs are needed.

Kaba door locks are using a wireless communication protocol which is based on ZigBee. In order to retrieve information like door events, ZigBee/IP hubs are required. These hubs are provided by Kaba and have the aim to translate ZigBee packets into IP packets for the local area network (LAN). Depending on the project multiple ZigBee hubs are needed.

The events are centrally collected by the Kaba server software. This software package provides an interface called Messenger LENS web service interface. This interface provides the opportunity to send events via push notifications to third-party software. In detail, the Kaba software acts as a web service client that sends web service requests to our server which in turn acts as web service server. The communication protocol itself is based on SOAP web services.

Installation

driver is implement as a plugin for the NETx BMS Core Server. Therefore, it has to be installed via the Extension Manager. To do so, stop the NETx Server, Extension Manager in "Extensions" tab. Select the "Kaba" interface and press install as shown in the following screenshot:

After having installed the interface, restart the server.

Integration steps

First, the Messenger LENS web service interface has to be configured. Open a web browser and open the login screen of the Messenger LENS web interface. Within the http URL, use the IP address of the PC where the Kaba software is running.

Afterwards, select the "Configuration" tab, select "Group Permissions" and add a new group permission. Within the wizard, go through step 1 - 3 and select the events and locks that you want to receive within the NETx Server. Within step 4, select "Allow User's Web Service" and enter the following URL (replace <IP NETx Server> with the IP address of the PC where the NETx Server is running and choose a free port (e.g. 6005):

http://<IP BMS Server>:<Port>/

The following screenshot shows an example.

Finish the configuration by going through the remaining steps 5 - 7.

Afterwards, change to the tab "Operations", select "Subscription" and add a new subscription. Select the events, the user and the locks. Within the last step (step 4) of the wizard, "Notify me on my Web server" should be selected and the web service URL should be shown.

As next, open the studio. First, configure the communication port that you have enter within the web service URL. This can be done by selecting "Driver Configuration" within the menu "Modules" -> "Kaba".

Then, the used devices have to be created. This is done within the "Device definitions" within the menu "Modules" -> "Kaba". Each definition line corresponds to one device. The first column defines the device name. The device name must be unique and is shown within the item tree the NETx Server. The next column "Device ID" is optional. "Device Name" and "Device ID" are used to assign a web service notification to the corresponding item within the item tree. This means that either "Device Name" or "Device ID" must be the same as the Kaba software uses within the web service request. The 3rd column "Path" is 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". The remaining field "Persistent", "Historical" (NETx BMS Server 2.0 only) and "Synchronize" have the same functionality as for all other interfaces within the NETx Server. 

FiledDescription
Device NameMust be the same as the Kaba software uses within the web service request
Device IDMust be the same as the Kaba software uses within the web service request
PathDefine an optional structure within the item tree
DescriptionProvide additional information which is stored within the item property

The following figure shows an example where 1 door lock is defined. In addition, the ZigBee/IP called "Hub Floor1" is also defined in order to receive events dedicated to the ZigBee/IP hub.

After having defined all devices, the server has to be restarted. Afterwards, the configured devices are shown within the item tree under the sub tree "NETx\XIO\Kaba".

The retrieved information from Kaba is stored as Server Items. Each retrieved field from the web service request is stored as one server item. Regardless which fields are selected within the Messenger LENS interface, all fields are always shown within the server. However, only 5 Server Items are counted to the license for each defined device. All other items are not counted to the license and are thus for free.

The most important information is the "Event ID" and "Event Name" which indicate the event type. This information can be linked to an XLogic command or LUA task in order to trigger some actions like changing a data point (e.g. trigger a lighting scene). The following table gives an overview of all events:


Event ID

Event Name

Event Description
3Door Ajar GenericDevice left open (unlocked) for more than 5 minutes
4Door ajar clear or door secureDevice secured [before X number of minutes]
7Key Error - Canceled key usedCanceled credential/key card used at the device
8Key Error - OtherDevice access denied for a credential/key card for a reason not otherwise specified
10Low batteryBattery voltage level in the device is low
17Generic EgressGuest egress; the door is locked
18Door Latched"Lock door" command sent to the door (secure mode)
22Wandering IntruderAlert: possible wandering intruder; credential/key card presented at multiple doors
23Standing IntruderAlert: Possible standing intruder; multiple credentials/key cards are presented at a single door
26Deadbolt / PrivacyDeadbolt (privacy feature) thrown
31Key error - Wrong roomCredential/key card used at the wrong room
34Date time ErrorDevice reports: Date and/or time not set; date-time error
37Low Battery Clear or Battery NormalDevice reports: Low Battery Clear or Battery Normal
38Door Ajar Staff ShortStaff Ajar "A" timer reached
39Door Ajar Staff LongStaff Ajar "B" timer reached

40

Door Ajar Guest ShortGuest Ajar "A" timer reached
41Door Ajar Guest LongGuest Ajar "B" timer reached
42Deadbolt reset (retracted)Deadbolt has been reset (retracted)
44New Guest Key UsedNew Guest Key Used
45Guest Key UsedGuest-level credential/key card used
46Staff Key UsedStaff-level or non-opening credential/key card used
50Door Unlatched"Door unlock" command sent to the door (Unlatched mode)
52Date time OKDevice reports: Date time OK (after an error notification)
53Transaction FailedMessenger-initiated transaction failed (including errors or and timing out)
54Lock status ONLINEZigBee lock back online (after having been offline)
55Lock status OFFLINEZigBee lock offline (after having been online)
66Key error - ExpiredExpired credential/key card used at the device
99Paging KeysPaging key used
8194Hub status ONLINEHub back online (after having been offline)
8195Hub status OFFLINEHub offline (after having been online)
100T/A Clock InThe employee {0} has clocked-in
101T/A AbsenceThe employee {0} initiated an absence
102T/A Clock OutThe employee {0} has clocked-out
103T/A PauseThe employee {0} initiated a pause
104SSA Guest - Check-InThe guest user has checked-in
105SSA Guest - Check-OutThe guest user has checked-out
106SSA Guest - Room MoveThe guest user changed his/her room
107SSA Guest - Extended StayThe guest user has extended his/her stay
108SSA Paging - Multi-MediaProblem detected on one or more media devices
109SSA Paging - ElectricalElectrical problem detected
110SSA Paging - Room VacantPart 1 of VCI state
111SSA Paging - Room Service Pick-upRequest for room service pick-up
112SSA Paging - Plumbing ServicePlumbing problem detected
113SSA Paging - Room CleanedPart 2 of VCI state
114SSA Paging - Laundry ServiceRequest for laundry service
115SSA Paging - HVACProblem detected on heating/ventilation system
116SSA Paging - Room InspectedPart 3 of VCI state
117SSA Paging - Generic RepairRequest for a generic repair
507Digital Key error - CancelCanceled digital key used at the device
508Digital Key error - OthersDevice access denied for a digital key for a reason not otherwise specified
510Digital Low batteryDigital key reports that the Battery voltage level in the device is low
522Digital Key Wandering IntruderDigital key used as a wandering intruder
523Digital Key Standing IntruderDigital key used as a standing intruder
531Digital Key error - Wrong RoomDigital key accessing wrong room
544Digital New Guest Key UsedDigital key used for New Guest
545Digital Existing Guest Key UsedDigital key used for current Guest
546Digital Staff Key UsedDigital key used for staff
566Digital Key Error ExpiredDigital key expired

Article applies to the following products:

  • NETx BMS Platform
  • NETx Multi Protocol Server
  • NETx BMS Server 2.0