Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of contents

  1. Big bangs
    1. Secure offline activation mode with the device's trueTime
    2. Ticket transfer disabled after Bluetooth beacon activation
    3. Ticket's Sub-Target Group (STG), PART 1 injection and search in Ticket List screenTicket's Sub-Target Group (STG), PART 2 search in Transaction list and Transaction pending + Ticket's Sub-Target Group (STG), PART 3 search in Reports
    4. Multilingual - PART 1 injection and mobile app
    5. On-the-fly Crowdin changes
    Cool new features
    1. Search and troubleshoot spectators stuck in the registration process
    2. 2FA to access the AdminTool
    3. Multi-lingual ticket data management
  2. Cool new features
    1. Search and troubleshoot spectators stuck in the registration process
    2. 2FA to access the AdminTool
    3. Registration code 5 tries and same code for 5 times
    4. Screenshot and screen recording protection (native)
    5. Ticket deletion push notification with invalidation reason
    6. Language selection and FAQ on log-in screen
    7. Ticket transfer UI and UX enhancement including transfer message
    8. Security automatic switch from online to offline activations X minutes before Event Start Time
  3. Small new features
    1. My Profile mandatory information with asterisks *
    2. More flexibility on in-app Promos
    3. Wristband handover time displayed
    4. Ticket activation green & blue screens automatic disappearance after X seconds
    5. Ticket assignement configuration Nationality and Passport number added
    6. Bluetooth beacon identifier in the Backoffice AdminTool 2.0 Console
    7. Backoffice SU and BU can also resend communications under Support-Spectator page
    8. Adding the number of active sessions in the spectator export
    9. Backoffice enhanced security with lockout behavior for failed sign-in attempts

Product release notes

...

https://jira.secutix.com/browse/TIX2-2262 Brute force protection for Console.

Business benefits: Add additional security into the Backoffice.

  • Implementing the Amazon Cognito lockout behavior for failed sign-in attempts (c.f. https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-authentication-flow.html)
    • After five failed sign-in attempts, Amazon Cognito locks out your user for one second. The lockout duration then doubles after each additional one failed attempt, up to a maximum of approximately 15 minutes. Attempts made during a lockout period generate a Password attempts exceeded exception, and don't affect the duration of subsequent lockout periods. For a cumulative number of failed sign-in attempts n, not including Password attempts exceeded exceptions, Amazon Cognito locks out your user for 2^(n-5) seconds. To reset the lockout to its initial state, your user must not initiate any sign-in attempts for 15 consecutive minutes at any time after a lockout.
    • Image Removed

...

https://jira.secutix.com/browse/TIX2-184 Number of active sessions is missing in the spectator export in the TIXnGO console.

Business benefits: Add additional information in the spectator export.

  • Add a new column "ACTIVE SESSIONS" in the Spectators List/Export CSV file.
  • This column is placed right after PINCODE column.
  • The values of this column are exactly the values displayed on the Spectators List screen.
  • export-capture.PNGImage RemovedImage RemovedImage Removed

...

https://jira.secutix.com/browse/TIX2-624 [All organizers] As an AdminTool 2.0 support-user (SU) and basic-user (BU), I can also resend communications under Support-Spectator page (so far only admin-user (AU)).

Business benefits: Provide more flexibility to the operations and enhance the Backoffice rights for SU and BU.

  • Old behavior: only admin-user (AU) can also resend communications in the Backoffice under Support-Spectator page.
  • New behavior: support-user (SU) and basic-user (BU) can as well.
  • Reference: TIXNGO Portal / Backoffice manual / User roles and privileges: TIXNGO:Backoffice
  • Image RemovedImage RemovedImage RemovedImage Removed

...

https://jira.secutix.com/browse/TIX2-2332 [Crowdin] Change Crowdin on the fly, do not require to upload a new build.

Business benefits: Speed-up and ease the process of updating strings in the mobile wallet.

  • Old behavior
    • Step 1: Client and BA changed translation strings in Crowdin.
    • Step 2: BA created a ticket on Jira and assigned it to the development team.
    • Step 3: Developers changed the text on the local file (.json).
    • Step 4: Developers rebuilt the white-label mobile wallet and shipped the application to the client.
  • New behavior
    • Step 1: Customers and BA change translate string in Crowdin and click “build project” on Crowdin.
    • Step 2: The mobile wallet users relaunch the TIXNGO application.
    • Image RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage Removed

...

https://jira.secutix.com/browse/TIX2-2430 Emergency activation on mobile.

Business benefits: Provide a last-minute security backup to activate the tickets.

  • In the way to enable the mobile wallet to activate online-activation tickets in case the phone is actually not online, or the Bluetooth does not work, the following new security parameter has been created:
    •  Application Settings / key: ticket.emergency.activation / description: Minutes before the event starts to activate tickets offline (set 0 to turn off the feature)
    • Image RemovedImage RemovedImage RemovedImage Removed

...

https://jira.secutix.com/browse/TIX2-225 As a ticket holder, I have a new UI/UX design when transferring my ticket.

Business benefits: Personalize with a message the transfer of a ticket.

  • As a registered wallet user and transferable ticket holder, I can start the transfer process of a transferable ticket directly on the ticket "Send your ticket" section, and on the Floating Action Button (FAB).
    • Image RemovedImage Removed
  • On the "Send your ticket" screen, I can see the transfer ticket summary, and can add additional tickets (c.f. 2022 Weisshorn V3#2022WeisshornV3-Ticketbulktransfer).
    • Image RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage RemovedImage Removed
  • If the new "Transfer Message" feature is enabled in the Backoffice / Application features / transfer-message and in the ticket transfer email template (c.f. transfer.message), I can see a section to input a message to the recipient (max 300 characters), which will be displayed in the email notification. NB: The message will be as well displayed in the receiver wallet, at a later stage of development (c.f. https://jira.secutix.com/browse/TIX2-2312).
    •  Image RemovedImage RemovedImage RemovedImage RemovedImage Removed

...

https://jira.secutix.com/browse/TIX2-1865 As a wallet user, I can see on the ticket, if and when a wristband has been allocated.

  • When wristband is handed out (wristband activated), log is recorded at bottom of ticket : WRISTBAND HANDED OUT AT HH:MM:SS
  • Wristband handed out log on mobile reset when user logout or change device
  • Image RemovedImage RemovedImage RemovedImage RemovedImage Removed

...

https://jira.secutix.com/browse/TIX2-1830 As a wallet user, I can select the in-app language on the log-in screen, and access the FAQ.

  • Image RemovedImage Removed

...

https://jira.secutix.com/browse/TIX2-1769 As organizers, we want to inject multilingual  for events and display it on mobile app. PART 1/3 → other 2 PARTs will be deployed at a later stage of development (c.f. PART 2: update multilingual for events directly on AdminTool, Transaction pending, PART 3: export events multilingual from AdminTool).

  • Organizers to inject their tickets from S-360 (API), or by CSV file on AdminTool with multilingual support.
    • Elements: Event name, Event website, Event address (site, line1, line2, line3, city), Group name, Group image, Master event name, Ticket details.
    • Languages code (ISO 639-1:2002): Arabic (ar), Catalan (ca), Czech (cs), Dutch Flemish (nl), English (en), French (fr), German (de), Hungarian (hu), Italian (it), Portuguese (pt), Spanish (es), Turkish (tr).
    • Image RemovedImage RemovedImage RemovedImage RemovedImage Removed
  • In case an event does not support a spectator’s app language, let display the event’s default language (English) (including its tickets label).
  • If an event is supporting a spectator’s app language, let display event information by the app language of this spectator (including its tickets label).
  • JSON format example.txt

...

https://jira.secutix.com/browse/TIX2-190 As an organizer, I can search and troubleshoot Spectators, who did not complete the registration process (for instance to retrieve registration code).

  • Goal is for organizers to troubleshoot cases:
    • Retrieve users' registration code, when registration process has not been completed,
    • Retrieve users, who created an account without tickets (never had + already had tickets),
    • Retrieve users, who have tickets in pending transfer from another user,
    • Retrieve users, who have tickets in pending download (injection).
  • Test scenarios
    • Spectators that did not complete registration process → search for this spectator in the AdminTool and see the Pincode.
      • Image RemovedImage Removed
    • Inject a ticket to user A which never registered in the system (injection pending) → search for this spectator in the AdminTool with status inactive (similar to user did not complete registration process).
      • Image RemovedImage RemovedImage RemovedImage Removed
    • User A transferred a ticket to user B, who has never registered in the system (transfer pending) → search for this spectator in the AdminTool with status inactive (similar to user did not complete registration process).
      • Image RemovedImage RemovedImage RemovedImage Removed
  1. PART 1: inject and search by STG in the Ticket List screen
  2. PART 2: search by STG in the Transaction list, Transaction pending
  3. PART 3: search by STG in Reports

...

https://jira.secutix.com/browse/TIX2-641 As an organizer, I can search by STG in the Ticket List screen. PART 1/3

  • Enable organizers to classify a ticket by a contingent.
    • Inject the contingent successfully from S-360.
    • Filter by the contingent in several screens (e.g. Ticket List screen), in order to have an overview of ticket status per each contingent,
    • Send push notification for just some specific contingents,
    • Export the ticket with the contingent.
  • New Back Office AdminTool 2.0 Console > Settings > Organizer Settings > enable.contingent.feature 
    • Image Removed
  • New table REFERENCE_DATA, example:
    • Image Removed
  • Injection API (dependency on S-360)

    • image-2022-11-09-14-13-56-278.pngImage Removed
    • Data model: TICKET table adapted to add the contingent.
      • New column CONTINGENT_EXTERNAL_ID added in table TICKET, NULLABLE
      • Data migration: no needed, existing tickets are let empty.
    • If the organizer enables the contingent feature, then contingent must not be empty, otherwise, it is kept optional.
    • Image Removed
  • Injection CSV (dependency on Injection API)
    • Contingent has been added in the CSV import file with the same structure as the API.
  • Ticket List page
    • If the organizer enabled the contingent feature:
      • New filter by contingent is added, and new column contingent in the list:
        • Value in drop down of the new filter comes from REFERENCE_DATA table of selected event if any or all events, with (key = ‘CONT’, lang = ‘en’)
      • Query search result adapted.
      • Contingent added in the export file.
    • Otherwise, the current behavior has been kept.
    • Image RemovedImage Removed
  • Ticket Support page
    • If the organizer enabled the contingent feature:
      • AdminTool: contingent is added to the ticket details.
      • Backend: returns the contingent for AdminTool.
    • Otherwise, the current behavior has been kept.
  • Image Removed

...

https://jira.secutix.com/browse/TIX2-1872 As an organizer, I can search by STG in the Transaction list, Transaction pending.

  • If the organizer turns on the contingent feature:
    • Transactions screen
      • Filter by the contingent correctly.
      • Export: contingent and seat details are also exported in the excel file.
      • Image RemovedImage RemovedImage Removed
    • Pending screen
      • Filter by the contingent correctly.
      • Export: contingent is exported in the excel file.
      • Image RemovedImage RemovedImage Removed

...

https://jira.secutix.com/browse/TIX2-1873 As an organizer, I can search by STG in Reports.

  • If the organizer turns on the contingent feature:
    • Reports
      • Image RemovedImage Removed
    1. On-the-fly Crowdin changes
    2. Ticket's Sub-Target Group (STG)
    3. Event group management
    4. Bluetooth beacon instance ID per event
    5. Admintool pagination improvments
    6. Event operations - Manual check time window on event day and event day + 1
    7. Ticket holders management - Ticket assignment data per event

Product release notes

Product features

Anchor
Ticket holders management - Ticket assignment data per event
Ticket holders management - Ticket assignment data per event
Ticket holders management - Ticket assignment data per event

TIX2-2415TIX2-2553 - Assignment data collection per event

This new features will make ticket assignment and management easier for organizers and mobile users alike. Here are the details of the changes:

Setting up the new required fields 

  • Organizers can now set up extra fields for ticket assignment at the event level, using the AdminTool. These fields can be customized to collect any additional information that organizers may need from ticket holders.
  • When assigning a ticket in the mobile app, the new fields will either be mandatory or not visible, depending on the configuration set in the Admin Tool at the event level. If the fields are visible, users can input the required values, which will be saved automatically.
  • On the mobile app, in the ticket detail screen, the name of the ticket holder is now clickable. Clicking on it will open up the guest details in edit mode. If the transfer/keep buttons are not available anymore, the guest details become read-only and cannot be edited.
  • The value of the new fields entered by mobile users will be sent to S360 using the Feedback interface. (if you are using the S-360 feedback interface).
  • Additionally, the new fields will be displayed correctly in the Support Ticket section of the Admin Tool, allowing organizers to view and manage the additional information collected from ticket holders.


Admintool setup per event Guest details collection on the app
Image Added
Image Added


Data collection on the mobile app

Two new popups have been added that notify spectators about missing information for wallet owners and guests. The popups is displayed when spectators download their tickets and it will redirect them to the correct page to fill in the missing information.

There are different scenarios for when the popups will appear, depending on the number of tickets that require extra information. If the wallet owner has not received any tickets for an event that requires extra information, then no popup will appear.

If the wallet owner has one ticket for an event that requires extra information, a popup will appear if the Ticket owner is not yet assigned or has not kept for ticket for himself.

  • Pop-up 1 appears for the wallet owner
  • Pop-up 2 appears for additional tickets for guest of the wallet owner. (assign or keep action required).

For example : If the wallet owner has two tickets for an event that requires extra information, several scenarios can arise. If the Ticket owner's extra fields are missing for both tickets, Popup 1 will appear first. After the spectator fills out the information for the first ticket, Popup 2 will appear for the second ticket. If the Ticket owner's extra fields are missing for only one ticket, Popup 2 will appear for that ticket, and if one ticket is kept for themselves and the other is assigned, no popup will appear.

If the wallet owner has two tickets for two different events that require extra information, the same behavior as in the case with one event will occur.


Image Added Image Added

These changes will make it easier for organizers to collect and manage important information from ticket holders, while also improving the mobile user experience. These updates will enhance the overall ticket management process for everyone involved.


Anchor
Event operations - Manual check time window on event day and event day + 1
Event operations - Manual check time window on event day and event day + 1
Event operations - Manual check time window on event day and event day + 1

TIX2-2723 - Quick manual check on event day and event day + 1 only

The quick manual check feature that let's you check a ticket manually with a double tap was possible no matter the date when it was enabled.

From now, the quick manual check will be only possible on event day and event day + 1. This new feature will make sure we don't have situations where tickets are activated well in advance (e.g. event day - 2) and the tickets are being check prior to event day by error. Reducing this risk will reduce the number of troubleshooting that may need to happen in such situation.


Anchor
Admintool pagination improvments
Admintool pagination improvments
Admintool pagination improvments

TIX2-2595 Admin tool pagination improvement

You can now jump to the page you want directly by typing in the page number in the pagination component. 

Image Added

Anchor
Bluetooth beacon instance ID per event
Bluetooth beacon instance ID per event
Bluetooth beacon instance ID per event

TIX2-2712 - Beacon instance ID can be the same across a whole event for all activation groups 

If you are users of beacons for ticket activation or checks you know that TIXNGO supports the following mode :

  • dynamic beacon instance ID generated per activation groups (different instance ID for each activation groups)
  • static beacon instance ID across the whole app (systematically the same instance ID for all events and all activations groups)

In this Breithorn V1 release, we are introducing a new dynamic mode :

  • NEW : dynamic beacon instance ID generated per events (same instance ID across all activation groups of a given event but different instance ID for each events)


This new mode facilitate the configuration and configuration changes for a whole event while keeping a strong level of security with different instance IDs per events.

How to use this new mode ?

  • A new setting key introduced named bt.instanceid.unique-per-event and set to true means that all tickets in an event should have the same Bluetooth instanceID. regardless if those tickets belong to one or more activation groups.
  • Please note that this setup needs to be done during the onboarding process. To activate it, please reach out to your Professional services manager.

Image Added

Anchor
Event group management
Event group management
Event group management

TIX2-2016 - Event group management improvements

The event group feature available in TIXNGO let you group event under an event group name that you can define at the injection. This release is extending the event group feature by introducing some improvements to provide more control and visibility :

  • See easily the list of events/tickets belonging to an event group
  • Move an event from one event group to another
  • Include event group filters in all relevant screens on the admintool. 

AdminTool improvements

  1. To change an event from Event Group A to Event Group B:
    • Go on the event edition screen
    • The event group Id is now a dropdown that lists all the event groups available
    • Select another event group Id to change to move the event to this other event group.
    • When changing the event group Id, its Event group name will be automatically loaded, based on the selected language
    • In case the operator forget to save the pop-up “Unsaved changes” will be triggered.

Image Added

2. In the event list screen

    • a new event group filter has been added in order for the operator to be able to list all events belonging to a given event group (dropdown multi-select)
    • the “Event Group Name” has been added to the CSV export
      Image Added

3. Ticket list screen 

      • A new event group filter is now available as a search criteria (dropdown multi-select) in order for the operator to be able to list all tickets belonging to an event group.
      • the “Event Group Name” has been added to the CSV export
        Image Added

On the API side, a new endpoint has been created to return the list of event group id and event group name (for the dropdown)

Please note that the system will automatically delete old event group not having any event associated to it.

Anchor
Ticket's Sub-Target Group (STG)
Ticket's Sub-Target Group (STG)
Ticket's Sub-Target Group (STG)

  1. TIX2-641 - Inject and search by Contingent (STG) in the Ticket List screen
  2. TIX2-1872 - Search by Contingent (STG) in the Transaction list, Transaction pending
  3. TIX2-1873 - Search by Contingent (STG) in Reports


  1. Injection and search in Ticket List screen 
  • Enable organizers to classify a ticket by a contingent.
    • Inject the contingent successfully from S-360
    • Filter by the contingent in several screens (e.g. Ticket List screen), in order to have an overview of ticket status per each contingent,
    • Send push notification for just some specific contingents
    • Export the ticket with the contingent.


  • New Back Office AdminTool 2.0 Console > Settings > Organizer Settings > enable.contingent.feature 

Image Added

  • New table REFERENCE_DATA, example:

Image Added

  • Injection API (dependency on S-360)

image-2022-11-09-14-13-56-278.pngImage Added

    • Data model: TICKET table adapted to add the contingent.
      • New column CONTINGENT_EXTERNAL_ID added in table TICKET, NULLABLE
      • Data migration: no needed, existing tickets are let empty.
    • If the organizer enables the contingent feature, then contingent must not be empty, otherwise, it is kept optional.

Image Added

  • Injection CSV (dependency on Injection API)
    • Contingent has been added in the CSV import file with the same structure as the API.
  • Ticket List page
    • If the organizer enabled the contingent feature:
      • New filter by contingent is added, and new column contingent in the list:
        • Value in drop down of the new filter comes from REFERENCE_DATA table of selected event if any or all events, with (key = ‘CONT’, lang = ‘en’)
      • Query search result adapted.
      • Contingent added in the export file.
    • Otherwise, the current behavior has been kept.

Image AddedImage Added

  • Ticket Support page
    • If the organizer enabled the contingent feature:
      • AdminTool: contingent is added to the ticket details.
      • Backend: returns the contingent for AdminTool.
    • Otherwise, the current behavior has been kept.

Image Added


2. Search by Contingent (STG) in the Transaction list, Transaction pending

  • If the organizer turns on the contingent feature:
    • Transactions screen
      • Filter by the contingent correctly.
      • Export: contingent and seat details are also exported in the excel file.

Image AddedImage AddedImage Added

    • Pending screen
      • Filter by the contingent correctly.
      • Export: contingent is exported in the excel file.

Image AddedImage AddedImage Added


3. Search by Contingent (STG) in Reports

  • If the organizer turns on the contingent feature:
    • Reports

Image AddedImage Added


Anchor
On-the-fly Crowdin changes
On-the-fly Crowdin changes
On-the-fly Crowdin changes 

https://jira.secutix.com/browse/TIX2-2332 [Crowdin] Change Crowdin on the fly, do not require to upload a new build.

Business benefits: Speed-up and ease the process of updating strings in the mobile wallet.

  • Old behavior
    • Step 1: Client and BA changed translation strings in Crowdin.
    • Step 2: BA created a ticket on Jira and assigned it to the development team.
    • Step 3: Developers changed the text on the local file (.json).
    • Step 4: Developers rebuilt the white-label mobile wallet and shipped the application to the client.
  • New behavior
    • Step 1: Customers and BA change translate string in Crowdin and click “build project” on Crowdin.
    • Step 2: The mobile wallet users relaunch the TIXNGO application.

Image Added



















Crowdin on-the-fly loading system flow


Image Added














Crowdin translation available in the app if the synchronization was done successfully after being triggered by the app loading


Disable / enable Crowdin synchronization

A new setting is available to enable/disable the crowdin sync feature and works as described below :

If the enable-crowdin-sync setting is set to true, the app will load the latest translations from Crowdin every time it is loaded. If it is set to false, no call to Crowdin will be made, and the translations will be loaded locally.

The local file on the app will contain translations from the last successful synchronization with Crowdin.

In case an organizer changes the value from false to true but has never synchronized before, the app will call Crowdin, but if the synchronization fails, the local file loaded will be the default embedded one, which was present when the app was built.

If the enable-crowdin-sync setting is already true, and the app fails to synchronize with Crowdin, the local file will be loaded with the latest version successfully synchronized.

Image Added

Admin tool configuration for Crowdin synch activation


Anchor
Backoffice enhanced security with lockout behavior for failed sign-in attempts
Backoffice enhanced security with lockout behavior for failed sign-in attempts
Backoffice enhanced security with lockout behavior for failed sign-in attempts 

https://jira.secutix.com/browse/TIX2-2262 Brute force protection for Console.

Business benefits: Add additional security into the Backoffice.

  • Implementing the Amazon Cognito lockout behavior for failed sign-in attempts (c.f. https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-authentication-flow.html)
    • After five failed sign-in attempts, Amazon Cognito locks out your user for one second. The lockout duration then doubles after each additional one failed attempt, up to a maximum of approximately 15 minutes. Attempts made during a lockout period generate a Password attempts exceeded exception, and don't affect the duration of subsequent lockout periods. For a cumulative number of failed sign-in attempts n, not including Password attempts exceeded exceptions, Amazon Cognito locks out your user for 2^(n-5) seconds. To reset the lockout to its initial state, your user must not initiate any sign-in attempts for 15 consecutive minutes at any time after a lockout.
    • Image Added

Anchor
Adding the number of active sessions in the spectator export
Adding the number of active sessions in the spectator export
Adding the number of active sessions in the spectator export  

https://jira.secutix.com/browse/TIX2-184 Number of active sessions is missing in the spectator export in the TIXnGO console.

Business benefits: Add additional information in the spectator export.

  • Add a new column "ACTIVE SESSIONS" in the Spectators List/Export CSV file.
  • This column is placed right after PINCODE column.
  • The values of this column are exactly the values displayed on the Spectators List screen.
  • Image AddedImage AddedImage Added

Anchor
Backoffice SU and BU can also resend communications under Support-Spectator page
Backoffice SU and BU can also resend communications under Support-Spectator page
Backoffice SU and BU can also resend communications under Support-Spectator page 

https://jira.secutix.com/browse/TIX2-624 [All organizers] As an AdminTool 2.0 support-user (SU) and basic-user (BU), I can also resend communications under Support-Spectator page (so far only admin-user (AU)).

Business benefits: Provide more flexibility to the operations and enhance the Backoffice rights for SU and BU.

  • Old behavior: only admin-user (AU) can also resend communications in the Backoffice under Support-Spectator page.
  • New behavior: support-user (SU) and basic-user (BU) can as well.
  • Reference: TIXNGO Portal / Backoffice manual / User roles and privileges: TIXNGO:Backoffice
  • Image AddedImage AddedImage AddedImage Added

Anchor
Security automatic switch from online to offline activations X minutes before Event Start Time
Security automatic switch from online to offline activations X minutes before Event Start Time
Security automatic switch from online to offline activations X minutes before Event Start Time 

https://jira.secutix.com/browse/TIX2-2116 We need logic in the app to activate offline mode is case of not working backend, so we can prevent loss of tickets.

Business benefits: Provide a last-minute security backup to activate the tickets.

  • In case the organizer decides to use online-activation tickets and some edge cases failures occur (e.g. some offline phones, some phones with Bluetooth issue, some TIXNGO backend issues), TIXNGO have now introduced this emergency offline time-based that will activate the tickets no matter what, to make sure the barcode will there for the event. 
    •  Application Settings / key: ticket.emergency.activation / description: Minutes before the event starts to activate tickets offline (set 0 to turn off the feature)
    • Image AddedImage AddedImage AddedImage Added

Anchor
Ticket transfer UI and UX enhancement including transfer message
Ticket transfer UI and UX enhancement including transfer message
Ticket transfer UI and UX enhancement including transfer message

https://jira.secutix.com/browse/TIX2-225 As a ticket holder, I have a new UI/UX design when transferring my ticket.

Business benefits: Personalize with a message the transfer of a ticket.

  • As a registered wallet user and transferable ticket holder, I can start the transfer process of a transferable ticket directly on the ticket "Send your ticket" section, and on the Floating Action Button (FAB).
    • Image AddedImage Added
  • On the "Send your ticket" screen, I can see the transfer ticket summary, and can add additional tickets (c.f. 2022 Weisshorn V3#2022WeisshornV3-Ticketbulktransfer).
    • Image AddedImage AddedImage AddedImage AddedImage AddedImage AddedImage AddedImage Added
  • If the new "Transfer Message" feature is enabled in the Backoffice / Application features / transfer-message and in the ticket transfer email template (c.f. make sure to include the parameter $$message$$ in your transfer templates to make sure recipient can see the content of it, more information detailed in the Mobile Wallet manual here: Wallet Features#TRANSFERMESSAGE), I can see a section to input a message to the recipient (max 300 characters), which will be displayed in the email notification. NB: The message will be as well displayed in the receiver wallet, at a later stage of development (c.f. https://jira.secutix.com/browse/TIX2-2312).
    •  Image AddedImage AddedImage AddedImage AddedImage Added
  • Crowdin new strings to translate:
    • recipient_confirmation_page_description

    • transfer_recipient_empty_value

    • add_recipient_email

    • transfer_functionality_title

    • transfer_functionality_description

    • transfer_message_input_title

Anchor
Wristband handover time displayed
Wristband handover time displayed
Wristband handover time displayed

https://jira.secutix.com/browse/TIX2-1865 As a wallet user, I can see on the ticket, if and when a wristband has been allocated.

  • When wristband is handed out (wristband activated), log is recorded at bottom of ticket : WRISTBAND HANDED OUT AT HH:MM:SS
  • Wristband handed out log on mobile reset when user logout or change device
  • Image AddedImage AddedImage AddedImage AddedImage Added

Anchor
Language selection and FAQ on log-in screen
Language selection and FAQ on log-in screen
Language selection and FAQ on log-in screen

https://jira.secutix.com/browse/TIX2-1830 As a wallet user, I can select the in-app language on the log-in screen, and access the FAQ.

  • Image AddedImage Added

Anchor
Multi-lingual ticket data management
Multi-lingual ticket data management
Multi-lingual ticket data management

TIX2-1769 / TIX2-1882 / TIX2-1883 Inject multilingual data for events, Manage multilingual data for events on AdminTool and export events multilingual from AdminTool.

Inject multilingual data for events

  • Organizers to inject their tickets from S-360 (API), or by CSV file on AdminTool with multilingual support.
    • Elements: Event name, Event website, Event address (site, line1, line2, line3, city), Group name, Group image, Master event name, Ticket details.
    • Languages code (ISO 639-1:2002): Arabic (ar), Catalan (ca), Czech (cs), Dutch Flemish (nl), English (en), French (fr), German (de), Hungarian (hu), Italian (it), Portuguese (pt), Spanish (es), Turkish (tr).


Image AddedImage AddedImage Added

Ticket data based on the app language selection

Image AddedImage Added


  • In case an event does not support a spectator’s app language, the event’s default language will be displayed (English) (including its tickets label).
  • If an event is supporting a spectator’s app language, the event information by the app language of this spectator will be displayed (including its tickets label).
  • JSON format example.txt (format required to inject several languages)


Image Added

Language parameters to inject several languages


Manage multilingual data for events on AdminTool

AdminTool 2.0 supports multilingual configuration for event and ticket details. Organizers can view and update event information in multiple languages. When switching to another language, a confirmation pop-up message will be displayed if there are unsaved changes. Changes made in each language will be saved separately. 

Image Added

AdminTool dropdown for language selection 


Export events multilingual from AdminTool

Organizers can export multilingual content of their events and send it to reviewers for review for example. With the "Export Multilingual" button on the Events screen, all search results events will be exported to a CSV file, including event information and ticket detail labels in multiple languages. The exported data fields include Event ID, Group Event ID, Event date and time, Section, Rank, Language.

Image Added

CSV export including all languages

Anchor
Search and troubleshoot spectators stuck in the registration process
Search and troubleshoot spectators stuck in the registration process
Search and troubleshoot spectators stuck in the registration process

https://jira.secutix.com/browse/TIX2-190 As an organizer, I can search and troubleshoot Spectators, who did not complete the registration process (for instance to retrieve registration code).

  • Goal is for organizers to troubleshoot cases:
    • Retrieve users' registration code, when registration process has not been completed,
    • Retrieve users, who created an account without tickets (never had + already had tickets),
    • Retrieve users, who have tickets in pending transfer from another user,
    • Retrieve users, who have tickets in pending download (injection).
  • Test scenarios
    • Spectators that did not complete registration process → search for this spectator in the AdminTool and see the Pincode.
      • Image AddedImage Added
    • Inject a ticket to user A which never registered in the system (injection pending) → search for this spectator in the AdminTool with status inactive (similar to user did not complete registration process).
      • Image AddedImage AddedImage AddedImage Added
    • User A transferred a ticket to user B, who has never registered in the system (transfer pending) → search for this spectator in the AdminTool with status inactive (similar to user did not complete registration process).
      • Image AddedImage AddedImage AddedImage Added

Anchor
Ticket transfer disabled after Bluetooth beacon activation
Ticket transfer disabled after Bluetooth beacon activation
Ticket transfer disabled after Bluetooth beacon activation 

https://jira.secutix.com/browse/TIX2-1760 Following time activation (online or offline), disable transfer only after ticket check (via beacon or manually).

  • If a ticket get time-based activated, but the spectator has a last-minute blocker and cannot go to the event, the spectator can still transfer to somebody else. However, if the ticket has been already activated at the event location through a Bluetooth beacon (BT) (or manually), the ticket cannot be transferred.
  • The organizer can allow/disable the ticket transfer after the BT activation by setting parameter transferRules.allowTransferAfterActivationByBT to TRUE/FALSE per ticket level (default = TRUE).
    • If param is set to TRUE: On mobile, the transfer button is available and the ticket can be transferred to another account as usual after the BT activation. 
    • If param is set to FALSE: On mobile, the transfer button is not available, if the device is online after the BT activation. The ticket can't be transferred to another account after the BT activation, and have label "non-transferable ticket".
  • New endpoint from backend:
    • POST /spectator/tickets/secondary-activations: Inform the backend that a ticket was activated for the second time on the spectator side (mostly BT beacon). → Mobile use this flag to hide the "Transfer" button.
  • New parameter work for all injections from S-360 injection (via the S-360 Ticket Template Editor) and TIXNGO CSV Injection and TIXNGO single injection.
  • The Backoffice AdminTool 2.0 Console has been adapted accordingly.
    • On the Edit Event (screenshot), Support ticket screen, Ticket Detail pop-up.
    • The new rule of Allow transfer after activation belongs to each group transfer Id.
    • Under transfer rules of each ticket, rule (Allow transfer after BT activation) is updated with the value ON/OFF respectively.
    • On Support page, organizer can edit the rule to ON/OFF as other transfer rules.
    • If rule is not mentioned during injection, Backend to set the default TRUE.
    • Image RemovedImage RemovedImage Removedup.
    • The new rule of Allow transfer after activation belongs to each group transfer Id.
    • Under transfer rules of each ticket, rule (Allow transfer after BT activation) is updated with the value ON/OFF respectively.
    • On Support page, organizer can edit the rule to ON/OFF as other transfer rules.
    • If rule is not mentioned during injection, Backend to set the default TRUE.
    • Image AddedImage AddedImage Added

Please note that when a beacon or manual check is performed, the check method and beacon name information and timestamps will be displayed at the bottom of the ticket. The beacon name is useful in case of troubleshooting to be able to spot with which beacon and which location the ticket was "beacon checked".

The beacon name used for the check is also available on the admintool in the mobile logs screen.

Image Added

Anchor
Ticket deletion push notification with invalidation reason
Ticket deletion push notification with invalidation reason
Ticket deletion push notification with invalidation reason 

https://jira.secutix.com/browse/TIX2-1770 As an organizer, I want to send a push notification with a specific reason while deleting a ticket.

  • When an organizer deletes a ticket in S-360 (or directly from TIXNGO), the TIXNGO backend triggers a configurable push notification to the user.
    • Examples:
  • Backoffice AdminTool 2.0 Console > Settings > Multilingual Settings > 32+ new keys added
  • Ticket delete notification configuration guideline: Notification & Email Templates#Ticketdeletenotification

Anchor
Screenshot and screen recording protection (native)
Screenshot and screen recording protection (native)
Screenshot and screen recording protection (native)

https://jira.secutix.com/browse/TIX2-1809 [Screenshot/recording protection] As TIXNGO, I replace ScreenShieldKit existing solution by implementing flutter library screen_protector (available on https://pub.dev/).

Related to the previous delivery in 2022 Weisshorn V2: https://jira.secutix.com/browse/TIX2-2 Screenshot and screen recording protection.

  • The screenshot/recording feature works as previously on iOS and Android.
  • Organizer can enable/disable the feature under Backoffice AdminTool 2.0 Console > application features > screen.protect.shot.record.

Anchor
Secure offline activation mode with the device's trueTime
Secure offline activation mode with the device's trueTime
Secure offline activation mode with the device's trueTime

https://jira.secutix.com/browse/TIX2-1755 [All Branded SDK-based App] Secure offline activation mode.

  • Currently, the offline activation is based on the device date-time. So some users can change the phone time and trigger the offline activation before the actual configured time. The main purpose of this new feature is to implement a more secured offline activation to avoid those cheat cases, and to always keep offline activation at the correct date-time by leveraging the device boot and actual local true date-time.

  • Important edge cases:

    • In case the user reboot his/her phone, and then opens the app again, the user will be asked though a pop-up message to connect to the internet (online) at least once.

      • This internet connection pop-up will appear if (1) the user shutdown/reset/out of battery, and (2) once user opens app again, phone is with no or poor internet connection. The text is adjustable in Crowdin.
    • In case the user removes and reinstalls the app, the function should work as normal.

Anchor
Bluetooth beacon identifier in the Backoffice AdminTool 2.0 Console
Bluetooth beacon identifier in the Backoffice AdminTool 2.0 Console
Bluetooth beacon identifier in the Backoffice AdminTool 2.0 Console

https://jira.secutix.com/browse/TIX2-183 TIXNGO Beacon Identifier not in separate column in the mobile logs in the TIXNGO console.

  • As an organizer, I can know which tickets were activated by which beacon, in the new “Beacon name” column, which is displayed in the “Mobile Logs” screen and the “Mobile logs of spectator” list of the “Support Page” screen, as follow:

    • Steward – valid name
    • Steward – invalid name
    • Gate – valid name
    • Gate – invalid name

Anchor
Ticket assignement configuration Nationality and Passport number added
Ticket assignement configuration Nationality and Passport number added
Assign (keep) data missing fields (Nationality + ID passport number) + data feedback to S360

https://jira.secutix.com/browse/TIX2-1962 Assign (keep) data missing fields (Nationality + ID passport number) + data feedback to S360.

  • The organizer can decide if the Nationality + ID passport number are requested (mandatory or optional) or not, when a ticket holder is assigning a ticket to someone coming along. The value of these two new fields are sent to S-360 through the TIXNGO-S-360 feedback interface.

  • Backoffice AdminTool 2.0 Console >  Setting > Assignment Configuration: Nationality + ID passport number
  • Backoffice AdminTool 2.0 Console >  Support ticket

Anchor
Ticket activation green & blue screens automatic disappearance after X seconds
Ticket activation green & blue screens automatic disappearance after X seconds
Ticket activation green & blue screens automatic disappearance after X seconds

https://jira.secutix.com/browse/TIX2-2137 Ticket activation / green & blue screen don't disappear by themselves if no click.

  • Ticket activation green & blue screens is used to display gate/entrance/turnstile information on the screen.

  • Change previous behavior: the spectator must tap the colored screen to remove it.
  • Change new behavior:
    • The spectator must tap the colored screen to remove it, if the new application setting color.fading.countdown is set to 0 (default 0).
    • The colored screen is automatically removed, after X seconds set in the the new application setting color.fading.countdown.

Anchor
More flexibility on in-app Promos
More flexibility on in-app Promos
More flexibility on in-app Promos

https://jira.secutix.com/browse/TIX2-383 As an AdminTool user, I have more flexibility when setting Promos in the app.

  • 1 or 2 free Promos

    • As an AdminTool user, I can set in AdminTool / Settings / Application Settings and Multilingual Settings up to 2 Promos in the app, with the following parameters: Image Url, Position, Title, Description, Url.

    • Change previous behavior: These Promos will be displayed as long as the wallet owner has at least one active or future ticket.

    • Change new behavior: These Promos will be always displayed (i.e. no condition on ticket).
  • 1 "thank you for attending..." Promo → no change

    • As an Organizer, I can ask TIXnGO to set one "thank you for attending..." with their logo in the backend.

    • This Promo will be displayed as long as the wallet owner has no more active, nor future, but at least one past ticket.

    • This one is in Crowdin.

  • Relative position between Events List Promo 1 and Promo 2 → no change

    • website_first

    • otherapp_first

Anchor
My Profile mandatory information with asterisks *
My Profile mandatory information with asterisks *
My Profile mandatory information with asterisks *

https://jira.secutix.com/browse/TIX2-1987 As a wallet user, I see an asterisk ("*") next to mandatory fields.

  • If the gender parameter is optional  if the gender parameter is mandatory:

Anchor
Registration code 5 tries and same code for 5 times
Registration code 5 tries and same code for 5 times
Registration code: 5 tries and same code for 5 times

https://jira.secutix.com/browse/TIX2-181 As a wallet user, I receive by email the same registration code 5 times in a row, AND I can try to enter the registration code at a maximum 5 times.

  • As a wallet user, I receive by email the same registration code 5 times in a row (i.e. first email, and then if tapping up to 4 times on "I did not receive my registration code: Resend"), then the registration code changes for the next 5 "Resend" requests, and so on. Sending 5 times the same registration code will help in case of bad network, we want to make sure the end user will enter the correct registration code.

  • As a wallet user, I can enter and confirm a registration code 5 times max, then the wallet will request me to ask for a new registration code. This is a security measure to avoid brut force attack on the backend through API while registering, the backend should grant only 5 tries. After that, the end user will have to ask for a new registration code. The mobile app properly displays and explains the 5 unsuccessful tries and that a new code is required.

Anchor
2FA to access the AdminTool
2FA to access the AdminTool
2FA to access the AdminTool

https://jira.secutix.com/browse/TIX2-1157 As a AdminTool 2.0 user, I have to pass a Second Factor Authentification (2FA)

  • In the way to increase the security of the system, the organizer admin-user (AU) can enable/disable a Second Factor Authentification (2FA) on the AdminTool for the users (i.e. support-user (SU), basic-user (BU), moderator (Mod)). The feature is disabled by default. If the organizer also wants to activate the 2FA for the AU, they should contact TIXNGO as an additional service.
  • Experience
    • image-2022-11-16-17-36-01-286.png
    • At the first login, a QR-Code is displayed to set the secret tokens (e.g. in Google Authenticator mobile app).
    • After a first successful login, at the next logins, the user inputs the real time 6-digit secret code (3 attempts max).
    • The AU can force the display of a new QR-Code at the next login if needed (which invalid the previous one).
  • A comprehensive manual is available in the Backoffice manual / 2-Factor Understanding Multifactor Authentication.