Page MenuHomePhabricator

Allow users to provide feedback from within the app
Open, MediumPublic

Description

Why are we doing this?

We would like to have a way for users to provide feedback to the development team via the app. Users can report bugs, issues or general comments.

Acceptance criteria

  • A user can submit feedback through an open text field within the feedback menu on the app
  • They will not be required to provide any identifiable information and can submit feedback anonymously
  • The user will receive a comment letting them know that we are thankful for their feedback. "Thank you for your feedback!"
  • As feedback is anonymous, we will not communicate back to the user with responses to their questions/comments
  • Will need to work without a user providing/having an email address or phone number
  • As there is no rating or comments on the KaiStore at this point, the feedback will be stored by and for the product dev team only
  • A user understands that by giving feedback, they accept the privacy policy and terms of use

Options for survey data collection

  • Google forms, Qualtrics or Survey Monkey. Check whether we can support either of these.

Proposed designs

Zeplin ➡ https://app.zeplin.io/project/58dc46f4a83d1e477dd83859/dashboard?seid=5eafd44fb7bd22b0d503847c

Empty stateReady to sendConfirmation
Focused StateUpdated Settings Menu

Design details

  • "Send" softkey is not visible to users before entering the feedback.
  • If control is on text box then cursor keeps blinking until users start writing feedback.
  • If there is multiline text then allow for scrolling within the text box.
  • Confirmation message appears in popup form on main feedback screen.
  • When other links are focused then text box becomes inactive.

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
AMuigai triaged this task as Medium priority.Feb 10 2020, 1:28 PM

@AMuigai do you find a specific route url for this? it's better to have this solved asap before the other team's review.

SGautam_WMF added a subscriber: SGautam_WMF.EditedMar 10 2020, 6:38 AM

Here are the different states of feedback screens. will produce the final version once we receive the copy from legal.

Screen 1 - This is by default view which a user will see after selecting the Feedback.

Screen2 - A scroll bar will appear once a user fills the entire text box.

Screen3 - Shows an error state when a user tries to send feedback without writing anything.

Screen4 - Action has been successful.

.
.
.
AMuigai updated the task description. (Show Details)Mar 11 2020, 2:18 PM
AMuigai updated the task description. (Show Details)Mar 12 2020, 6:29 AM
AMuigai moved this task from Backlog to Next up on the Inuka-Team board.Apr 6 2020, 1:15 PM
AMuigai renamed this task from Help and feedback screen to Allow users to provide feedback from within the app.Apr 6 2020, 4:14 PM
AMuigai updated the task description. (Show Details)
AMuigai removed a subscriber: cmadeo.
AMuigai updated the task description. (Show Details)Apr 6 2020, 8:53 PM
AMuigai edited projects, added Inuka-Team (Kanban); removed Inuka-Team.
SGautam_WMF updated the task description. (Show Details)Apr 16 2020, 1:26 PM
SGautam_WMF updated the task description. (Show Details)
SGautam_WMF updated the task description. (Show Details)Apr 29 2020, 3:06 PM
Restricted Application added a subscriber: Liuxinyu970226. · View Herald TranscriptApr 29 2020, 3:06 PM
SGautam_WMF updated the task description. (Show Details)Apr 29 2020, 3:07 PM

Terms of survey statement
Privacy policy
Terms of use

Could we make a note in thread of the URLs these hyperlinks should route to?

@eamedina sure, I will update it.

SGautam_WMF updated the task description. (Show Details)Mon, May 4, 8:47 AM
SGautam_WMF updated the task description. (Show Details)
SGautam_WMF updated the task description. (Show Details)
SGautam_WMF updated the task description. (Show Details)Mon, May 4, 8:51 AM
SGautam_WMF updated the task description. (Show Details)
SGautam_WMF updated the task description. (Show Details)Mon, May 4, 8:55 AM

@eamedina Updating our offline discussion here, I have made some minor design changes. Also, I have updated note on zeplink with the links for the privacy policy, survey statement, etc.

Awesome, thanks Sudhanshu.

Leaving the PR link here, at this point it's only a draft PR (so still work in progress):

https://github.com/wikimedia/wikipedia-kaios/pull/216

eamedina moved this task from Dev to Code Review on the Inuka-Team (Kanban) board.Wed, May 6, 9:52 PM
eamedina moved this task from Code Review to Dev on the Inuka-Team (Kanban) board.
eamedina moved this task from Dev to Code Review on the Inuka-Team (Kanban) board.Wed, May 13, 1:26 PM

Hey @SGautam_WMF, surfacing this again after picking up the PR again. A couple of feedback points came up during our code review, this is regarding what happens when a user attempts to send the feedback message:

I don't think we should let the users select RSK (send) before there's any text in the textarea. We can easily handle that by looking at message. I find the "error" message completely unnecessary.

On success, we should direct people away from the form. Filling a form successfully never leads to the same empty form (unless it's a repetitive task by nature). It should lead to a confirmation and then to wherever the user was before (settings menu?). I suggest showing the confirmation message in our regular popup, on top of the feedback form, and going back to /settings when the user OKs the popup.

Also, I found the links in Zeplin 👍. Any update on the terms of survey statement?

Terms of survey statement 
tbu

Privacy policy 
https://foundation.m.wikimedia.org/wiki/Privacy_policy

Terms of use
https://foundation.m.wikimedia.org/wiki/Terms_of_Use/en

On the survey statement, we should have that soon from the legal team now that we decided how we'll store responses. I'll follow up again next week if we don't have it by Monday.

Hey @SGautam_WMF, surfacing this again after picking up the PR again. A couple of feedback points came up during our code review, this is regarding what happens when a user attempts to send the feedback message:

I don't think we should let the users select RSK (send) before there's any text in the textarea. We can easily handle that by looking at message. I find the "error" message completely unnecessary.

That's a good point, how are we imagning to do it? Does the text "Send" still shows to users but RSK physical key is not functioning? or "Send" is disabled but only gets active when users start writing inside the text box?

On success, we should direct people away from the form. Filling a form successfully never leads to the same empty form (unless it's a repetitive task by nature). It should lead to a confirmation and then to wherever the user was before (settings menu?). I suggest showing the confirmation message in our regular popup, on top of the feedback form, and going back to /settings when the user OKs the popup.

It make sense and we can bring back the control to settings menu. The reason I chose to keep the control on "feedback form" as typing long text is not easy on small phones and therefore keeping control there to let users continue to share more but now suggested flow make sense to me while rethinking on it. Regarding confirmation message, for consistency we can keep a regular popup, however, that requires an aditional step(pressing OK) from users before returning to settings menu, instead can we show current confirmation message in the bottom or top of settings menu? Happy to share mockups if required.

Also, I found the links in Zeplin 👍. Any update on the terms of survey statement?

Terms of survey statement 
tbu

Privacy policy 
https://foundation.m.wikimedia.org/wiki/Privacy_policy

Terms of use
https://foundation.m.wikimedia.org/wiki/Terms_of_Use/en
SBisson moved this task from Code Review to Dev on the Inuka-Team (Kanban) board.Thu, May 14, 1:18 PM

Does the text "Send" still shows to users but RSK physical key is not functioning? or "Send" is disabled but only gets active when users start writing inside the text box?

Yea I think both options are feasible here and achieve the same goal, I can follow your advice on what you think is best. To clarify, by "Send is disabled" I understand you are saying the RSK appears empty/blank at first, and then only when there's text written in textarea does the button appear. This can be similar to how 'SELECT' appears on home search bar as user navigates down the search results

Regarding confirmation message, for consistency we can keep a regular popup, however, that requires an aditional step(pressing OK) from users before returning to settings menu, instead can we show current confirmation message in the bottom or top of settings menu? Happy to share mockups if required.

Okay, yea I think in the spirit of getting this important feature right it would be helpful to update mockups so we can all agree on newer version. For example, this point you make...

therefore keeping control there to let users continue to share more

...got me thinking that to give control to the user, another alternative would be:

  • user writes out message, and then presses 'Send'
  • upon successful send, the native half-popup appears with confirmation message and presents the user with two softkey options:
    • one that's to 'OK', which would send the user back to settings
    • another that's 'More feedback?', which would brings the user to the same sending feedback page with the textarea cleared/blank, allowing the user to submit one more time if she so desires
SGautam_WMF moved this task from Dev to Needs Design on the Inuka-Team (Kanban) board.
SGautam_WMF added a project: Design.
SGautam_WMF updated the task description. (Show Details)Mon, May 18, 4:08 AM

@eamedina I have updated the design based on the initial feedback. Let me know if you require any further clarification on it. Shall we also consider a popup( attached draft mockup) when users press "Cancel" softkey while they're in the middle of writing feedback?

SGautam_WMF updated the task description. (Show Details)Mon, May 18, 4:15 AM
SGautam_WMF updated the task description. (Show Details)Mon, May 18, 1:28 PM
SGautam_WMF updated the task description. (Show Details)

@SGautam_WMF awesome, thanks for updating these! I think the updated flow on successful send looks good, I will start working towards that unless the rest of the team would like further updates.

Regarding the cancel confirmation popup, I think it's not a bad idea and suppose it wouldn't hurt. I will let the @AMuigai chime in on that though. I would ask/clarify however: it probably makes sense for that cancel confirmation popup to be displayed only if the user has already type in something, otherwise just show previous page directly.

eamedina claimed this task.Mon, May 18, 4:11 PM
eamedina moved this task from Design doing to Dev on the Inuka-Team (Kanban) board.
eamedina moved this task from Dev to Code Review on the Inuka-Team (Kanban) board.Tue, May 19, 1:46 PM

@eamedina Yes, cancel confirmation popup to be displayed only if the user has already has typed in something, otherwise show the previous page directly.

@AMuigai noted, already included now under code review

Jpita added a subscriber: Jpita.Wed, May 20, 7:10 AM

On the survey statement, we should have that soon from the legal team now that we decided how we'll store responses. I'll follow up again next week if we don't have it by Monday.

@AMuigai where are the responses going to be stored? went through the comments and couldn't find the decision.

@eamedina if you are in an article page, the right arrow goes through the links in a page, the down/up arrow flips pages.
on the send feedback window, the down/up arrow goes through the links.
is there a reason for this behaviour to be different from the rest of the app?
I get it that in order to leave the text box the right arrow is not the best option but once we have the focus on the links we can use the same behaviour as on the rest of the app, no?

found a bug: if you select "send" and, once the "Feedback sent" popup is showing, you use the back button the whole navigation gets crazy:

  • the ok button has no action
  • the cancel button takes us to the Discard popup
  • the send button has no action (expected)

basically, once the "Feedback sent" popup is showing, the back button should have the same behaviour has the OK button as to avoid the user being stuck in this page.

this also happens when the Discard popup is on top, basically the back button needs to be tamed on the popups 😄

I think we miss another scenario when the user in offline mode, should we update the popup form to allow resend action?

Oh right, forgot about that.
QA NOTES:
Test offline mode while on the feedback form and the path to the feedback form

found a bug: if you select "send" and, once the "Feedback sent" popup is showing, you use the back button

@Jpita good find Pita! I have proposed a solution for this bug now, thanks

This comment was removed by AMuigai.
AMuigai updated the task description. (Show Details)Sat, May 23, 7:54 AM
hueitan moved this task from Code Review to QA on the Inuka-Team (Kanban) board.Tue, May 26, 7:45 AM

where is the feedback being sent to?

SBisson added subscribers: nshahquinn-wmf, SBisson.

where is the feedback being sent to?

It is sent to EventLogging. @nshahquinn-wmf and I have validated that it is received.

There are a few ideas regarding what to do when the phone is offline, we should decide how we want to move forward in this thread or in a daily meeting. Some approaches would probably need further design work, one (perhaps temporary) approach I can think of for us to stay most agile is reusing the same offline panel if there's no wifi when the feedback screen is displayed.