Bug 12836 - Additional Factory Reset Option Needed -- do not delete from SN
: Additional Factory Reset Option Needed -- do not delete from SN
Status: CLOSED FIXED
Product: SqueezePlay
Classification: Unclassified
Component: SqueezeNetwork
: unspecified
: PC Other
: P1 major (vote)
: 7.4.0
Assigned To: Weldon Matt
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2009-07-13 16:22 UTC by Dan Evans
Modified: 2009-10-05 14:26 UTC (History)
9 users (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dan Evans 2009-07-13 16:22:30 UTC
Because setting up a Baby on SN is so time consuming, Support needs an alternate way to factory reset a device that can avoid the account creation/entry.

I propose:

In Settings > Advanced > Factory Reset we add a second option:  "Special"  or something similar.

Selecting Settings > Advanced > Factory Reset > Special must also be confirmed, so the next page will need "Cancel Special" and "Continue Special".

Performing a "Special" Factory Reset will return the Baby Boom to its factory default settings _but_ will not remove it from SN's database.  Therefore, when you complete setup it will not require any SN account information, and instead it will auto-connect to the previously defined SN account.

We can also consider adding this to all SP-based players.  (evaluation for each needed.)
Comment 1 Weldon Matt 2009-07-13 16:41:42 UTC
Is there some way to enable this for support without exposing the interface to the other 99.9 percent of users who won't need it, and would be confused by the option?

(I feel your pain, just resisting the urge to add more menus)
Comment 2 Dan Evans 2009-07-13 17:10:06 UTC
Matt--  if there's a way to do that, I'm 100% cool with it.
Comment 3 Weldon Matt 2009-07-14 11:50:40 UTC
Let's add the option to the diagnostics screen, at the bottom, below "software update."

We can call it "Special Reset."  

Should we target this for an earlier milestone, since the main benefit is for testing?
Comment 4 Richard Titmuss 2009-07-15 10:04:01 UTC
Matt, that solution is not possible, because a factory reset on the player remembers no state. So it is not possible for it to know which menu option was selected.

In the call we just had I suggested another approach, if the player is already registered on SN we add a screen saying something like:

"If you have just brought this player then you need to register it on mysqueezebox.com. Otherwise if you are the current owner then select Continue"
Comment 5 Dan Evans 2009-07-15 10:44:39 UTC
Richard-- I have a crazy idea.  Tell me if it's feasible.

Consider the menu option again.  What if when I select "Special Reset" Baby sends a message to SN basically telling it, "ignore the next delete command you get from me." ?  Then the reset actually happens and Baby sends the delete message to SN-- but SN correctly ignores it.  Thus you still have your account on there.
Comment 6 Jim McAtee 2009-07-15 13:06:38 UTC
(In reply to comment #4)
> In the call we just had I suggested another approach, if the player is already
> registered on SN we add a screen saying something like:
> 
> "If you have just brought this player then you need to register it on
> mysqueezebox.com. Otherwise if you are the current owner then select Continue"

You can do a little better than that.  I suppose the scenario you're trying to avoid is one where the player changes hands and is registered on someone else's SN account.  I would display the associated email address (account name) and ask the user whether he wishes to leave the player registered on that account or register it on a separate own account.
Comment 7 Wadzinski Tom 2009-07-15 13:17:39 UTC
From the bug scrub, the next move is to make a SN option to use existing record when re-registering, so re-assigning to Andy.
Comment 8 Andy Grundman 2009-07-22 11:42:24 UTC
I think this needs more design.
Comment 9 Weldon Matt 2009-07-22 16:25:58 UTC
(In reply to comment #6)
> (In reply to comment #4)
> > In the call we just had I suggested another approach, if the player is already
> > registered on SN we add a screen saying something like:
> > 
> > "If you have just brought this player then you need to register it on
> > mysqueezebox.com. Otherwise if you are the current owner then select Continue"
> 
> You can do a little better than that.  I suppose the scenario you're trying to
> avoid is one where the player changes hands and is registered on someone else's
> SN account.  I would display the associated email address (account name) and
> ask the user whether he wishes to leave the player registered on that account
> or register it on a separate own account.

Jim, you get the golf clap, congrats.  (Though actually, this case is more for the developers and Logitech folks - we do a LOT of factory resets and always have to log back in every time we go through setup).

Let's no this:

I press "factory reset".  Then I press "Continue."  At this point, I see a new Screen:

"Factory Reset"

"Remove mysqueezebox.com account as part of reset?"

"Remove account"
"Don't remove account"
Comment 10 Andy Grundman 2009-07-22 16:30:01 UTC
I don't thinks "Remove mysqueezebox.com account" is the right wording, since all you'll be doing is unlinking the player from your account, but your account will not be removed.  Maybe "Unregister this player from mysqueezebox.com".
Comment 11 Jim McAtee 2009-07-22 19:06:02 UTC
> I press "factory reset".  Then I press "Continue."  At this point, I see a new
> Screen:
> 
> "Factory Reset"
> 
> "Remove mysqueezebox.com account as part of reset?"
> 
> "Remove account"
> "Don't remove account"

Would that work with the reset button as well as the settings menu item?

In any case, that's a poor interface, IMO.  Why not just look up the device on SN using its identifier (MAC address?), at the point in the setup sequence where you normally prompt for SN account/password?  Looking up the account on SN, in my experience, is almost instantaneous.  I've been through dozens of factory resets on this thing and I've keyed in more than a few bad email addresses and passwords, and the response is always immediate.

I'd also prefer to see the email address/account to which the device is currently registered.  I can't be the only person who has had two or three or more SN accounts over the years.
Comment 12 Weldon Matt 2009-07-22 19:15:13 UTC
Let's not expand the scope of this problem.  This is a solution for engineers/heavy users.  The solution needs to be self-contained on the device - we won't always have a web browser handy to do this on SN.

Not trying to be difficult, But I have like 50 bugs in front of me now; time is limited.  I've proposed 2 different solutions.  If someone else wants to brainstorm or propose another (simple) solution I'm all for it.

Another key combination would be great, but that would only help on baby.  We need something that works on all devices, which probably means menu-driven since it includes fab4.
Comment 13 Richard Titmuss 2009-07-27 01:14:13 UTC
Reset priority before triage.
Comment 14 Andy Grundman 2009-07-27 11:56:23 UTC
Here is what I'm going to implement:

Factory Reset -> resets as it does today.
After network setup, always calls SN registration API.
SN detects if player is already registered, if so, display this screen:

Squeezebox Account

This Squeezebox is currently registered to <email>. To register it with a different account, select Register.  Otherwise, select Continue.

Register -> (goes to SN login/create account flow)
Continue -> (goes to main menu)
Comment 15 Andy Grundman 2009-07-27 12:05:37 UTC
Strings added.
Comment 16 Jim McAtee 2009-07-27 12:12:19 UTC
Just a what if... The SN account password has changed, and the SN pwd in the device is wrong for the account?  Should "Continue" try a login just to be sure that credentials are correct, then force user through re-entering password?
Comment 17 Andy Grundman 2009-07-27 12:17:10 UTC
Won't matter, players don't store login/password.
Comment 18 Andy Grundman 2009-07-27 18:42:03 UTC
Fixed.  After factory reset this screen is displayed, allowing you to create/login to a new account, or keep the existing account.  Requires firmware >= r6802.
Comment 19 Andy Grundman 2009-07-28 12:07:33 UTC
I'm reopening this because what I implemented makes one use case impossible:

Selling your player and removing the player from your SN account completely.

You can't do this anymore without going to the website.  I think we need to have 3 options on this factory reset screen:

Squeezebox Account

This Squeezebox is currently registered to <email>. To register it with a
different account, select Register.  To remove it from your account, select Remove From Account. Otherwise, select Continue.

Register -> (goes to SN login/create account flow)
Remove from account -> (deletes player from SN) 
Continue -> (goes to main menu)

I think the Remove option should result in a dead-end screen that just tells you to power off.  It doesn't make a lot of sense to then show the registration screen, because if the user wanted to do that they would have clicked Register.

Squeezebox Removed

Your Squeezebox has been removed from account: foo@foo.com.  You may now power off.
Comment 20 Jim McAtee 2009-07-28 12:39:40 UTC
What happens if your SB is stolen or it dies or you simply forget to remove it before it changes hands?  You have to use the website to remove it from the account.  Still, this is a good idea, although it also needs to be available in Advanced Settings, not just in the setup.  Most people will likely only do a setup once and they'll never remember that this option was available.

I can't help but think that when things are reworked to not require SN registration (as has been promised for many months) that a very large portion of the setup logic will have to be rethought.  For instance, this 'dead end' after removing.
Comment 21 Weldon Matt 2009-07-28 12:49:36 UTC
So wait.  Before this bug, we had something that worked fine for our user base.  The original bug was intended really just for us, for testing, so we wouldn't have to re-enter our credentials every time we did a factory reset.

Now we have a screen with 3 options??? I don't even understand what is being proposed anymore.

We need the existing (before this bug was filed) behavior to remain unchanged.

Then, there needs to be some separate, different way to do a "special" reset or something, as dan is suggesting.  Maybe a "partial" reset.

Don't know the most graceful soltuion for this, but I don't think we've come up with it yet.
Comment 22 Jim McAtee 2009-07-28 12:50:59 UTC
Another possibility:

1. You could compromise and require the account password during setup.  At least then you don't require re-entering the email address, but you're assured that the person running through setup owns the SN account.

2. Remove a player from one SN account whenever it's registered to another.

Then you wouldn't really have to worry about removing an SB from an account, because, as long as a factory reset has been done, the new owner wouldn't be able to use it under the old one.
Comment 23 Andy Grundman 2009-07-28 12:59:39 UTC
That's a pretty good idea.  But QA won't like it because they want a way to bypass setup after a factory reset. :)
Comment 24 Andy Grundman 2009-07-28 13:01:22 UTC
This bug was filed by Dan, who I assume was only thinking about end users.  Dan can you chime in??
Comment 25 Dan Evans 2009-07-28 16:47:36 UTC
I intended this bug not for QA, not for testing, but for helping customers on the phone.  Currently we find we must factory reset a Duet sometimes multiple times in a single call.  Having to re-enter SN credentials each time will be time consuming and frustrating for the customer.  

The easier we can make *consecutive* factory resets, the better.  

(side benefit: it makes testing easier.)
Comment 26 Weldon Matt 2009-07-29 16:40:07 UTC
Andy's current solution isn't perfect, but it's a big improvement and solves a lot of cases.

The main side effect is for people re-selling a Squeezebox (why would you ever want to do that? :-)

We'll need to make it clearer that you need to go to mysb.com to disconnect the player from the account, or add a "disconnect account" feature later.
Comment 27 Dan Evans 2009-07-29 17:25:37 UTC
Do we have any security concerns about displaying an e-mail address during setup in the case of a second-hand player?  Someone rightfully pointed out that most users will not think to remove their player from their account before selling it or gifting it away.  

I can't think of any analogous situation to compare this to for reference, so I'm not even sure _I_ have concerns.  Just throwing out the question.
Comment 28 Andy Grundman 2009-07-29 17:38:38 UTC
We do this today (under Settings).  But since almost nobody will actually factory reset before selling their player, it's probably a moot point.
Comment 29 James Richardson 2009-10-05 14:26:12 UTC
This bug has been marked as fixed in the 7.4.0 release version of SqueezeBox Server!
    * SqueezeCenter: 28672
    * Squeezebox 2 and 3: 130
    * Transporter: 80
    * Receiver: 65
    * Boom: 50
    * Controller: 7790
    * Radio: 7790  

Please see the Release Notes for all the details: http://wiki.slimdevices.com/index.php/Release_Notes

If you haven't already, please download and install the new version from http://www.logitechsqueezebox.com/support/download-squeezebox-server.html

If you are still experiencing this problem, feel free to reopen the bug with your new comments and we'll have another look.