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

Submission status via websockets #1200

Draft
wants to merge 20 commits into
base: master
Choose a base branch
from
Draft

Conversation

meissadia
Copy link
Contributor

@meissadia meissadia commented Nov 19, 2021

Closes #591

Overview

  • Switches from polling for Submission status to listening for updates via websockets
  • Adds a progress bar for each phase of Submission processing

Summary of Functionality -> Files

Allow websocket connections from the NGINX server

  • nginx/nginx.conf

We still use the polling mechanism to track the Upload progress. Once we're passed that step, we switch to a websocket connection for live updates from the Platform.

  • src/filing/actions/pollForProgress.js

This is where we establish the websocket connection, parse the progress updates, and update our Redux store with the result.

  • src/filing/actions/listenForProgress.js

Modifications and additions to our Redux store for tracking (and debugging) our websocket progress updates.

  • src/filing/index.js
  • src/filing/reducers/index.js
  • src/filing/constants/index.js
  • src/filing/actions/fetchUpload.js
  • src/filing/actions/requestProcessingProgress.js
  • src/filing/actions/receiveProcessingProgress.js
  • src/filing/reducers/processProgress.js

Changes to these files were two-fold:

  1. Improves the labels shown in the Filing/Submission navigation bar. In the case where a Submission does not trigger Quality/Macro edits, we now show labels that reflect that. i.e. 'No Quality Edits' instead of 'Quality Edits Verified'.
  2. Improves the user flow by directing users to the next step in the Filing process that requires action. For example, if their Submission did not trigger any edits, we send them straight to the Signing page. If their Submission has Macro but not Quality edits, they no longer have to click through the screen for Quality edits, though that page is still accessible via the SubmissionNav.
  • src/filing/institutions/Progress.jsx
  • src/filing/institutions/ViewButton.jsx
  • src/filing/submission/Nav.jsx
  • src/filing/submission/NavButton.jsx
  • src/filing/submission/upload/ValidationProgress.css

Screen Shot 2022-03-17 at 5 03 12 PM


Components used in the graphical display of the Filing process progress.

  • src/filing/submission/upload/index.jsx
  • src/filing/submission/upload/container.jsx
  • src/filing/submission/upload/FileProcessingProgress.css
  • src/filing/submission/upload/FileProcessingProgress.jsx
  • src/filing/submission/upload/ProgressBar/constants.js
  • src/filing/submission/upload/ProgressBar/index.jsx
  • src/filing/submission/upload/ProgressBar/StackedProgressBars.css
  • src/filing/submission/upload/ProgressBar/StackedProgressBars.jsx
  • src/filing/submission/upload/ProgressBar/ProgressBar.css
  • src/filing/submission/upload/ProgressBar/ProgressBar.jsx
  • src/filing/submission/upload/UploadBar.jsx
progress-bar.mov

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

Successfully merging this pull request may close these issues.

Implement progress tracker with websockets
1 participant