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

Client should check for new messages in background #75

Closed
ultimatecoder opened this issue Oct 26, 2018 · 7 comments
Closed

Client should check for new messages in background #75

ultimatecoder opened this issue Oct 26, 2018 · 7 comments
Milestone

Comments

@ultimatecoder
Copy link
Contributor

Problem: A Journalist is logged in and playing with existing messages. During that time if a Source is posting a new message or sharing a document, The journalist will not be notified for it. The only way to get those messages/documents is by doing re-login to the client.

Userstory: As a Journalist, I would expect SecureDrop client to check for new messages automatically in background and display when available.

@redshiftzero redshiftzero added this to the 0.1alpha milestone Oct 26, 2018
@ninavizz
Copy link
Member

See "Clickable Interaction Patterns." https://github.com/freedomofpress/securedrop-ux/wiki/Qubes-Journalist-Workstation#production-things

The "Activity Messaging" item demonstrates the app opening (click the desktop icon, then 'Sign In'). Tentatively, the top-left messaging pattern shown in the prototype for when the app opens, I also think would work well to surface the background task activity you're proposing here. Thoughts?

@ntoll
Copy link
Contributor

ntoll commented Oct 29, 2018

LGTM. Click on the "Refresh" button to kick off a sync, right..?

@ultimatecoder
Copy link
Contributor Author

@ninavizz The prototype is great! It is such an impressive that went through it multiple times initially when you shared.

Sync with a refresh button is not looking like a good option to be honest. To me, this client application is similar to Signal app or Inbox of email (preferably web). Does a User click a refresh buttons for getting new mails/messages? No! The app server push new things to a client. Even showing last sync when user isn't interested in being offline is unappropriated. At present, automatically firing a pull request at short interval can replicate the sync behavior. In the future, there are other ways to solves this. I am not investing my energy to explain them in detail here. Thanks!

Note: On my comments, I assume Network (Tor) is not too much slow for our Journalist.

@ninavizz
Copy link
Member

So, to clarify—users in testing have demonstrated a desire to see a "Refresh" button there.

As with GMail, there's a sense of reassurance that the manual option is there. It's nice to have the option to check one's email 2 minutes after the last automated every-10-minutes background fetch. Much as that's appeasing an irrational emotional need, it's still assuaging user anxiety... which while irrational, is important. Especially in high security contexts. Kind of like an elevator's "Close" button.

That's literally the only reason it exists. Does that make sense @ultimatecoder?

The idea has not been to depend upon manual syncs, but to rather do syncs automatically—to train users to expect these automated syncs with the persistent activity messaging—and then next to that messaging, having available to them a button to repeat that behavior as-needed. @ntoll Does that make sense?

@redshiftzero
Copy link
Contributor

the email comparison makes a lot of sense to me, thanks for the explanation @ninavizz :)

So @ntoll added functionality to automatically sync every 5 minutes in #87 🎉

@joshuathayer has a refresh button in a branch (want to make a separate PR with the refresh button @joshuathayer?) then I think we can close this ticket.

@ninavizz
Copy link
Member

ninavizz commented Oct 30, 2018

5 minutes is a great refresh timbox, all sounds good! :)

(and of course, in Alpha, the refresh button and the activity messaging do not need to be co-located)

@ultimatecoder
Copy link
Contributor Author

@ninavizz Sorry for delayed response. It makes sense. Thanks for explaining :)

legoktm pushed a commit that referenced this issue Dec 11, 2023
Add the fixture for test_json_response_with_timeout
legoktm pushed a commit that referenced this issue Dec 11, 2023
legoktm pushed a commit that referenced this issue Dec 15, 2023
Updates APIProxy class related tests
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

4 participants