Mercury Event Types

This reference documents all event types published by the Mercury Communication Service. Each event type includes specific data in its EventData BsonDocument that you can use for monitoring, analytics, and integration purposes.


Overview

What Are Mercury Events?

Mercury events are real-time notifications generated by Mercury Security controllers. These events cover:

Category Examples
Access Events Card reads, access granted, access denied
Door Events Door opened, door held open, door forced
Input Events Input activated, input fault
Output Events Output triggered, output fault
System Events Controller online, configuration saved, firmware update
Reader Events Mode change, tamper, communication status

Event Data Structure

All events are published via MQTT and contain an EventData property with a BsonDocument payload. The internal object model is serialized into this document.

// Example: Receiving an access event via EventStream
await foreach (var ev in client.EventStreamAsync(instance, 
    MercuryEvents.AccessGranted | MercuryEvents.AccessDenied))
{
    var eventData = ev.EventData;
    
    // Access common properties
    string controller = eventData["Controller"].AsString;
    DateTime messageTime = eventData["MessageTimeUTC"].ToUniversalTime();
    
    // Access-specific properties
    string reader = eventData["Reader"].AsString;
    string person = eventData["Person"].AsString;
    long cardNumber = eventData["EncodedCardNumber"].AsInt64;
    
    Console.WriteLine($"{person} accessed {reader} at {messageTime}");
}

Event Inheritance Hierarchy

Events follow an inheritance hierarchy where child types include all parent properties:

MercuryEvent (base)
├── AccessEvent
│   ├── AccessCardFull
│   │   └── AccessCardFullAAM
│   ├── AccessCardIdAAM
│   ├── AccessGrantedEvent
│   └── InvalidCardFormat
├── DoorEvent
├── DownstreamEvent
│   ├── DownstreamCommEvent
│   ├── DownstreamFirmware
│   ├── DownstreamCabinetTamper
│   └── DownstreamPowerTamper
├── InputEvent
│   └── FaultedInput
├── OutputEvent
│   └── FaultedOutput
├── ScheduleEvent
├── ProcedureEvent
├── RexEvent
├── ElevatorEvent
├── ControllerBatteryStatus
├── ControllerTamperStatus
├── ReaderMode
│   ├── TemporaryReaderMode
│   └── SystemEvent
│       ├── PowerUpDiagnostics
│       ├── HostComm
│       └── ConfigurationSaved
├── ReaderRexStatus
│   └── FaultedReaderRexStatus
├── ReaderTamper
├── ReaderElevatorFloorStatus
├── AreaStatus
├── TriggerStatus
├── TriggerVariableStatus
├── SchlageEvent
├── UseLimitChange
├── AcrExtendedFeatureStatus
├── AcrExtendedFeatureStateless
├── OtisDecEvent
├── OsdpSecureChannelEvent
├── ElevatorPulseEvent
├── RogueCardEvent
└── AperioEvent

Quick Reference by Use Case

Use Case Event Types
Monitor who enters/exits AccessGrantedEvent, AccessEvent
Track denied access attempts AccessEvent with Reason field
Monitor door status DoorEvent
Detect hardware issues FaultedInput, FaultedOutput, DownstreamCommEvent
Controller health ControllerBatteryStatus, ControllerTamperStatus, HostComm
Reader status ReaderMode, ReaderTamper
Elevator access ElevatorEvent, ElevatorPulseEvent, ReaderElevatorFloorStatus
Area occupancy AreaStatus
Triggers and procedures TriggerStatus, ProcedureEvent

Common Status Values

Many events include a Status field with these possible values:

Value Description
Inactive Component is not active
Active Component is active and operational
Unknown / Off-line Cannot determine status
Deactivated Manually deactivated
Activated Manually activated
Fault Hardware or communication fault
Exit Delay in Progress Exit delay timer is active
Entry Delay in Progress Entry delay timer is active

Base Event Type

MercuryEvent

The base class for all Mercury events. All event types inherit these properties.

Field Type Description
Controller string CommonName of the controller generating the event
MessageTime DateTime Local time of the controller when the event occurred (may differ significantly from PublishedOn)
MessageTimeUTC DateTime UTC time of the event as reported by the controller

Access Events

Events related to card reads and access decisions.

AccessEvent (inherits from MercuryEvent)

Base class for all access-related events.

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string AccessEvent CommonName of the downstream generating the event
Reader string AccessEvent CommonName of the Reader generating the event
Person string AccessEvent CommonName of the Person who generated the event
FloorNumber int AccessEvent Floor Number that the event occurred on
EncodedCardNumber long AccessEvent Encoded Card Number of the card associated with the event
DisplayedCardNumber string AccessEvent Displayed Card Number of the card associated with the event
Reason string AccessEvent Reason that the event was generated (Possible values are: Access Point Locked, Access Point Unlocked, Invalid Facility Code, Invalid Facility Code Extension, Card/PIN Not Found, Invalid Issue Code, Facility Code Only, not used, Facility Code Only, Timeout waiting for Host, Waiting for Grant Confirmation, Count Exceeded, Host Denied Request, Airlock is Busy, Connection Issue with AAM Component, Authentication or validation failure, Unknown Transaction)
PinOnly bool AccessEvent Indicates if the card associated with the event is Pin Only (Possible values are: true, false)
CardExpiryDate DateTime AccessEvent Expiry date of the card associated with the event
ElevatorCab int AccessEvent Elevator cab number, used with Otis integration
Floor string AccessEvent Description of the floor that event occurred on
FacilityCode int AccessCardFull Facility Code number

AccessCardIdAAM (inherits from AccessEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string AccessEvent CommonName of the downstream generating the event
Reader string AccessEvent CommonName of the Reader generating the event
Person string AccessEvent CommonName of the Person who generated the event
FloorNumber int AccessEvent Floor Number that the event occurred on
EncodedCardNumber long AccessEvent Encoded Card Number of the card associated with the event
DisplayedCardNumber string AccessEvent Displayed Card Number of the card associated with the event
Reason string AccessEvent Reason that the event was generated (Possible values are: Access Point Locked, Access Point Unlocked, Invalid Facility Code, Invalid Facility Code Extension, Card/PIN Not Found, Invalid Issue Code, Facility Code Only, not used, Facility Code Only, Timeout waiting for Host, Waiting for Grant Confirmation, Count Exceeded, Host Denied Request, Airlock is Busy, Connection Issue with AAM Component, Authentication or validation failure, Unknown Transaction)
PinOnly bool AccessEvent Indicates if the card associated with the event is Pin Only (Possible values are: true, false)
CardExpiryDate DateTime AccessEvent Expiry date of the card associated with the event
ElevatorCab int AccessEvent Elevator cab number, used with Otis integration
Floor string AccessEvent Description of the floor that event occurred on
AuthenticationModule string AccessCardIdAAM pivCLASS Embedded or EntryPoint-Embedded module used to authenticate the card
AuthenticationData string AccessCardIdAAM Authentication data used in pivCLASS authentication
AuthenticationErrorMessage string AccessCardIdAAM Possible Authentication Error Message returned in pivCLASS Authentication (Possible values are: None, Smart card failed to initialize, Smart card does not support the PIV applet, Failed to read CHUID from card, Failed to read certificate from card, Failed to read fingerprint template from card, Card does not contain the TWIC applet but the assurance profile requires it, Failed to decode CHUID, Failed to decode CHUID ber tlv data, Failed to decode CHUID signature, CHUID has expired, CHUID signature was not valid, Certificate was not valid, Certificate “not before” time has not been reached, Certificate “not after” time has passed, Certificate status is not valid, Cached certificate status has expired, Certificate status cannot be determined from cache or server, Error communicating with the PACS Service host, Error communicating with the SCPV server, PIN verification failed, Internal Authenticate process (cryptographic challenge/response) failed, Card ID numbers are not consistent across all analyzed data elements, Fingerprint template malformed, Unknown)

AccessCardFullAAM (inherits from AccessCardFull)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string AccessEvent CommonName of the downstream generating the event
Reader string AccessEvent CommonName of the Reader generating the event
Person string AccessEvent CommonName of the Person who generated the event
FloorNumber int AccessEvent Floor Number that the event occurred on
EncodedCardNumber long AccessEvent Encoded Card Number of the card associated with the event
DisplayedCardNumber string AccessEvent Displayed Card Number of the card associated with the event
Reason string AccessEvent Reason that the event was generated (Possible values are: Access Point Locked, Access Point Unlocked, Invalid Facility Code, Invalid Facility Code Extension, Card/PIN Not Found, Invalid Issue Code, Facility Code Only, not used, Facility Code Only, Timeout waiting for Host, Waiting for Grant Confirmation, Count Exceeded, Host Denied Request, Airlock is Busy, Connection Issue with AAM Component, Authentication or validation failure, Unknown Transaction)
PinOnly bool AccessEvent Indicates if the card associated with the event is Pin Only (Possible values are: true, false)
CardExpiryDate DateTime AccessEvent Expiry date of the card associated with the event
ElevatorCab int AccessEvent Elevator cab number, used with Otis integration
Floor string AccessEvent Description of the floor that event occurred on
FacilityCode int AccessCardFull Facility Code number
AuthenticationModule string AccessCardFullAAM pivCLASS Embedded or EntryPoint-Embedded module used to authenticate the card
AuthenticationData string AccessCardFullAAM Authentication data used in pivCLASS authentication
AuthenticationErrorMessage string AccessCardIdAAM Possible Authentication Error Message returned in pivCLASS Authentication (Possible values are: None, Smart card failed to initialize, Smart card does not support the PIV applet, Failed to read CHUID from card, Failed to read certificate from card, Failed to read fingerprint template from card, Card does not contain the TWIC applet but the assurance profile requires it, Failed to decode CHUID, Failed to decode CHUID ber tlv data, Failed to decode CHUID signature, CHUID has expired, CHUID signature was not valid, Certificate was not valid, Certificate “not before” time has not been reached, Certificate “not after” time has passed, Certificate status is not valid, Cached certificate status has expired, Certificate status cannot be determined from cache or server, Error communicating with the PACS Service host, Error communicating with the SCPV server, PIN verification failed, Internal Authenticate process (cryptographic challenge/response) failed, Card ID numbers are not consistent across all analyzed data elements, Fingerprint template malformed, Unknown)

AccessGrantedEvent (inherits from AccessEvent)

*Note: There are no unique properties for this class, however, some could be added in the future

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string AccessEvent CommonName of the downstream generating the event
Reader string AccessEvent CommonName of the Reader generating the event
Person string AccessEvent CommonName of the Person who generated the event
FloorNumber int AccessEvent Floor Number that the event occurred on
EncodedCardNumber long AccessEvent Encoded Card Number of the card associated with the event
DisplayedCardNumber string AccessEvent Displayed Card Number of the card associated with the event
Reason string AccessEvent Reason that the event was generated (Possible values are: Access Point Locked, Access Point Unlocked, Invalid Facility Code, Invalid Facility Code Extension, Card/PIN Not Found, Invalid Issue Code, Facility Code Only, not used, Facility Code Only, Timeout waiting for Host, Waiting for Grant Confirmation, Count Exceeded, Host Denied Request, Airlock is Busy, Connection Issue with AAM Component, Authentication or validation failure, Unknown Transaction)
PinOnly bool AccessEvent Indicates if the card associated with the event is Pin Only (Possible values are: true, false)
CardExpiryDate DateTime AccessEvent Expiry date of the card associated with the event
ElevatorCab int AccessEvent Elevator cab number, used with Otis integration
Floor string AccessEvent Description of the floor that event occurred on

InvalidCardFormat (inherits from AccessEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string AccessEvent CommonName of the downstream generating the event
Reader string AccessEvent CommonName of the Reader generating the event
Person string AccessEvent CommonName of the Person who generated the event
FloorNumber int AccessEvent Floor Number that the event occurred on
EncodedCardNumber long AccessEvent Encoded Card Number of the card associated with the event
DisplayedCardNumber string AccessEvent Displayed Card Number of the card associated with the event
Reason string AccessEvent Reason that the event was generated (Possible values are: Access Point Locked, Access Point Unlocked, Invalid Facility Code, Invalid Facility Code Extension, Card/PIN Not Found, Invalid Issue Code, Facility Code Only, not used, Facility Code Only, Timeout waiting for Host, Waiting for Grant Confirmation, Count Exceeded, Host Denied Request, Airlock is Busy, Connection Issue with AAM Component, Authentication or validation failure, Unknown Transaction)
PinOnly bool AccessEvent Indicates if the card associated with the event is Pin Only (Possible values are: true, false)
CardExpiryDate DateTime AccessEvent Expiry date of the card associated with the event
ElevatorCab int AccessEvent Elevator cab number, used with Otis integration
Floor string AccessEvent Description of the floor that event occurred on
HexValues string InvalidCardFormat Hex Values of the invalid card

DoorEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string DoorEvent CommonName of the downstream generating the event
Reader string DoorEvent CommonName of the reader generating the event
DoorContactStatus string DoorEvent Contact status of the door associated with the event (Possible values are: Undefined, Offline, Not Attached, Deactivated, Activated, Ground Fault, Short, Open Circuit, Foreign Voltage, Non-Settling Error, Supervisory Fault, Masked, Entry or Exit Delay in Progress, Entry Delay in Progress)
PreviousDoorContactStatus string DoorEvent Contact status of the previous door associated with the event (Possible values are: Undefined, Offline, Not Attached, Deactivated, Activated, Ground Fault, Short, Open Circuit, Foreign Voltage, Non-Settling Error, Supervisory Fault, Masked, Entry or Exit Delay in Progress, Entry Delay in Progress)
DoorForcedOpenStatus string DoorEvent Status that indicates if the door was forced open (Possible values are: Door Forced Open Alarm is Masked, Door is Forced Open, No Door Forced Open Alarm, Door Held Open Alarm is Masked, Door Held Open Pre-Alarm, Extended Held Open Mode, Door is Held Open, No Door Held Open Alarm)
DoorHeldOpenStatus string DoorEvent Status that indicates if the door was held open (Possible values are: Door Forced Open Alarm is Masked, Door is Forced Open, No Door Forced Open Alarm, Door Held Open Alarm is Masked, Door Held Open Pre-Alarm, Extended Held Open Mode, Door is Held Open, No Door Held Open Alarm)

DownstreamEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string DownstreamEvent CommonName of the downstream generating the event

DownstreamCommEvent (inherits from DownstreamEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string DownstreamEvent CommonName of the downstream generating the event
Status string DownstreamCommEvent Status of the downstream device (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
ReportedVersion string DownstreamCommEvent Version of the downstream generating the event

DownstreamFirmware (inherits from DownstreamEvent)

*Note: There are no unique properties for this class, however, some could be added in the future

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string DownstreamEvent CommonName of the downstream generating the event

DownstreamCabinetTamper (inherits from DownstreamEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string DownstreamEvent CommonName of the downstream generating the event
Status string DownstreamCabinetTamper Status of the downstream cabinet tamper (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

DownstreamPowerTamper (inherits from DownstreamEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string DownstreamEvent CommonName of the downstream generating the event
Status string DownstreamPowerTamper Status of the downstream power tamper (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

ScheduleEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Schedule string ScheduleEvent CommonName of the schedule associated with the event
Status string ScheduleEvent Status of the schedule (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

ProcedureEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Procedure string ProcedureEvent CommonName of the procedure associated with the event
Status string ProcedureEvent Status of the procedure (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

InputEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string InputEvent CommonName of the downstream generating the event
Input string InputEvent CommonName of the input associated with the event
Status string InputEvent Status of the input (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

FaultedInput (inherits from InputEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string InputEvent CommonName of the downstream generating the event
Input string InputEvent CommonName of the input associated with the event
Status string InputEvent Status of the input (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
Diagnostics string FaultedInput Description of diagnostics of the faulted input

RexEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string RexEvent CommonName of the downstream generating the event
Reader string RexEvent CommonName of the reader generating the event
RexNumber int RexEvent Request to Exit (REX) number

ElevatorEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ElevatorEvent CommonName of the downstream generating the event
Reader string ElevatorEvent CommonName of the reader generating the event
FloorNumber int ElevatorEvent Floor Number that the event occurred on

ControllerBatteryStatus (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
FaultStatus string ControllerBatteryStatus Indicates fault status of the controller that generated the event (Possible values are: Active, Inactive)
BatteryStatus string ControllerBatteryStatus Indicates battery status of the controller that generated the event (Possible values are: Active, Inactive)

ControllerTamperStatus (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Status string ControllerTamperStatus Status of the controller tamper (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

ReaderMode (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderMode CommonName of the downstream that generated the event
Reader string ReaderMode CommonName of the reader that generated the event
Mode string ReaderMode Indicates the mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)
PreviousMode string ReaderMode Indicates the previous mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)

ReaderElevatorFloorStatus (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderElevatorFloorStatus CommonName of the downstream that generated the event
Reader string ReaderElevatorFloorStatus CommonName of the reader that generated the event
FloorNumber int ReaderElevatorFloorStatus Floor number that the event occurred on
PreviousStatus string ReaderElevatorFloorStatus Previous status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
Status string ReaderElevatorFloorStatus Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
Floor string ReaderElevatorFloorStatus Description of the floor that the event occurred on

TemporaryReaderMode (inherits from ReaderMode)

*Note: There are no unique properties for this class, however, some could be added in the future

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderMode CommonName of the downstream that generated the event
Reader string ReaderMode CommonName of the reader that generated the event
Mode string ReaderMode Indicates the mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)
PreviousMode string ReaderMode Indicates the previous mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)

SystemEvent (inherits from ReaderMode)

*Note: There are no unique properties for this class, however, some could be added in the future

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderMode CommonName of the downstream that generated the event
Reader string ReaderMode CommonName of the reader that generated the event
Mode string ReaderMode Indicates the mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)
PreviousMode string ReaderMode Indicates the previous mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)

PowerUpDiagnostics (inherits from SystemEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderMode CommonName of the downstream that generated the event
Reader string ReaderMode CommonName of the reader that generated the event
Mode string ReaderMode Indicates the mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)
PreviousMode string ReaderMode Indicates the previous mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)
LossOfLock bool PowerUpDiagnostics Indicates if the clock related failure caused reset
LossOfClock bool PowerUpDiagnostics Indicates if the clock related failure caused reset
ExternalReset bool PowerUpDiagnostics Indicates if the reset button was pressed
PowerOnReset bool PowerUpDiagnostics Indicates if a reset occurred during power up
WatchdogTimer bool PowerUpDiagnostics Indicates if a watchdog reset occurred (When the CPU detects that a task is hogging the CPU for an extended period, so it performs a reboot to correct the issue)
Software bool PowerUpDiagnostics Indicates if software caused the reset to occur. This can be through a valid means where the board needed to be rebooted, for example during a firmware download or applying settings on the web page, or could occur due to a software crash.
LowVoltage bool PowerUpDiagnostics Indicates if the reset was caused by a low voltage detection
Fault bool PowerUpDiagnostics Indicates if a software fault/crash caused the reset

HostComm (inherits from SystemEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderMode CommonName of the downstream that generated the event
Reader string ReaderMode CommonName of the reader that generated the event
Mode string ReaderMode Indicates the mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)
PreviousMode string ReaderMode Indicates the previous mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)
Status string HostComm Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

ConfigurationSaved (inherits from SystemEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderMode CommonName of the downstream that generated the event
Reader string ReaderMode CommonName of the reader that generated the event
Mode string ReaderMode Indicates the mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)
PreviousMode string ReaderMode Indicates the previous mode of the reader that generated the event (Possible values are: Disabled, Unlocked, Locked Down, Facility Code Only, Card Only, PIN Only, Card and PIN, Card or PIN, Unknown Mode)
Configuration string ConfigurationSaved Indicates the configuration of the event generated

ReaderRexStatus (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderRexStatus CommonName of the downstream generating the event
Reader string ReaderRexStatus CommonName of the reader generating the event
Status string ReaderRexStatus Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
Rex string ReaderRexStatus CommonName of the Request to Exit
PreviousStatus string ReaderRexStatus Previous status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

FaultedReaderRexStatus (inherits from ReaderRexStatus)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderRexStatus CommonName of the downstream generating the event
Reader string ReaderRexStatus CommonName of the reader generating the event
Status string ReaderRexStatus Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
Rex string ReaderRexStatus CommonName of the Request to Exit
PreviousStatus string ReaderRexStatus Previous status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
Diagnostics string FaultedReaderRexStatus Description of diagnostics of the faulted reader

OutputEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string OutputEvent CommonName of the downstream generating the event
Reader string OutputEvent CommonName of the reader generating the event
Status string OutputEvent Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

FaultedOutput (inherits from OutputEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string OutputEvent CommonName of the downstream generating the event
Reader string OutputEvent CommonName of the reader generating the event
Status string OutputEvent Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
Diagnostics string FaultedOutput Description of diagnostics of the faulted output

ReaderTamper (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ReaderTamper CommonName of the downstream generating the event
Reader string ReaderTamper CommonName of the reader generating the event
Status string ReaderTamper Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

AreaStatus (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Status string AreaStatus Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
Area string AreaStatus CommonName of the area in which the event occurred
MutipleOccupancy bool AreaStatus Indicates whether this area is multiple occupancy (Possible values are: true, false)
Occupancy int AreaStatus Indicates the occupancy of the area in which the event occurd

TriggerStatus (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Status string TriggerStatus Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
Trigger string TriggerStatus CommonName of the trigger associated with the generated event

TriggerVariableStatus (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Status string TriggerVariableStatus Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
TriggerVariable string TriggerVariableStatus CommonName of the trigger variable

SchlageEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string SchlageEvent CommonName of the downstream generating the event
Reader string SchlageEvent CommonName of the reader generating the event
Feature string SchlageEvent Schlage Feature that generated the event (Possible values are: Interior Push Button, Deadbolt, Request to Enter, Motor Stall, Lock Clutch, Low Battery, Critical Battery, Bezel Tamper, Keyswitch, RF Loss, Magnetic Tamper)
Status string SchlageEvent Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
ExtendedFeatureStatus byte[] SchlageEvent Status of the extended feature

UseLimitChange (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
EncodedCardNumber long UseLimitChange Encoded Card Number of the card associated with the event
NewUseLimit int UseLimitChange The new usage limit for the specific card

AcrExtendedFeatureStatus (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string AcrExtendedFeatureStatus CommonName of the downstream generating the event
Reader string AcrExtendedFeatureStatus CommonName of the reader generating the event
FeatureType short AcrExtendedFeatureStatus Extended ACR Feature Type (0 = None, 1 = Classroom, 2 = Office, 3 = Privacy, 4 = Apartment, 5 = Otis Elevator Mode 1, 6 = Otis Elevator Mode 2, 7 = Otis Elevator Mode 3, 8 = Otis Elevator Mode 4), 9 = KONE Elevator, 10 = Thyssenkrupp Elevator, 11 = Mitsubishi Elevator)
FeaturePoint short AcrExtendedFeatureStatus Feature point (Possible values with their associated description are: 0
Status short AcrExtendedFeatureStatus Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
PreviousStatus short AcrExtendedFeatureStatus Previous status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)
TransactionCode short AcrExtendedFeatureStatus Internal Mercury value
HardwareType short AcrExtendedFeatureStatus Hardware type in use (0 = Mercury, 1 = Schlage)

OtisDecEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string OtisDecEvent CommonName of the downstream generating the event
Reader string OtisDecEvent CommonName of the reader generating the event
Status string OtisDecEvent Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

AcrExtendedFeatureStateless (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
FeatureType short AcrExtendedFeatureStateless Extended ACR Feature Type (0 = None, 1 = Classroom, 2 = Office, 3 = Privacy, 4 = Apartment, 5 = Otis Elevator Mode 1, 6 = Otis Elevator Mode 2, 7 = Otis Elevator Mode 3, 8 = Otis Elevator Mode 4), 9 = KONE Elevator, 10 = Thyssenkrupp Elevator, 11 = Mitsubishi Elevator)
HardwareType short AcrExtendedFeatureStateless Hardware type in use (0 = Mercury, 1 = Schlage)
ExtendedFeatureData byte[] AcrExtendedFeatureStateless Data of the extended feature
ExtendedFeatureStatus byte[] AcrExtendedFeatureStateless Status of the extended feature

OsdpSecureChannelEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string OsdpSecureChannelEvent CommonName of the downstream generating the event
Reader string OsdpSecureChannelEvent CommonName of the reader generating the event
Status string OsdpSecureChannelEvent Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)

ElevatorPulseEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string ElevatorPulseEvent CommonName of the downstream generating the event
Reader string ElevatorPulseEvent CommonName of the reader generating the event
Reason string AccessEvent Reason that the event was generated (Possible values are: Access Point Locked, Access Point Unlocked, Invalid Facility Code, Invalid Facility Code Extension, Card/PIN Not Found, Invalid Issue Code, Facility Code Only, not used, Facility Code Only, Timeout waiting for Host, Waiting for Grant Confirmation, Count Exceeded, Host Denied Request, Airlock is Busy, Connection Issue with AAM Component, Authentication or validation failure, Unknown Transaction)
Floor string ElevatorPulseEvent Description of the floor that the event occurred on
FloorNumber int ElevatorPulseEvent Floor number that the event occurred on

RogueCardEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string RogueCardEvent CommonName of the downstream generating the event
Reader string RogueCardEvent CommonName of the reader generating the event
FloorNumber int RogueCardEvent Floor number that the event occurred on
EncodedCardNumber long RogueCardEvent Encoded Card Number of the card associated with the event
DisplayedCardNumber string RogueCardEvent Displayed Card Number of the card associated with the event
OriginalReason string AccessEvent Original Reason that the event was generated (Possible values are: Access Point Locked, Access Point Unlocked, Invalid Facility Code, Invalid Facility Code Extension, Card/PIN Not Found, Invalid Issue Code, Facility Code Only, not used, Facility Code Only, Timeout waiting for Host, Waiting for Grant Confirmation, Count Exceeded, Host Denied Request, Airlock is Busy, Connection Issue with AAM Component, Authentication or validation failure, Unknown Transaction)
PinOnly bool RogueCardEvent Indicates whether the card associated with event is Pin Only (Possible values are: true, false)
ElevatorCab int RogueCardEvent Elevator cab number, used with Otis integration
Floor string RogueCardEvent Description of the floor that the event occurred on

AperioEvent (inherits from MercuryEvent)

Field Type Inherited From Description
Controller string MercuryEvent CommonName of the controller generating the event
MessageTime DateTime MercuryEvent Local time of the controller when the event occurred (maybe be significantly different than the PublishedOn value)
MessageTimeUTC DateTime MercuryEvent UTC Time of the event as reported by the controller
Downstream string AperioEvent CommonName of the downstream generating the event
Reader string AperioEvent CommonName of the reader generating the event
Feature string AperioEvent Event feature
Status string AperioEvent Status of the reader generating the event (Possible values are: Inactive, Active, Unknown / Off-line, Deactivated, Activated, Fault, Exit Delay in Progress, Entry Delay in Progress)