Closed Bug 1154251 Opened 10 years ago Closed 10 years ago

[meta] Prevent link generators from clicking their own links

Categories

(Hello (Loop) :: Client, defect, P2)

defect

Tracking

(Not tracked)

RESOLVED FIXED
Iteration:
44.1 - Oct 5

People

(Reporter: RT, Unassigned)

References

Details

(Whiteboard: [link-clicker][improve funnel])

User Story

As a link generator clicking my own Hello URL, I can use the desktop client UI to join the conversation.

UX: https://bug1130425.bugzilla.mozilla.org/attachment.cgi?id=8569948 

Acceptance criteria:
* If a desktop client user opens one of his own Hello URLs in Firefox and clicks the "JOIN" button when not being present in the conversation, the desktop client UI is used to join him to the conversation. The standalone link clicker UI then informs the user that he was joined successfully with the message "You can also open your conversation from the Hello panel."
Current mockups: (Before joining) http://i.sevaan.com/image/02263x1T0G2K; (After joining) http://i.sevaan.com/image/3I392T213l2J 
The words "Hello Panel" could be clicked on to open the panel itself.

* If a desktop client user opens one of his own Hello URLs in Firefox and clicks the "JOIN" button when being present in the conversation already, he gets a message informing him that he is already present in the conversation
Current mockup: http://i.sevaan.com/image/3U3L3C1t0q0c
Underneath the "You're already in this conversation!" have a line of text saying "See conversations you currently have open in the Hello panel.".
The words "Hello Panel" could be clicked on to open the panel itself.

* Send a Google Analytics event when a link clicker is prompted that he is already present in the conversation
* Send a Google Analytics event when a link clicker joins a conversation he created from the desktop client UI

Attachments

(4 obsolete files)

No description provided.
User Story: (updated)
Blocks: 1066019
Rank: 24
Flags: firefox-backlog+
Priority: -- → P2
Whiteboard: [link-clicker]
Attached patch WebChannel PoC (obsolete) — Splinter Review
This is a very basic, rough PoC using WebChannels that I whipped up in a spare bit of time between meetings. This is just enough to get a link-generator to open a link in the conversation window. A few issues that we'll need to think about: - There's no apparent way to detect if the webchannel is available or not, the best we'll be able to do is detect Firefox & timeout expecting a response. Probably want to do this early before the user's likely to click on join. Might be able to do this whilst obtaining context information, and have a short spinner or something. This would also tie in with an improved expired message (one which shows before the user clicks join). - Not sure how to set up permissions for the webchannel to allow localhost for development. http://mxr.mozilla.org/mozilla-central/source/browser/app/permissions may provide a clue. - The patch only works for link-generators at the moment, it'd need more work in the active room store to deal with link clickers. - We'll obviously still need to do a new view on the link-clicker side for post-clicking the link.
Updated US with a requirement for a GA event.
User Story: (updated)
Rank: 24 → 17
Priority: P2 → P1
Flags: qe-verify+
Updated US to cover scenarios where link clickers are not joined to the conversation on the desktop client UI since we want to prevent any link clicker inside Firefox to join a room URL that was created by him.
User Story: (updated)
Assignee: nobody → standard8
Iteration: --- → 42.1 - Jul 13
I started thinking about this during the plane flight to the work week, and decided we needed bug 1110937 to re-arrange how we get the room context information before clicking join. This gives us a small amount of time where we can also insert this checking of the web channel.
Depends on: 1110937
Rank: 17 → 25
Priority: P1 → P2
Whiteboard: [link-clicker] → [link-clicker][improved UX]
Whiteboard: [link-clicker][improved UX] → [link-clicker][improve funnel]
Iteration: 42.1 - Jul 13 → 42.2 - Jul 27
Iteration: 42.2 - Jul 27 → 42.3 - Aug 10
Sevaan and Vicky - we want this done in the next dev cycle and the UX has to be refreshed based on the visual refresh - can you please help with this? Also the copy currently states "You're already in this conversation!" when this applies to scenarios where the user clicks a link he generated regardless of whether he is in the conversation or not so I suggest we change the copy to "You cannot click Hello links that you created, please join this conversation using the Hello panel." Matej does that sound right or do you have other ideas?
User Story: (updated)
Flags: needinfo?(vpg)
Flags: needinfo?(sfranks)
Flags: needinfo?(matej)
(Commenting on User Story) > UX: https://bug1130425.bugzilla.mozilla.org/attachment.cgi?id=8569948 > > Acceptance criteria: > * If a desktop client user opens one of his own Hello URLs in Firefox and > clicks the "JOIN" button, he is prompted a message informing him that he > cannot open his own links and should use the Hello panel instead That's not what I was expecting. I was expecting to make it so that they can still click the join button and have the conversation window open as it would have done if they went via the panel. We could have the message as well, but I don't think its worth getting the user to do an additional click when we've got the capability to do it from the page. I think my general flow would be: - Load page (at this time detection is done). - Display appropriate message & Join button - Clicking the Join button displays the conversation window as normal. - Display a message that they've joined. If the room is already open, then we should be able to do some "You're already in this conversation" text.
Flags: needinfo?(rtestard)
My understanding was that we wanted to tackle this in 2 stages: 1 Prevent the link clicker from joining a conversation he created (this bug) 2 Use the desktop client UI to open the conversation when clicking Hello links (bug 1066019) If we can trigger the conversation window when trying to reach Hello URLs the user generated then great. I agree the flow you outline above is better - I am not sure we need a specific message for "Display appropriate message & Join button" but I'll let Sevaan comment there. I updated the US accordingly.
User Story: (updated)
Flags: needinfo?(rtestard)
Rank: 25 → 24
(In reply to Romain Testard [:RT] from comment #6) > Sevaan and Vicky - we want this done in the next dev cycle and the UX has to > be refreshed based on the visual refresh - can you please help with this? > > Also the copy currently states "You're already in this conversation!" when > this applies to scenarios where the user clicks a link he generated > regardless of whether he is in the conversation or not so I suggest we > change the copy to "You cannot click Hello links that you created, please > join this conversation using the Hello panel." Matej does that sound right > or do you have other ideas? It seems odd to me that users can't click links they generated, but if that's the case, I don't think you necessarily need to say that. It could just be the second part of the sentence: "Please join this conversation from the Hello panel." Or: "Open the Hello panel to join this conversation."
Flags: needinfo?(matej)
(In reply to Romain Testard [:RT] from comment #6) > Sevaan and Vicky - we want this done in the next dev cycle and the UX has to > be refreshed based on the visual refresh - can you please help with this? > > Also the copy currently states "You're already in this conversation!" when > this applies to scenarios where the user clicks a link he generated > regardless of whether he is in the conversation or not so I suggest we > change the copy to "You cannot click Hello links that you created, please > join this conversation using the Hello panel." Matej does that sound right > or do you have other ideas? I may still click a link after a conversation is already open, and a page is going to load. The "You're already in this conversation!" case still applies, no? I don't think that's the one page that needs a "You cannot click Hello links you created" message, especially since I just DID click on my link, and something happened. I don't think the redirection to the panel is necessary...but if you think it is, maybe the best way to approach this is just some small text under the Join the Conversation button on every state button which says something like "You can also join this conversation through your Hello panel".
Flags: needinfo?(sfranks)
(In reply to Sevaan Franks [:sevaan] from comment #10) > (In reply to Romain Testard [:RT] from comment #6) > > Sevaan and Vicky - we want this done in the next dev cycle and the UX has to > > be refreshed based on the visual refresh - can you please help with this? > > > > Also the copy currently states "You're already in this conversation!" when > > this applies to scenarios where the user clicks a link he generated > > regardless of whether he is in the conversation or not so I suggest we > > change the copy to "You cannot click Hello links that you created, please > > join this conversation using the Hello panel." Matej does that sound right > > or do you have other ideas? > > > I may still click a link after a conversation is already open, and a page is > going to load. The "You're already in this conversation!" case still > applies, no? I don't think that's the one page that needs a "You cannot > click Hello links you created" message, especially since I just DID click on > my link, and something happened. > > I don't think the redirection to the panel is necessary...but if you think > it is, maybe the best way to approach this is just some small text under the > Join the Conversation button on every state button which says something like > "You can also join this conversation through your Hello panel". Sorry for the confusion (see Comment 8), please consider the updated user story: * If a desktop client user opens one of his own Hello URLs in Firefox and clicks the "JOIN" button when not being present in the conversation, the desktop client UI is used to join him to the conversation. The standalone link clicker UI then informs the user that he was joined successfully. => What message do we display to the user in that case (on the Hello website)? * If a desktop client user opens one of his own Hello URLs in Firefox and clicks the "JOIN" button when being present in the conversation already, he gets a message informing him that he is already present in the conversation => What message do we display to the user in that case (on the Hello website)? I don't think we need a redirection to the panel since it will already be obvious to the user that he is already in the conversation since the conversation window would be opened.
we have a strings question - so changing to Matej :) - see Comment 11. Talk to Sevaan before tacking - to coordinate. Sevaan is going to double check something and put notes in the User story.
Flags: needinfo?(vpg)
Flags: needinfo?(sfranks)
Flags: needinfo?(matej)
What I was looking into was whether or not we could skip the step of loading the page entirely if you're already in a conversation. So if you clicked on the URL of a conversation you are already in it would just bring to the foreground your conversation and possibly flash it. After working through it, I think we should still load a page. Clicking a URL always leads to a page load, so we should meet that user expectation. So no change to user story. So Matej, please see Romain's string requests in Comment 11...repeated below: > * If a desktop client user opens one of his own Hello URLs in Firefox and > clicks the "JOIN" button when not being present in the conversation, the > desktop client UI is used to join him to the conversation. The standalone > link clicker UI then informs the user that he was joined successfully. > > => What message do we display to the user in that case (on the Hello > website)? Current mockups: (Before joining) http://i.sevaan.com/image/02263x1T0G2K; (After joining) http://i.sevaan.com/image/3I392T213l2J Suggestion: Underneath the "Enjoy your conversation" greyed out button, we add text stating: "Next time, you can open this conversation directly through the Hello panel!" Maybe the words "Hello Panel" could be clicked on to open the panel itself. > * If a desktop client user opens one of his own Hello URLs in Firefox and > clicks the "JOIN" button when being present in the conversation already, he > gets a message informing him that he is already present in the conversation > > => What message do we display to the user in that case (on the Hello > website)? I don't think we need a redirection to the panel since it will > already be obvious to the user that he is already in the conversation since > the conversation window would be opened. Current mockup: http://i.sevaan.com/image/3U3L3C1t0q0c Suggestion: Underneath the "You're already in this conversation!" have a line of text saying "You can see which conversations you currently have open in your Hello Panel" again with the link to trigger the panel. Thoughts?
Flags: needinfo?(sfranks)
Iteration: 42.3 - Aug 10 → 43.2 - Sep 7
(In reply to Sevaan Franks [:sevaan] from comment #13) > What I was looking into was whether or not we could skip the step of loading > the page entirely if you're already in a conversation. So if you clicked on > the URL of a conversation you are already in it would just bring to the > foreground your conversation and possibly flash it. > > After working through it, I think we should still load a page. Clicking a > URL always leads to a page load, so we should meet that user expectation. So > no change to user story. > > So Matej, please see Romain's string requests in Comment 11...repeated below: > > > > * If a desktop client user opens one of his own Hello URLs in Firefox and > > clicks the "JOIN" button when not being present in the conversation, the > > desktop client UI is used to join him to the conversation. The standalone > > link clicker UI then informs the user that he was joined successfully. > > > > => What message do we display to the user in that case (on the Hello > > website)? > > Current mockups: (Before joining) http://i.sevaan.com/image/02263x1T0G2K; > (After joining) http://i.sevaan.com/image/3I392T213l2J > > Suggestion: Underneath the "Enjoy your conversation" greyed out button, we > add text stating: "Next time, you can open this conversation directly > through the Hello panel!" For some reason adding "next time" makes it sound like they've done something wrong. Is that what we want to communicate? Or is this also a valid path? I would suggest: "You can also open this conversation from the Hello panel." Or, if it applies to all conversations: "You can also open conversations directly from the Hello panel." > > * If a desktop client user opens one of his own Hello URLs in Firefox and > > clicks the "JOIN" button when being present in the conversation already, he > > gets a message informing him that he is already present in the conversation > > > > => What message do we display to the user in that case (on the Hello > > website)? I don't think we need a redirection to the panel since it will > > already be obvious to the user that he is already in the conversation since > > the conversation window would be opened. > > Current mockup: http://i.sevaan.com/image/3U3L3C1t0q0c > > Suggestion: Underneath the "You're already in this conversation!" have a > line of text saying "You can see which conversations you currently have open > in your Hello Panel" again with the link to trigger the panel. This one could be shortened a bit: "See conversations you currently have open in the Hello panel."
Flags: needinfo?(matej)
Great ideas, Matej. One suggestion... "You can also open this conversation from the Hello panel." Instead of "this conversation" let's say "your conversation" since we're trying to teach users that they don't need to click on their own links. So... "You can also open your conversation from the Hello panel." That okay?
Flags: needinfo?(matej)
(In reply to Sevaan Franks [:sevaan] from comment #15) > Great ideas, Matej. One suggestion... > > "You can also open this conversation from the Hello panel." > > Instead of "this conversation" let's say "your conversation" since we're > trying to teach users that they don't need to click on their own links. > > So... > > "You can also open your conversation from the Hello panel." > > That okay? Great call. Thanks.
Flags: needinfo?(matej)
Thanks Matej and Sevaan - sounds good to me, US field now updated with these details. Sevaan/Vicky could you please update the visuals (based on the visual refresh layout) so it's clear where the text should be positioned?
User Story: (updated)
Now with NI..
Flags: needinfo?(vpg)
Flags: needinfo?(sfranks)
Flags: needinfo?(sfranks)
User Story: (updated)
Depends on: 1173830
Attached patch WebChannel PoC v2 (obsolete) — Splinter Review
Unbitrotted version.
Attachment #8597463 - Attachment is obsolete: true
Depends on: 1071990
Iteration: 43.2 - Sep 7 → 43.3 - Sep 21
This is updated & cleaned up a bit. I'm currently considering changing to RemotePageManager which is a similar API.
Attachment #8654180 - Attachment is obsolete: true
This is the change for standalone to attempt to load the channel.
Depends on: 1205591
Rank: 24 → 22
Flags: needinfo?(vicky.bugzilla)
Iteration: 43.3 - Sep 21 → 44.1 - Oct 5
Depends on: 1208201
No longer depends on: 1071990, 1173830
Depends on: 1208466
Attachment #8661680 - Attachment is obsolete: true
Comment on attachment 8661681 [details] [diff] [review] PoC Active Room Store change for standalone Obsolete patches have been updated/landed in bug 1208466.
Attachment #8661681 - Attachment is obsolete: true
Assignee: standard8 → nobody
Iteration: 44.1 - Oct 5 → ---
Rank: 22 → 60
Summary: Prevent link generators from clicking their own links → [meta] Prevent link generators from clicking their own links
Depends on: 1209078
This has now been fixed by the dependent bugs. Roll-out of the standalone UI will occur over the next few weeks.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Blocks: 1206705
Iteration: --- → 44.1 - Oct 5
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: