Bugzilla – Bug 12836
Additional Factory Reset Option Needed -- do not delete from SN
Last modified: 2009-10-05 14:26:12 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.)
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)
Matt-- if there's a way to do that, I'm 100% cool with it.
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?
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"
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.
(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.
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.
I think this needs more design.
(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"
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".
> 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.
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.
Reset priority before triage.
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)
Strings added.
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?
Won't matter, players don't store login/password.
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.
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.
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.
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.
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.
That's a pretty good idea. But QA won't like it because they want a way to bypass setup after a factory reset. :)
This bug was filed by Dan, who I assume was only thinking about end users. Dan can you chime in??
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.)
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.
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.
We do this today (under Settings). But since almost nobody will actually factory reset before selling their player, it's probably a moot point.
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.