Published — v. 149

2022 Weisshorn V3

Table of contents

  1. Big bangs
    1. Ticket bulk transfer
    2. Transfer a ticket from the AdminTool 2.0
    3. Registration & My Profile and Assignee fields configurator
    4. Mobile account deletion from AdminTool
    5. One-time generated pincode to login into the wallet
    6. Fast manual activation on "match number"
  2. Cool new features
    1. In-app emails language selectionIn-app app language selection
    2. In-app consent to updated legal document
    3. Latest synchronization timestamp display
    4. Anonymize assignees data after x weeks
    5. Transfer auto-cancellation email and push notification
    6. Secret code to enable/disable screenshot and screen recording protection
    7. AdminTool 2.0 HTLM editor & viewer
    8. AdminTool 2.0 new moderator user profile
    9. AdminTool 2.0 actions always displayed at glance
    10. KeyCloak SSO integration
    11. Guidance webpage for user to download the app
    12. Wristband active icon for hospitality room
  3. Small new features
    1. Yellow/green ribbon
    2. Bluetooth banner reminder for Bluetooth Beacon activationBluetooth and Location pop-up reminders for Bluetooth Beacon activation
    3. Encrypt the activation and deactivation codes in-app + Encrypt personal information data in-app
    4. Design in-app standard button and spinner animations
    5. Retrieve ticket status interface errors (time out)
    6. AdminTool 2.0 Group event(s) overview report / 2 additional fields: failure and transferFailure
  4. Performance
    1. Resale section in the burger menu

Product release notes

Product features

Mobile account deletion from AdminTool

https://jira.secutix.com/browse/TIX2-570 As AdminTool 2.0 admin-user (AU), I can delete/anonymize spectator in the AdminTool 2.0

  • The organizer can delete/anonymize spectator per App Id in the AdminTool 2.0. There is a warning if tickets are associated with active or future tickets. The spectator will be notified accordingly.
    • If one or more tickets are associated with this spectator on this App Id (two options of actions):
    • If no tickets are associated with this spectator on this App Id (only one option of action):
  • If the organizer has a SSO, they must as well delete the account there at the same time.
  • Introduce new endpoint to get ticket summary (GET organizer/spectators/{spectatorId}/ticketSummary); the spectatorId is the spectator email.
  • Another endpoint to anonymize spectator (DELETE organizer/spectators/{spectatorId}); the spectatorId is the spectator email.

Registration & My Profile and Assignee fields configurator

https://jira.secutix.com/browse/TIX2-1068 As an organizer, I can change my setting for profile/assign screens

  • The organizer can configure for each App ID the different predefined fields in Registration & My Profile and Assignee, as "Mandatory", "Optional" or "Not visible". The solution only supports this predefined list of fields. The mobile wallet need to be killed and reopened to take into account the live-changes. 
    • Registration & My Profile configuration:
    • Assignment configuration:
      • NB: The legacy configuration in the AdminTool 2.0 / Settings / Application Features tab "use-assign-reason", "mandatory-assign-reason" and "ticketHolder.personal.information.mandatory" have been removed.
    • When a field is set as: 
      • “Mandatory”, spectators can’t update, or do another action if it is empty. A red star * will be displayed next to the label in the mobile app.
      • “Optional”, this field is displayed on the mobile app, and allow spectator to edit if they want to.
      • “Not visible”, this field is not displayed in the mobile app.

Design: in-app standard button and spinner animations

https://jira.secutix.com/browse/TIX2-1854 Improve spinner animation of app language change

  • TIXNGO is now better indicating processing, success, or error status while executing.
  • Test case OK (changing app language):Test case NotOK (no network):All buttons one-standard:

In-app consent to updated legal document

https://jira.secutix.com/browse/TIX2-1073 [All apps] As an organizer, I can request registered app users to consent to updated legal document (e.g. EULA, Privacy Notice)

  • When an organizer updates legal document, the registered TIXNGO wallet user can be required to provide his/her respective consent, depending on the new AdminTool 2.0 / Settings / Application Settings:
  • A pop-up will be displayed every time the app opens, where the only option is to provide consent on all legal documents (similar experience than during the initial registration process).
  • The in-app consent is then sent and saved into the TIXNGO backend with the value (e.g. 2.1.7). The initial value in "NULL".

Fast manual activation/check on "match number"

https://jira.secutix.com/browse/TIX2-343 Manual Activation / Deactivation on match number

  • As an alternative to the manual activation with a secret code (per event) located on the secret zone of the ticket QR-Code, the organizer can set a faster manual activation without any code located on the secret zone of the ticket "match number", and available only during the Event Day and Event Day+1.
  • Please note that the manual check feature is following the same Event Day and Event Day+1 rule.
  • AdminTool 2.0 / Settings / Application Features / Enable quick manual activation feature (per Mobile App ID)  
  • AdminTool 2.0 / Events / Edit event / Event name / Event number
  • AdminTool 2.0 / Support ticket / Ticket status history 
  • Deactivation will have to be done manually as the standard initial solution. One by one ticket.

Wristband active icon for hospitality room

https://jira.secutix.com/browse/TIX2-203 As a wallet user, I’d like to see a wristband icon

  • As an organizer, I can sell tickets with a wristband option for hospitality room, where a wristband icon is displayed on the ticket and can be manually activated with a secret code.
  • The value of the hospitality room is set at injection in ticket.ticketDetails.hidden with the key "hosp_room".
  • The steward double taps on the wristband icon and enters a secret code to activate the green checked display of the wristband icon.
  • Deactivation will have to be done manually as the standard manual activation/deactivation initial solution. One by one ticket. 

One-time generated pincode to login into the wallet

https://jira.secutix.com/browse/TIX2-1413 As a wallet user, I don't need to use a password to login.

  • As an organizer, I can choose between the traditional persistent password to login into the wallet, or a new concept of one-time-use pincode.
  • The pincode is a 6-digit code, one-time generated, delivered by email to the wallet owner. It is displayed in the AdminTool for troubleshooting purpose. It disappears from the backend once a successful login occurred.

Guidance webpage for user to download the app

https://jira.secutix.com/browse/TIX2-1635 "Open this page on your phone device" website

  • When a user clicks on the link "HERE" from ticket injection/transfer mail on desktop, the FAQ website usually is displayed.
  • To solve this problem we created for one specific organizer the following webpage: https://r.TIXNGO.io/fwc22/ 

Retrieve ticket status interface errors (time out)

https://jira.secutix.com/browse/TIX2-1538 Test event - retrieve ticket status interface errors (time out)

  • The old behavior: Feedback interface returns ticket details with owner's info. To get owner's info TIXNGO needs to query the Blockchain. For each ticket, Backend sends a request to Blockchain → For 200 tickets, there are would be 200 requests, which leads to performance issue.
  • The improvement: Get all tickets owners from Blockchain in a single request. Response time was reduced around 3 times with batchSize=200.

KeyCloak SSO integration

https://jira.secutix.com/browse/TIX2-1408 One event organizer app to integrate with KeyCloak SSO: As a ticket buyer, I can use my credentials created at the purchase step to login on the branded app.

  • Spectator can login to the branded app by KeyCloak SSO account
  • Account deletion - Organizer can configure and switch the account deletion mode
    • Standard TIXNGO process
    • Manage by Organizer: When the spectator clicks on the Delete account link, it will redirect the spectator to the configured URL on Crowdin (key: "delete_account_url”)

Encrypt personal information data in-app

https://jira.secutix.com/browse/TIX2-252 Encrypt personal information data with the encryption mechanism in place.

  • Spectator's personal data is properly encrypted and decrypted by TIXNGO mobile app.

  • Non-encrypted: , Encrypted: 

Encrypt the activation and deactivation codes in-app

https://jira.secutix.com/browse/TIX2-178 Encrypt the activation and deactivation codes communicated to app.

  • Activation and deactivation codes must be encrypted by the Backend when returning to mobile (SHA256(activation_code)), then mobile will decrypt it (ticket.security.pin) and use the result to decrypt the barcode (verified on mobile side: SHA256(userInput) == encryptedPin).
  • TIXNGO recommends to always set it as TRUE to enhance security.

Bluetooth and Location pop-up reminders for Bluetooth Beacon activation

https://jira.secutix.com/browse/TIX2-1579 Bluetooth reminder and Location reminder for Beacon activation

  • For iOS: on Match day (Closest match day), a pop-up reminds user to turn on Bluetooth to activate ticket.
  • For Android: on Match day (Closest match day), a pop-up reminds user to turn on Bluetooth to activate ticket, and then another pop-up reminds user to turn on Location to activate ticket.

Bluetooth banner reminder for Bluetooth Beacon activation

https://jira.secutix.com/browse/TIX2-1654 [SDK] rework on UI of permission reminder

  • When organizer turn on Bluetooth Beacon activation in the Backoffice AdminTool 2.0, a banner recommends user to allow Bluetooth and Location permissions. It always appears in the main event list screen in case the user denies the permission of Bluetooth.

AdminTool 2.0 Group event(s) overview report / 2 additional fields: failure and transferFailure

https://jira.secutix.com/browse/TIX2-1697 As an organizer, I want to see all tickets at current status in group event(s) overview report

https://jira.secutix.com/browse/TIX2-1709 [Admintool 2.0] Add 2 additional fields for Event overview report screen

(c.f. Match day overview per event in 2022 Weisshorn V2)

  • In group event(s) overview report has 2 new columns after the "TRANSFERRED PENDING" columns:
    • "TRANSFERRED FAILURE": the number of tickets has current status = "FAILURE_TRANSFER"
    • "FAILURE": the number of tickets has current status = "FAILURE"

AdminTool 2.0 actions always displayed at glance

https://jira.secutix.com/browse/TIX2-1213 As an organizer, I can see actions at a glance in the screens that contains table content

AdminTool 2.0 new moderator user profile

https://jira.secutix.com/browse/TIX2-1704 As an AdminTool 2.0 moderator-user (Mod), I have all basic-user (BU) right and can also send push notification campaigns (so far only admin-user (AU)).

  • Pre-defined roles:
    1. admin-user (AU): has all the privileges listed below.
    2. support-user (SU): has some limited privileges listed below (mostly read privileges) + Delete Sessions (logout of the spectator).
    3. basic-user (BU): has all SU privileges + Delete ticket.
    4. moderator (Mod): has all BU privileges + Notification Campaigns

Yellow/green ribbon

https://jira.secutix.com/browse/TIX2-269 As a SDK app user, I can see a yellow/green ribbon on event day after doors open, to prompt me to activate Bluetooth.

  • On match day, Spectators can see information ribbons on their tickets, which can remind and guide spectators to get the right way to access an event.
  • When tickets are activated by beacons or manually activated, navigation screens will be displayed. Helpful messages inform spectators about ticket activation and the location to access an event.

AdminTool 2.0 HTLM editor & viewer

Anonymize assignees data after x weeks

https://jira.secutix.com/browse/TIX2-536 As an organizer, I want to have all data related to assignees deleted 4 weeks after the event.

  • Setting
    • New Organizer setting "Anonymize ticket holder information after x weeks the event ends (set 0 to turn OFF the feature)", default value = 0.
    • Unit: days. Min: 1 day. Max 1095 days (i.e. 3 years) (an error is displayed if the operator tries to enter a bigger number).
  • Results
    • "This is ticket is not hold by anyone anymore."

Transfer auto-cancellation email and push notification

https://jira.secutix.com/browse/TIX2-1211 As an organizer I would like to have a possibility to send an email and push notifications about transfer auto-cancellation to a sende As an organizer I would like to have a possibility to send an email and push notifications about transfer auto-cancellation to a sender

  • While tickets were auto-canceled by the system, senders will be received an email and push notifications. At the mobile notify center, when clicking on the push notification, it must open the event list screen in mobile apps.
  • Related to email and push message content:
    • When the setting key in Multilingual Settings is empty (Multi-language):
      • email.information.automaticallycancel.sender.subject OR email.information.automaticallycancel.sender.body is empty: then email subject, body = default content. (at the Reference)
      • notification.information.automaticallycancel.title OR notification.information.automaticallycancel.content is empty: then push message title, content = default content. (at the Reference)
    • Otherwise, static message content will be loaded if it is not empty.
  • Variable keys on the Multilingual Settings screen:
  • When the waiting time expired (key: ticket.approval.cancel.delay), the following handle must be triggered:

    • Auto send an email:
      • Mail to: the sender, who transferred his tickets, and his tickets were auto-canceled by the system.
      • Email subject: value of (key = email.information.automaticallycancel.sender.subject)
      • Email body: value of (key = email.information.automaticallycancel.sender.body)
    • Auto send push notification:
      • Title (new key): value of (key = notification.information.automaticallycancel.title)
      • Content (new key): value of (key = notification.information.automaticallycancel.content)
  • Reference: Default email contents and default push notifications at below:

In-app app language selection

https://jira.secutix.com/browse/TIX2-41 Mobile app: as a user I want to be able to change/choose app language directly in the app

  • By default the language of the app is defined based on phone language. However user has the possibility to choose another language from the list of available ones in dropdown list in main menu section.
  • The info must be sent back to the back-end as the user language (so that he/she receives emails/notifications in that language).

In-app emails language selection

https://jira.secutix.com/browse/TIX2-1012 As a wallet user I want to be able to change/choose my preference language for all communications

  • A new field (dropdown) just after the Birth date, name "Language of my emails".
  • List of values in dropdown will get from list of app languages. Spectator can update this value.

Resale section in the burger menu

https://jira.secutix.com/browse/TIX2-372 If ticket is on resale/resold, it should be displayed only in "Resale" section of the burger menu, but not in deleted.

Ticket bulk transfer

https://jira.secutix.com/browse/TIX2-42 As a wallet user, I want to be able to transfer tickets in bulk.

  • Only tickets, which are allowed to be transferred can be selected. The non-transferable tickets are gray out
  • The ticket holder is notified he/she can transfer at once a maximum of 5 tickets.

Secret code to enable/disable screenshot and screen recording protection

https://jira.secutix.com/browse/TIX2-772 As an organizer, I know a secret code to enable/disable screenshot and screen recording.

  • In the way to have easier operations & troubleshooting, allow the organizer staff to enable/disable the new feature Screenshot and screen recording protection https://jira.secutix.com/browse/TIX2-2 Screenshot and screen recording protection.
  • New application setting keys in AdminTool "Protect screenshot and screen recording", by default is TRUE, as well as "Secret code to change in-app the protect screenshot and screen recording setting", by default is 159874.    
    • If the value is TRUE, then the feature in https://jira.secutix.com/browse/TIX2-2 is enabled (i.e. use the ScreenShieldKit SDK). If the value is FALSE, the protection is not used at all (i.e. the ScreenShieldKit SDK is not used at all) and screenshot and screen recording can be taken with QR code without any protection (i.e. extra layer displayed). However:
      • If the user triple taps on the bottom of the home screen where all the version of the app, model of the phone (i.e. a similar procedure than the manual activation of the ticket, but in a different location on the screen), the user can enter the secret code to change the current screenshot and screenshot protection setting (TRUE/FALSE) for this Mobile AppID.  
        • Login out/in keep the setting. Reinstalling the app remove the setting.
    • These new application setting keys in AdminTool "Protect screenshot and screen recording" and "Secret code to change in-app the protect screenshot and screen recording setting" will impact both iOS and Android, and no build app would be needed.

Transfer a ticket from the AdminTool 2.0

https://jira.secutix.com/browse/TIX2-537 As an organizer, I want to be able to transfer spectators ticket to another email address.

  • AdminTool user (admin-user - AU and support-user SU, but not basic-user BU) can trigger a transfer of the ticket to another email address
    • The ticket can be transferred regardless of transfer rules
    • The organizer must provide a reason (mandatory, free text)
      • This transfer reason will be displayed in the Additional information of the Ticket history log with format: Admin Tool transfer: <transfer reason free text>
        screenshot-1.png
    • The BE shall log the ticket status as a normal transfer (with a reason of course)
    • The ticket cannot be transferred if it is controlled or the event is expired
    • Deleted ticket shouldn't be transferred => Hide send button

Latest synchronization timestamp display

https://jira.secutix.com/browse/TIX2-377 Add timestamp of the latest synchronization

  • When support the spectator, the organizer needs to know when the phone/app was last time online and synchronized with the backend, in order to provide better actions for the spectator.
  • In the Support spectator / Mobile logs of spectator screen
    • There is an additional line, visible at a glance, showing last time that the phone/app synchronized with TIXNGO: <<Last mobile-backend synchronization: x>>.
    • The time zone in the additional line will be the same as the time zone of the log lines (use browser timezone).

© TIXNGO 2023 - Login