Spillman CAD Integration

Steps to Use Spillman CAD with PageGate

Send Text and SMS Messages from Spillman CAD
PageGate can be Spillman CAD by using PageGate's GetASCII module to and the PageGate Filter Pack.

In this example, we're using a Powershell script to automatically poll the Spillman XML API for information in real time, then parsing the collected data with PageGate's GetAscii interface and a filtering system.

One key component of this implementation is understanding what you want done with the data you get from CAD. Do you want every notification or call type to go to every district? Should only certain agency codes receive messages? Understanding the answers to questions like these is key to knowing whether you need to implement a filtering system.

Step 1: Create the script to poll the Spillman XML API

1) In Windows, create a new directory for the script to reside in.

Example: C:\PageGateData\sp-pg-ps\

2) Open your preferred text editor (Notepad, Wordpad, EditPad, NotePad++, etc)

3) Copy and paste the Spillman XML API Powershell Script in to your new, blank document.

4) Modify $WorkingDir to reflect the path you created in step 1.

Example: $WorkingDir = "C:\PageGateData\sp-pg-ps\"

5) Modify $RequestUri to reflect the IP address and port of your Spillman XML API host.

Example: $RequestUri = "127.0.0.1:4081/DataExchange/REST"

6) Modify $APIRequest to reflect the information you want from Spillman. This API Request will directly determine what information is requested from CAD.

The default request information from the CAD Active Call table and asks for Law, Fire and EMS call types but NOT Miscellaneous call types.

Default Request: (use <> instead of [])
[?xml version="1.0" encoding="UTF-8"?]
[PublicSafetyEnvelope version="1.0"]
[ From/]
[ To/]
[ Creation/]
[ PublicSafety id=""]
[ Query]
[ CADActiveCallTable]
[ CallTypeLawFireEMS search_type="not_equal_to"]
[ /CallTypeLawFireEMS CADMasterCallCommentsTable childField="LongTermCallID" parentField="LongTermCallID" /]
[ /CADActiveCallTable]
[ /Query]
[ /PublicSafety]
[ /PublicSafetyEnvelope]

7)Modify $LogFile to reflect the path you created in step 1.

Example: $LogFile = "c:\PageGateData\sp-pg-ps\log.txt"

8) Save the file as pollspillman.ps1 in the directory you created in step 1.

Example: c:\PageGateData\sp-pg-ps\pollspillman.ps1

Step 2: Create an Eveng Log source for the script

1) Run Powershell as administrator.

2) Type the following and hit enter:

New-EventLog -LogName Application -Source "SpillmanXmlApiRequester"

3) Close Powershell.

Step 3: Create a Windows Service for the script

1) There are a few service manager utilities you could use but we recommend using NSSM https://nssm.cc/download. Unzip the nssm-verzion.zip file in to your script's directory.

Example: c:\PageGateData\sp-pg-ps\nssm-2.24\

2) Open your preferred text editor (Notepad, Wordpad, EditPad, NotePad++, etc)

3) Copy and paste the Spillman to PageGate Service Installation Script in to your new, blank document.

4) Modify $NssmPath to reflect the directory you unzipped NSSM to.

Example: $NssmPath = "c:\PageGateData\sp-pg-ps\nssm-2.24\win64\"

5) Modify $PsPath to point to the pollspillman.ps1 script you created above.

Example: $PsPath = "c:\PageGateData\sp-pg-ps\pollspillman.ps1"

6) Save the file as install.ps1 in the directory the script resides in.

Example: c:\PageGateData\sp-pg-ps\

7) Run Powershell as administrator.

8) Change directory in to the folder the script resides in.

Example: c:\PageGateData\sp-pg-ps\

9) Type the following and hit enter:

.\install.ps1

10) Close Powershell.

11) Open the Services list in Windows.

12) Go in to the properties of the Spillman-PageGate-PowerScript service.

13) Select the 'Log On' tab

14) Specify a service account with permission to run powershell scripts. A normal user account is usually sufficient but this user must have logged in to Windows and run Microsoft Edge or the Internet Explorer at least once.

15) Start the Spillman-PageGate-PowerScript service.

NOTE: To remove the script, use the Spillman to PageGate service removal script.

Step 4: Configure GetAscii

This part of the configuration will be determined by what you want to do with the data retrieved from Spillman's API.

•Basic Implementation (see documentation)

In the most basic configuration, PageGate will match the value in to its recipients and groups list, allowing any call to that agency to go through regardless of incident type or nature code used.

•Implementation with filtering (see documentation)

With PageGate's filter pack, you have the ability to determine what dispatches should trigger outbound messages by keying off of any data returned by the API.

Examples of what you can do with filtering:

•Specify which notification types an agency should receive

•Determine whether additional assets should be messaged based on address and notification type

•Restrict certain notification types to only go to specific agencies or assets

NotePage, Inc.
PO Box 296
Hanover, MA 02339