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

Allow socket access through access token authentication #339

Open
hjstn opened this issue Oct 4, 2022 · 2 comments
Open

Allow socket access through access token authentication #339

hjstn opened this issue Oct 4, 2022 · 2 comments

Comments

@hjstn
Copy link

hjstn commented Oct 4, 2022

Currently, the socket that allows real-time updates on the Queue verifies user authentication using the stored JWT token, which is only present if the user authenticates through Shibboleth. This prevents other services (e.g. apps, etc.) from getting real-time information such as the queue status without regularly polling the Queue's other APIs.

@echuber2
Copy link
Collaborator

echuber2 commented Oct 6, 2022

Can you give more information about the use case for real-time updates in your course app? Is polling the API causing issues?

@hjstn
Copy link
Author

hjstn commented Oct 7, 2022

There were a few ideas that I had considered which I believe would beneift from real-time information:

  1. An interactive display board showing the current queue status - polling would work fine but introduces additional complexity in identifying the changes between each poll.
  2. A native queue app for course staff to interact with the queue more easily on mobile devices - polling would probably not work well unless on a very short interval, or it could potentially lead to multiple staff attempting to answer the same question or similar issues.

I think that it may be better to bring up a WebView to handle Shibboleth authentication in the latter case and use the real-time socket as normal, but I'm not sure what the best strategy to work around the lack of real-time information for the first case.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants