Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Option to relink Signal Desktop to the mobile client #956

Closed
strugee opened this issue Oct 26, 2016 · 13 comments
Closed

Option to relink Signal Desktop to the mobile client #956

strugee opened this issue Oct 26, 2016 · 13 comments

Comments

@strugee
Copy link
Contributor

strugee commented Oct 26, 2016

I have searched for open and closed duplicates.

Recently for whatever reason my Signal Desktop install prompted me with the setup screen again. This seems to have been due to a bug, but unfortunately I have no idea what caused it as i hadn't opened Signal for a number of days.

Because of this I ended up restoring my Chrome profile from backup (in order to retain my message history). However, now I'm getting a bunch of messages from myself that say "Error handling incoming message" because of a bad MAC. Obviously the mobile client and desktop client are out of sync, and reinitializing the link between them would fix it. However, AFAICT, there's no option to do so in Signal Desktop's settings, and I'm afraid that unlinking will destroy my message history, which is the problem I was trying to solve in the first place.

@nrizzio
Copy link
Contributor

nrizzio commented Oct 27, 2016

Message history is not automatically deleted when you unlink or link (see #878), so you should have been fine if you re-linked at the prompt.

If your Chrome client has a bunch of bad keys, you can try resetting the secure session. If that doesn't work, then starting over from scratch may be your only option (unless you made a second backup?)

You may want to write something in the community forum, many people will be able to help you there.

@strugee
Copy link
Contributor Author

strugee commented Oct 27, 2016

@nrizzio I actually did try re-linking before I restored from backup, which didn't keep my message history. I'm really not sure what happened.

It seems that the only thing that's wrong with the profile is the mobile-desktop keys. I can e.g. send a message to a friend on desktop, but it doesn't show up on the other device. Instead I get "bad encryption" errors from myself. I tried "reset secure session" with myself, but as I expected it didn't help.

@strugee
Copy link
Contributor Author

strugee commented Oct 27, 2016

Quitting Signal Desktop, unlinking from Android, relaunching Signal Desktop and relinking seems to have done the trick. However I still think there should be an option in settings to relink as it's not obvious that the above operation doesn't destroy data.

@nrizzio
Copy link
Contributor

nrizzio commented Oct 27, 2016

I think the original issue with the random unlinking might be a case of #797 and/or #718.

@strugee
Copy link
Contributor Author

strugee commented Oct 27, 2016

Yep, #797 sounds like exactly what happened to me, right down to the low disk space problems.

@primeos
Copy link

primeos commented May 12, 2017

In case it still helps anyone: Re-linking should be possible by going to chrome://extensions/ opening background.html and typing extension.install(); into the console (please note that I'm not a Signal developer, but it worked fine for me).

@debugger-zz
Copy link

debugger-zz commented Nov 4, 2017

@primeos : Thx for the idea :-)
Relinking worked for me (I had another use case though).
DISCLAIMER: This method might be insecure, someone should investigate and clarify that.

I copied my Signal-Deskop Export from my notebook OS X to Linux. Then installed Signal Desktop on Linux and restored the message OS X backup. In the Linux and OS X Signal Desktop clients I performed these steps:

  1. Open View -> Toggle Developer View
  2. Select tab Console
  3. Executed Whispher.Registration.remove(); (in lower text field/prompt).
  4. Now button Re-link appears above the Signal contact list.
  5. Close the Developer console
  6. Re-link Signal Desktop to your mobile Signal (iOS or Android).

On my mobile I also removed the older, now unused OS X link. Initially I tried to only re-link Linux, but OS X did not receive updates properly any more (potentially due to key or Id re-usage?).
For now I seem to be able to send/receive message on iOS, OS X and Linux.

@scottnonnenberg
Copy link
Contributor

All: My recommendation would be to remove the link to your desktop install in your mobile app, which will cause the desktop to ask to re-link. There's no need to open the dev console to re-link desktop. Note also that this will maintain all of your historical messages, since a re-link is a very low-impact action.

Generally, our rule of thumb is that the mobile device is the 'source of truth.' So it's where important decisions like 'which devices are associated with this phone number?' are made.

@funkenstrahlen
Copy link

funkenstrahlen commented Feb 21, 2018

I also have a problem with this.

  • My iOS signal app does not show any linked devices
  • I installed signal on my Mac again (had it removed for a while)
  • Signal on Mac shows old contacts and messages. Appears to be linked.
  • When I try to trigger a new import in the settings it just stays at "importing" forever

I tried resetting signal on my Mac but deleting application support files and the app did not reset its state.

I tried what @debugger-zz suggested but Whispher.Registration.remove(); in the dev console does only report that Whisper is not loaded.

Why can I not simply trigger a new linking process and reset the Mac app?

@scottnonnenberg
Copy link
Contributor

@funkenstrahlen Can you talk a little bit more about what happens to your Signal Desktop install when you send a message? Do the messages go through? Can you receive messages? When you send, does that sent message appear in the same conversation on your mobile device?

We'd also like a little more information about the history of your Desktop install. Seems like you installed it recently, but it has old contacts and messages. How did that happen, exactly?

window.Whisper.Registration.remove() in the dev console and then a restart really should do the trick. What version of Signal Desktop are you running?

@strugee
Copy link
Contributor Author

strugee commented Feb 21, 2018

@funkenstrahlen did you typo Whisper as Whispher?

@funkenstrahlen
Copy link

Can you talk a little bit more about what happens to your Signal Desktop install when you send a message?

I can send messages.

Do the messages go through?

Yes.

Can you receive messages?

Yes.

When you send, does that sent message appear in the same conversation on your mobile device?

The conversations on my mobile devices do not contain the conversation I used to test sending a message on Mac (as I can not force a resync). Therefore I can not tell if the messages I send are also on my mobile device conversation. However I can say that the new conversation I started on Mac does not appear on my mobile device.

We'd also like a little more information about the history of your Desktop install. Seems like you installed it recently, but it has old contacts and messages. How did that happen, exactly?

  • Used signal on my iPhone
  • Installed and linked Mac app
  • Got new iPhone
  • Did setup Signal on my phone again
  • Removed signal on my Mac
  • Started using signal more on my iPhone
  • Installed latest signal version on my Mac. 1.3.0
  • Wondered why it still did show my old conversations because it though they would be gone when I uninstall.
  • Tried to resync contacts and conversations in the settings. But did not work.
  • Realised my phone does not list any linked devices
  • Tried to link the Mac app again, but could not find any button to do that
  • Tried to properly uninstall by removing files in application data
  • Did not work to reset the Mac app

window.Whisper.Registration.remove() in the dev console and then a restart really should do the trick.

Worked perfectly! Could resync and now everything works like expected. When I tried this the first time it actually was a typo error because I just did a copy & paste.

Thanks for your help!

@scottnonnenberg
Copy link
Contributor

@funkenstrahlen Glad it worked. To be clear, in that sequence, your Desktop device was still linked to the Signal account associated with your old phone. It seems that you never deleted it - doing so would have caused your desktop instance to request re-link as well. I wonder - do you have contacts attempting to message you with that account?

More information on deleting your account is here: https://support.signal.org/hc/en-us/articles/214160088-How-do-I-unregister-or-delete-my-account-

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

7 participants