pjdohertygis / SARCOP

This is a GitHub page for recording and resolving issues related to SARCOP.
https://nsargc.napsgfoundation.org/
GNU General Public License v3.0
10 stars 0 forks source link

QuickCapture: Partial login issue with public project, can collect but not send data #228

Closed pjdohertygis closed 6 months ago

pjdohertygis commented 1 year ago

When a user uses our "Sandbox" QuickCapture project (shared with Everyone via Hub), they occasionally will hit an issue where they can collect data with QuickCapture but cannot send the data. The end user will go to the map page, click Send, but there is simply no response or message. It just shows that there is data that needs to be sent.

The only way to fix this is to know that you need to close the project and go to the "profile" page and sign-in again. The profile will have a tiny orange dot on it, but the user likely won't see it, especially if they are already in the project.

This may not be a bug, but I do think that is a gap. The end user will have no way of knowing why they cannot send data and assume that it is out of their control. Could there be message that tells them about this issue? It also might be a unique scenario where it is a public project, but a user who has signed-in in the past.

This happened to me yesterday even though I never intentionally logged out of the app.

Below is what the user will see if this issue is occurring, the solution is just to sign-in. This is from the June 8th CO-TF1 exercise, sorry I could not get a screenshot. image

I'll post a video of what I saw yesterday in the comments.

pjdohertygis commented 1 year ago

Here is what I saw yesterday - I didn't know what the problem was so did not video the solution - only figured it out afterwards. I kept tapping on the send button, but nothing happened. https://user-images.githubusercontent.com/4256979/180497097-3b106c07-b88a-4569-b43c-31e78269b3c4.MOV

xiao8579 commented 1 year ago

@pjdohertygis This could just be a network time-out issue, or user's token expiration. Can you try sending via a good network connection? Or try sign out and sign in again to send? (captured data will not be discarded if you sign out).

pjdohertygis commented 1 year ago

Yes I think that may be the cause @xiao8579 - some sort of token timeout. However, the project and services are public so it is an odd behavior. It seems to only happen to those that were at some point signed in. Going to the profile and signing in fixed it. But because the SEND button just doesn't even respond to the tapping, the end user is left confused.

xiao8579 commented 1 year ago

The app should have displayed a red dot indicator on the user's profile pane to suggest signing in again to refresh the token. This is our current solution in case of token expiration on the app.

JohnHasthorpe commented 1 year ago

In 1.15.95 the following error message will display each time a project is opened. image Does that work for you @pjdohertygis?

pjdohertygis commented 1 year ago

@xiao8579 @IsmaelInRedlands any idea how often tokens will expire? We just had a bunch of people get a notice that they're logged out but with no rhyme or reason. They thought maybe it was because we made a minor update to the project but I am guessing the tokens are just on some sort of timer?

JohnHasthorpe commented 1 year ago

@pjdohertygis:

As long as the refresh token is valid, you should not see an orange dot.

The app will try to keep the refresh token alive by getting a new refresh token on opening the app. If this token refresh fails, this is the only time you will see the orange dot.

Does this sound consistent with what you are seeing? The other thing to check is whether the users are sharing a login. This could result in all users being affected by an expired/failed access token.

A project update would not have an effect on the token.

pjdohertygis commented 1 year ago

2 weeks makes sense with what we saw a few months ago in CO-TF1 training. But this newer issue almost seems like it is related to the 30 minute refresh token...I'll try to get more details and sent an email to the QuickCapture email.