Warning |
---|
This document described the integration with Fortress, where Fortress is handled as an access control interface AND as external printer interface. This integration has been delivered. |
Table of Contents |
---|
General Principle:
Fortress GB is an access control system deployed by many UK football clubs.
It provides SecuTix clients with two basic sets of functionalities.
An access control system
Fortress GB is handling access control at the gates with a strong limitation:
Fortress GB does not handle retrieval of controlled tickets. The controlled status of the tickets cannot be retrieved in SecuTix.
An external printing system
Fortress is printing the RFID cards for season tickets for SecuTix clients, with two main cases:
Direct printing at the box-office on "real" printers
Mass printing on "virtual" printers (ticket data are only sent to Fortress)
Fortress being two systems in once in SecuTix point of view, we need to set up two external interfaces: an access control interface and an external printer interface.
It also provides smart barcode functionality that you must activate.
Smart barcode
To activate the smart barcode (encrypted barcode understood by Fortress scanners), go in the organization screen and select "Access control type: Fortress GB"
It will generate a Fortress barcode for all the tickets linked to a seat linked to an area mapped to Fortress through an access control mapping (see below). Else it will generate a Date SecuTix barcode.
Concession barcode
Fortress tickets may have two barcodes, one being the concession barcode, displayed in template using key exr_fortress_concession_barcode
To have this concession barcode please follow the following setup: set the parameter Concession tariff id in the interface with the integer id provided by Fortress support.
It is also possible to override this id for a given tariff by modifying its mapping, setting an external id with a WW_DD_DD structure (code + id1 + id2), id2 being the id of the concession tariff, to be provided by Fortress Team.
Important: if neither of these two methods is used, the concession Barcode will not be generated, but the ticket purchase will still work. This new barcode will be stored in an external reference related to the movement. It can be seen in the ticket details screen.
Access Control Inerface:
Set up
Create an access control interface of type "Fortress GB"
New Interface → Control Interface → Fortress GB Control Plugin
Fill the values on the previous image, which should all be provided by the client or by his Fortress provider.
For the URL → remember to have the URL authorized through Secutix proxy.
A new parameter has been added to identify club through member ID´s in Season cards. That will modify the Ticket mumber format, as it will contain, first what is on the new parameter field followed by "-" and then ticket ID. See Image below:
Mappings.
- Fill area and block mappings, for every area and block of the stadium/venue that will be controlled by Fortress.
- Check that the physical configuration code is the same as the stadium code defined in Fortress.
- Check that the entrances' codes are the same as the gate codes defined in Fortress.
Important: Mapping of Concepts
Complex mappings: use both codes and ids
When creating a new mapping for performance, tariff, entrance and season, please use the following format in the external ID to avoid errors:
Codes and ids are provided by Fortress team.
Advanced: useful Webservices to know Fortress IDs
For people expert in using postman, it is possible to get codes, ids or even create some entities using Fortress Webservices.Tariffs: Get Price Band List (POST)
Name: PriceBandList
Description: get a list of all aviabable price bands code on the Fortress Database
Request URL: http://{endpoint}/api/Products/PriceBandList/
Performances: Getproductlist (POST)
Name: ProductList
Description: Return a list of products available on the fortress server
Request URL:http://{endpoint}/api/Products/ProductList/
Entrances: Get Service List (POST)
Name: ServiceList
Description: Return a list of Services available on the fortress server
Request URL: http://{endpoint}/api/Products/ServiceList/
Schedule
There are two functions in the schedules in the Access control interface developed for v2: Synchronize Tickets and retrieve controlled tickets. For this fortress set up, add just synchronize tickets.
Configuration
Launch: Manual or Automatic
Batch size: 100 default
Event and performance: follow the formatà eventCode;DD/MM/YY hh:mm (24hours format)
Extract Fortress actual active data for comparison (do not use systematically): If it is active, Secutix system call Fortress webservice for a specific match(indicated on the previous parameter) which will compare all the tickets from Secutix and fortress (valid or invalid)
Skip tickets: If the ticket is in Secutix list but not in Fortress, It will be included and sent to Fortress, If it is already on fortress list, it will be skipped, no further actions will be executed. Operator can select tickets to avoid sync with fortress. This ticket will always be ignored on the calls to fortress WS.
Search ticket Parameter format
Cancelled tickets are flagged as error and are not flagged as “synchronized” . A change has been made so that is not an error, it is just a warning in the log lines.
Warning | ||
---|---|---|
| ||
Please make sure that this function is executed at least 2 days before the match, on automatic basis every 20 minutes. In case there are errors, read the log lines and contact support, please provide all the available information. |
External Printing System
The goal of this interface is to print season tickets. It will not work with a different product e.g. a ticket for a specific match.
Set up
Create at least one "Fortress GB" printer for a workstation
Organization → Initialization → Workstations
Create a hardware record Card printer/Fortress GB printer for the workstation that will effectively print the season tickets. Take note of its logical name.
Create an external printing interface of type "Fortress GB"
New Interface → External Printing Interface → Printing Interface Fortress GB
Fill the values, which should all be provided by the client or by his Fortress provider. Those are the same one as for the access control interface (but It is MANDATORY to replicate them here)
- Url → remember to have the url authorized through SecuTix proxy.
- Login
- password
- Agency code
- AppId
- API key
All of them are mandatory.
Other values
Fill the value "Parent Interface", and select the access control interface created before. It will allow the printing interface to retrieve mappings from the parent interface.
Fill the values "sales channel code/point of sales code", to define which point of sale will do the virtual printing.
Fill the value "printer names for direct printing" with the logical names (separated by commas) of all the printers that will be directed to Fortress for direct printing.
Then fill the following mappings:
Fill a product mapping in the access control interface for every season ticket that will need to be printed in Fortress. (the product must be created in Fortress in parallel)
The fact that the access control interface is the parent interface makes it owner of all the mappings.
Schedules
There are 2 schedules within this External Printing Interface, both of them for Season Tickets:
- Import Card Number.
- Ticket External Printing.
Import Card Number
Launch: Manual
Batch size: 1
Product printables: Select season tickets for current season
Tickets external printing
Launch: Manual
Batch size: 1
Product printables: Select season tickets for current season
Access control interface - frequent error message
Due to the complexity of the interface and the integration and the absence of idempotency, the following error messages are likely to show up.
Message | Cause | Action |
---|---|---|
TicketID 101835793445 could not be synchronized due to error: H For ProductCode T23C02-1 GameNumber is 179 but GameNumber extracted from the barcode is 180 | The ID mapping of the performance did change between the time when the barcode was generated and the time when the synchronization occurred |
|
product T23C02-1 [External error] Ticket with id 101812059516 [Barcode: 251146686039192242229055,Container Identifier: 244242,MemberID: 30034444] could not be synchronized due to error: H Database Error -the provided Membership ID was not found in the Fortress System. Bad error message, will be fixed to add the ticket idPlease open a support ticket to investigate this issue. | Data issue, member id is missing in additionnal_info table. | |
product T23C02-1 could not be synchronized due to error: H Error on Fortress side, multiple card with the same Member Id: null Ask Fortress to fix this on their side | Bad error message, will be fixed to add the ticket id. | |
Warning: product T23C02-1 could not be synchronized due to error: H Membership is not Active (FGB_Web) | This error message is due to the fact that the tickets has already been synced when V1 of the interface was active. |
|
Frequent Asked Questions (FAQ)
Why are Tickets compared between Secutix and Fortress?
The new parameter which compares a list of tickets between Secutix and Fortress within the synchronize tickets schedule in Access Control Interface (Please refer to Ticket Synchronization schedule) has been created because none of the Fortress Services are idempotent. That means that, when calling a Fortress Webservice in multiple occasion, execution will fail because tickets would have been added previously to FT system
How does work the parameter to synchronize tickets for a specific match?
The mandatory parameter, located on the Access Control Interface (Synchronize ticket schedule) “Event and performance” to synchronize ticket for a match follows the format: eventCode;DD/MM/YY hh:mm
- Be aware that time format is 24 hours.
- EventCode must match with the code given when creating that match
Filtering by this parameter, just tickets from the specific match will be called in Fortress System.
Why is a ticket not present in Fortress when I print it during the purchase order, as it was the case with V1?
Even if a ticket has been printed on Secutix while a purchase has been completed, operator will need to use access control interface and synchronise the tickets to call Fortress system and push the ticket on FT system. This will allow Secutix to communicate fortress that a ticket has been sold for the chosen match.
How Can I validate that Access control Interface is working properly?
1.Sell a ticket for each stand (STX = Area) of the venue, wait depending of Schedule synchronization ticket, check that those tickets can pass the gate in Fortress.
2.Refund a ticket, wait depending of Schedule synchronization ticket, check that it cannot pass the gate in Fortress.
In case it where not working, check the error logs in the executions and work out until the tickets are accepted/are refused at the gates.
How can I validate that External Printing Interface is working properly?
- Sell a season ticket mapped to Fortress and print it on the Fortress printer. It must be printed by the Fortress printer (check in the execution logs for errors if it does not print)
- Add an additional match on this season ticket, wait depending of Schedule synchronization ticket and see if the ticket can pass the gate (it should). If it does not pass, check in the access control logs to find the error.
Is it possible to purchase by unnumbered seats?
Yes, it is possible to add in the configuration an "unnumbered seat area", and when purchasing the ticket select this area tickets.
Fortress Training Session 1 -
Powerpoint name Fortress 1st trainning session.pptx width 500 height 500
Fortress Support:
+44 (0) 845 299 6020
Page Properties | ||
---|---|---|
| ||
|