Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Scanning Attendee Spams Toast #1925

Open
1 of 6 tasks
Kaz-ookid opened this issue Jun 12, 2024 · 0 comments
Open
1 of 6 tasks

[BUG] Scanning Attendee Spams Toast #1925

Kaz-ookid opened this issue Jun 12, 2024 · 0 comments
Labels
bug Something isn't working fe2-android

Comments

@Kaz-ookid
Copy link
Contributor

Kaz-ookid commented Jun 12, 2024

Description

As an organizer on a FE2 device, when scanning attendees we get a first successful toast, and get afterward 10s of error toasts "Attendee already scanned".

Expected behavior

A successful scan should not be followed directly by failed scan, and let the user the chance to turn the camera away from this scanned QR code before infinitely trying to scan it again.

How to reproduce

  1. Create a LAO, Join it with another device, create a RollCall
  2. Scan the second device with the organizer device and quickly turn the camera away (to not get too much toasts queuing)
  3. See the Successful Toast for a few seconds
  4. See the infinitely succeeding error "Attendee already scanned"
Front-ends:
  • Fe1-Web (please include browser's names & version)
  • Fe2-Android (please specify if phone or emulation, and Android version)
  • Not applicable
Back-ends:
  • Be1-Go
  • Be2-Scala
  • Not applicable

Impact

Decent user experience impact, as it is a commonly used feature. If an organizer wants to scan multiple people at a time, won't be able to see if the scans are successful as the app is spammed with error toasts from the previously scanned QRs.

Possible root cause

The program trying to scan a lot of times per second, thus successfully scanning on the first attempt and failing on the next ones. The user does not have the time to pull away from the QR before queuing a lot of error toasts.

Possible solution

Have a filter list of recently scanned tokens, where those tokens are remove from the list after 2 or 3 seconds. When scanning a QR (regardless to if its scanned already or not), if it is in the list : do nothing, else : add it to the list.

Easy way could be the list to be a list of mappings: token -> timestamp of scanning. If current time - timestamp is greater than a given time, remove it from the list.

@Kaz-ookid Kaz-ookid added bug Something isn't working fe2-android labels Jun 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working fe2-android
Projects
None yet
Development

No branches or pull requests

1 participant