AutoDispatch Gateway 2 - Dispatch Integrations: GMS ASN.1

Introduction

The GMS driver is designed to talk to the politie.nl Netherlands police dispatch system, GMS, using their legacy connection. This connection is built using the ASN.1 protocol definition language, which is an encoded binary socket based implementation.

Driver file

The GMS ASN.1 dispatch driver's file is GmsDispatchProvider.dll.

Configuration file settings

appsettings.json has an object section called "GMS" that contains all configuration for this driver. The default configuration is shown below, and is fully documented in the file:

  "GMS": {
    // Event codes that cause the transmission that is sent to GMS
    // to be considered a restoral instead of an alarm.
    "restoralCodes": [ "FR", "FH" ],
    // Number of characters to use for the panel ID
    "panelIdLength": 4,
    // Number of characters to use for the installer ID
    "installerIdLength": 2,
    // Number of characters to use for the authority ID
    "authorityIdLength": 2,
    // Set this to non-zero to enable HTTP dashboard on GMS connection status.  Then hit the address of this
    // machine on this port to see connection status to all the GMS routes
    "dashboardPort": 9990,
    // Heartbeat interval in seconds.  A heartbeat will only be sent if no other communication has been sent in for this interval.
    // Default 10 seconds
    "heartbeatInterval": 10,
    // This is how long we should wait (in seconds) for a response before giving up.  Default 3 seconds.
    "responseTimeout": 3,
    // This is how frequently we can attempt reconnect if we lose connection.  GMS developer warns not to do this more frequently than every 30 seconds.
    // Default 30 seconds
    "reconnectInterval": 30,
    // This is the OMS address of this AutoDispatch Gateway instance
    "localAddress": {
      "location": 5101,
      "systemType": 2,
      "systemNumber": 1,
      "subSystemNumber": 1
    },
    // A list of remote GMS endpoint addresses to route dispatch signals to.
    // The authorityId is the key.  Set this ID in the retransmission contact point of 
    // the authority in Manitou to have signals retransmitted through that authority
    // go through the specified route.
    "routes": [
      {
        // Setting this local address here will override the "global" local address set above for this route
        // This attribute is optional on the route.  The "global" address will be used instead if this is
        // not specified.
        "localAddress": {
          "location": 5101,
          "systemType": 2,
          "systemNumber": 1,
          "subSystemNumber": 1
        },
        "authorityId": "CSPD",
        "ipAddress": "127.0.0.1:5122",
        "location": 5101,
        "systemType": 1,
        "systemNumber": 20,
        "subSystemNumber": 0,
        "installerId": 42
      }
    ]
  }

Routing

The "Routes" configuration parameter is an array of objects. Each object contains all of the configuration for a route. The driver can have as many routes as necessary for the integration and will use the dealer's contact ID as the route key. So if the dealer's contact ID matches "AuthorityID" in the route, the driver will use that route.

Reverse commands

The GMS driver only supports the new alarm (ALRM) reverse command. The parameters for this command are listed below:

ALRM

Field Type Data Type Label DB Value Default
Database Text TXID Transmitter ID
Database Text ZONE Zone Number
Database Text ZONEDESCR Zone Description
Database Text EVCODE Event Code
Database Text AUTHID Contact Point
Database Text POINTID Point ID
Fixed Value Text PROVIDERID GMS

Was this article helpful?
Thank you for your feedback!
User Icon

Thank you! Your comment has been submitted for approval.