*iProtect™ - JSON push transaction webservice

This manual represents the knowledge at the above-mentioned time. TKH security works non-stop to improve her products. For the most recent technical information please contact your consultant or dealer.

Table of contents

Introduction

This document explains how you can implement the “JSON push transaction webservice” and how the settings and functions work.

With the “JSON push transaction webservice” it is possible to send iProtect transactions in JSON format to a external system like a “Elastic Stack”. It is possible to specify precisely which transactions are send and what data is added.

Support and license

Below is an overview of support for both the hardware and the software, including the necessary license:

Version

License

Version

License

Version 10.3.15

iProtect basic license

Implementation

This chapter explains how the setup can be made in iProtect.

Export profile

Although not mandatory it is highly recommended to implement and use a export profile. With a export profile it is possible to specify precisely which transactions are send and what data is added. This prevents that unnecessary data is send and gives a significant boost to the performance of the iProtect system, by limiting the data that must be collected and send.

Setup export profile

In iProtect browse to menu: Installation → Settings → Services → Export profile. Right mouse click in the treeview dialogue and click Add export profile.

Enter the following data:

  • Name: logical name for the export profile

  • Code: Logical unique code

  • Language: The desired language, when no language is selected all languages will be send

  • Type: The desired type, version 2023 is recommended, version 2018 is mainly for backwards compatibility

  • Options: Select the default data that will be send for the selected transaction types

  • Click “save”

The type “version 2018” does also add custom text information which is basically no useful data

Event type

At event type select the transactions that need to be send by the “JSON push transaction webservice”

Table list

At table list it is possible to select what data needs to be added to the transaction. This data will only be send if the data is involved in the transaction. So for example a “User logs in” transaction will not add accesskey data even if it is selected, a “Access for subscriber card” transaction will add the accesskey data if selected.

If table(s) are selected at “Table list” they are shown in the treeview, at the specific table specific data can be selected that must be send. So it is possible to for example only send person names and not first names.

Some specific data options are controlled by the “option” settings at the Export profile settings, they are greyed out in the specific selection

Some data is always added to the JSON export even if it is not selected. This is because it is source data, this can be checked in the “Table information” dialogue:

  • Table: TRANSDATA, column: DATAID

  • Table: TRANSNUMBER, column: DATAID

  • Table: TRANSTABLE, column: DATAID

JSON push transaction webservice

This service will be responsible for sending the transactions in JSON to the elastic stack.

Setup the webservice

In iProtect browse to menu: Installation → Settings → Services → Database link. Right mouse click in the treeview dialogue and click Add database link.

Enter the following data:

  • Database type: Push transaction

  • Name: Logical name

  • Active: Checkbox to enable the service

  • Login name: Login name for elastic stack

  • Password: Password for elastic stack

  • Export profile: The desired export profile (when left empty all transactions and all data will be send)

  • Upload url: https: URL where the transactions in JSON format should be send to. The URL starts with //

  • Post type: Select the desired post type:

    • Json: Every transaction is send separately in JSON format

    • Log: Is for testing, will send the transactions in JSON to the catalina.out log file

    • Multi part (Json): Will gather the events that need to be send, and send them in a single post

Optional data:

  • Send data interval time: The time interval when data is selected and send (default is 45s)

  • Log minutes: The time the logging is enabled, when enabled

Testing the JSON push transaction webservice

There are at this moment two ways to test:

  • At the database link settings the post type can be set to “log”. When the logging is enabled this will send all new events to the catalina.out log file

  • It is possible to see all pushed transactions in JSON format at URL: https://<ipadress>/Webcontrols/testpushnotification.html this works parallel with the webservice.

    • In order for this to work the code must be set at the “Export profile”

    • At export profile: Select the export profile that is desired to test

    • At Select option: Select the way to retrieve the transactions in JSON format

      • Last event: Will show the transaction of it occurs in the system

      • Last event id: Will retrieve all transactions from that transid (0) will retrieve all transactions

      • Number events back: Will retrieve transactions back to the set number

  • By clicking the start button the log will start retrieving data

Related pages