signalapp / Signal-Android

A private messenger for Android.
https://signal.org
GNU Affero General Public License v3.0
25.59k stars 6.14k forks source link

can't reply to group after reinstalling textsecure #2581

Closed agrajaghh closed 6 years ago

agrajaghh commented 9 years ago

If I receive a group message to a group I'm member of after uninstalling/reinstalling TS, I can't send messages.

Steps to reproduce: 1) Device A creates a group with device B 2) Device B receives the group creation message 3) Device B uninstalls TS 4) Device B installs TS again and registers for push messages 5) Device A sends a message to the group 6) Device A verifies the new identity of device B 7) Device B receives the group message in an "Unnamed group". Device B is unable to reply. Its not possible to set the focus in the textfield/open the keyboard.

Debug log of Device B: https://gist.github.com/anonymous/b63eb752fdb728ff14c4

Tested with current HEAD

tinloaf commented 9 years ago

Try re-adding Device B to the group on Device A. This should cause A to send the group-info to B again. I've had this problem quite a few times myself, some solution to this would be nice.

How about this: When B receives a message for an unknown group, it automatically sends a (silent) message to A saying 'please send me the group data' and displays something like 'fetching group information' in the thread. B then (automatically, silently) responds with the group info and everything is OK?

agrajaghh commented 9 years ago

You're right. Adding B again works... But its just a workaround...

I think it could be done easier (async, without first requesting the group info): When A tries to send the message to the group and has to verify the new identity, A knows the key of B changed. So A can directly send the group information to B.

I don't know how it is in bigger groups. What if A stays the 'group leader' and C sends the message to B? Can C send the group information to B? Will A do it again, if A writes a message? Possible solution could be, that B sends a silent message to the group once it received the group information to (mostly) avoid receiving duplicate group information messages from every member.

tinloaf commented 9 years ago

Correct me if I'm wrong, but there should be no such thing as a "group leader"? Everyone has the same information. Also, a device could for some reason (restoring an old Titanium Backup or something like that) forget a group, but not the key. Then, your solution would not work.

agrajaghh commented 9 years ago

Oh, you're right, there is no group leader. But that means every group member can forward the group information to Device B, no? Your concern is that group members may forward wrong/outdated information to B?

tinloaf commented 9 years ago

No, the question is just how those group members notice that they have to send the data to Device B. As I said, looking for a changed key may not always be sufficient.

ghost commented 9 years ago

I have the same problem here

rhodey commented 9 years ago

referencing #2185, #1254, & #1048

squarlf commented 9 years ago

Confirming same/similar issue on lollipop -

edit: also note group is mix of TS + Signal users

Rocksteady18 commented 9 years ago

I have a phone with kitkat and same thing, unnamed, can't rename or respond.

I was in a group and had to reinstall because of a corrupt key or something where it stopped encrypting.

Now when I get a group text, I get the text but when I tap the response area I never get a cursor; "it" won't let me respond.

haffenloher commented 9 years ago

@Rocksteady18 As a quick workaround, ask a member of your group to do a group update (Settings button -> "Update group" and just confirm the update - there should be no need to actually change the group information). After you received the update, your client will know the group name and be able to post to it again.

McLoo commented 9 years ago

Reason for not being able to to group stuff in such an unnamed group most likley is that the group is not set to active, which is done here: https://github.com/WhisperSystems/TextSecure/blob/master/src/org/thoughtcrime/securesms/groups/GroupMessageProcessor.java#L129 and on creating a group

Forgot to press comment this morning :) @brumsoel has your workaround If I'm right the update will trigger the group to be active for you on your device, re-enabling you to do as you please :)

Rocksteady18 commented 9 years ago

I did what brumsoel said and it now works, has the right name, and I can text, thank you guys, great product.

ph0b0z commented 8 years ago

We just ran into the same problem, since i re-flash my device quite regularly (sorry..) i broke a group again. Re-inviting me or changing the group name didn't help. The group members received "not delivered" error-message, even after i left the group. :)

Edit: Sorry, since i saw the last post was from may and the issue is still present and the above-mentioned workarounds don't work, i thought a short "update" was okay.

haffenloher commented 8 years ago

The group members received "not delivered" error-message

They probably need to accept your new identity key before being able to send you messages and group updates (and receive group updates from you, saying @ph0b0z left the group) again. I think they just need to send you a one-on-one or group message, it should fail and display a "Verify" button.

Next time you have a support question, please use http://support.whispersystems.org (search the FAQ or submit a request) instead of the issue tracker :)

farao commented 8 years ago

Problem still exists, is this being worked on? Can't a newly installed Signal iterate all "unknown" groups and automatically ask for a group update? This can't be wanted behaviour that every time you have a new device or reinstall Signal all the groups are broken and you have to contact for every group a member to update it, right?

vanitasvitae commented 8 years ago

Interesting side fact: When I connect my phone to Signal desktop while the phone displays an unknown group, the desktop app does not face the problem. There, I can see members, group name, Avatar... So it should be possible to fix.

kanytu commented 8 years ago

Is this still open? More than one year later? In Chrome app this is working as expected, no need to edit a group whatsoever.

ghost commented 8 years ago

I also have issues. 2 group members (alice and bob) have new keys, now the communication is a mess:

All participants already accepted alice's and bob's new keys.

AVHon commented 8 years ago

Just experienced this same problem. I couldn't bring up the keyboard to type messages into a group chat. The problem was fixed by getting another group member to re-add me to the group. It would be great if this bug was fixed, I was out of the chat for a couple of days before I could contact one of the members.

pythoneer commented 8 years ago

Same happened here but the other where unable to reinvite me. The Desktop App had no issues whatsoever, but a renaming of the then called "unnamed group" from another groupmember (or changing the image) fixed it for me and i can continue to send messages to the group.

jeremymasters commented 8 years ago

All I had to do was to have one of the other members (texted them separately) to update the group, even if they don't make any changes it works.

joshuap commented 7 years ago

I ran into this too (found this issue before creating a bug report). As a developer I'm fine with workarounds, but it's difficult to explain this sort of thing (or why they should use an app which doesn't "just work") to my non-developer friends.

Also, in my case I switched from Signal for iOS to Signal for Android.

Trolldemorted commented 7 years ago

@joshuap moxie is working on it.

2-4601 commented 7 years ago

Fix in 3.24.0 (cf01959e16acc1ff31cd007d68b3ba43810b6c3a)

zxvv commented 7 years ago

After a factory reset, and reinstalling signal 3.28.4, there are no contacts in android. After using desktop to sending a message to a group, I see the message, but the group is named "unnamed group" and has no contacts on android, while the desktop signal shows group name and group members.

Nevermind. I see the answer in the FAQ: https://support.whispersystems.org/hc/en-us/articles/217172427-What-do-I-do-if-I-am-going-to-do-a-factory-reset-of-my-phone-

joshtriplett commented 7 years ago

I still experience this problem with current Signal, after migrating to a new phone. The workaround (having someone "update group") worked, but Signal did not handle this automatically as https://github.com/WhisperSystems/Signal-Android/commit/cf01959e16acc1ff31cd007d68b3ba43810b6c3a suggests it should.

(And even with that workaround, everyone in the group (along with all other messages) just shows up as a phone number, despite having a named contact entry with that number. Fixing that required merging all the artificial duplicate contacts Signal created.)

2-4601 commented 7 years ago

So what happened when someone just sent a message to the group (before the group update workaround)?

joshtriplett commented 7 years ago

@2-4601 I received the message, but the group remained "Unknown group", didn't have the group icon, and touching the text box didn't bring up a keyboard or allow typing.

2-4601 commented 7 years ago

Did you by any chance happen to get a debug log? :)

joshtriplett commented 7 years ago

@2-4601 I did not, sorry.

If it helps: Signal 3.29.1, though the problem persisted through many past versions.

haffenloher commented 7 years ago

was the sending device an iPhone? cf01959e hasn't been implemented on iOS yet

joshtriplett commented 7 years ago

On February 4, 2017 3:46:21 PM GMT+01:00, haffenloher notifications@github.com wrote:

was the sending device an iPhone? cf01959e hasn't been implemented on iOS yet

Some of the senders used iOS, and some used Android.

2-4601 commented 7 years ago

Some of the senders used iOS, and some used Android.

Do you mean that you received messages from both iOS and Android users before the group update workaround was used?

joshtriplett commented 7 years ago

On February 6, 2017 7:39:33 AM CST, 2-4601 notifications@github.com wrote:

Some of the senders used iOS, and some used Android.

Do you mean that you received messages from both iOS and Android users before the group update workaround was used?

Yes.

Trolldemorted commented 7 years ago

@joshtriplett are these android users running an up-to-date version of signal?

joshtriplett commented 7 years ago

@Trolldemorted One of the Android users was running 3.28.4. I think that's the latest non-beta version?

Dannyzen commented 7 years ago

I was able to reproduce this issue from start to resolution. Renaming the room fixed.

Trolldemorted commented 7 years ago

If you want to investigate whether your contact's signal is responding to your group update requests correctly:

hoodie commented 7 years ago

So this is still an issue, I reregistered on a new phone and all groups were gone until somebody wrote something. Updating groups is not possible until somebody else does it. How is this still a thing :D ?

haffenloher commented 7 years ago

I reregistered on a new phone and all groups were gone until somebody wrote something.

@hoodie That's expected behaviour as group info isn't stored server-side. As soon as you get a message from an Android user in a group that is unknown to your Signal client, it should automatically request the group info from the sender (Name, avatar, list of members). Do you experience problems with that?

hoodie commented 7 years ago

I reregistered on a new phone and had no groups. I then added the desktop app, there I saw groups, when I posted in one that I had created earlier it showed as "unnamed/unknown Group" (don't recall exactly). I was not able to edit or even leave the group until somebody else had changed the name of the group. What kind of state am I in at that point? Why is it different after somebody made a change? Why can't I leave the group? Why does it work on the desktop client thought?

Trolldemorted commented 7 years ago

The desktop client still uses the database it had before you registered on your new phone.

Naturally, it contains the groups from "back then", and is able to send messages (to the participants from that time). Your new phone does not know the group, receives a message from your desktop, notices that the group is unknown, sends a group info request to the sender (aka you), your desktop does not respond (https://github.com/WhisperSystems/Signal-Desktop/issues/1037), and thus the group remains unknown on your phone.

jacobklan commented 7 years ago

Replicated issue just now on Signal 4.10.8 for Android. Debug log here (captured just after multiple messages from said group): https://gist.github.com/anonymous/569ee712301eb94e5f2d6f70af96b2f8

Group chat with 1 Android and 1 iOS client, both on latest stable. Wouldn't recieve group info despite multiple messages until one member updated the group information.

edit: Signal messages and calls enabled, SMS enabled, passphrase disabled.

automated-signal commented 6 years ago

GitHub Issue Cleanup: See #7598 for more information.