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

Names of chat participants lost after upgrade to "New Groups" #46

Closed
yringot opened this issue Jan 5, 2022 · 8 comments
Closed

Names of chat participants lost after upgrade to "New Groups" #46

yringot opened this issue Jan 5, 2022 · 8 comments

Comments

@yringot
Copy link

yringot commented Jan 5, 2022

I noticed that in a 3-person group, all the names of people other than me are displayed as "No-Sender" right after the group was upgraded to the new group format:

Upgrade notification inside Signal:
image
Output in HTML:
image

After that, all the other participants' messages look like this:
image

I confirmed this in other groups with multiple participants. All of them are listed as No-Sender

@-mentions (which were introduced with the new group functionality afaik) don't work either. (See issue #45)

@yringot
Copy link
Author

yringot commented Jan 22, 2022

A little update: Apparently, the above behavior is not consistent. Here is a recent multi-user chat that is mixed: both "no-Sender" and actual names:
image

@carderne
Copy link
Owner

Finally got some time to look into this. A lot of this was caused by a bug when filtering with e.g. --chats=group-name. That's fixed now.

But the new-style groups also store the sender ID in a different way and I haven't figured out how to match these up with contacts/names...

@carderne
Copy link
Owner

If you have the time/capability to dig into the database and see if you can find IDs that match up then Godspeed! I might not get to this for a bit...

@carderne carderne closed this as completed Aug 7, 2022
@kittenbytes
Copy link

Hello @carderne - This problem has returned. I did an export today (having never done one before) and in my group chats it switches to "no-sender" anytime between late February and early March. Thanks for your hard work!

@carderne carderne reopened this Jun 7, 2024
@carderne
Copy link
Owner

As before, nothing really I can do here unfortunately as I don't have access to your data to see why these changes are happning.

@BirgitVeraSchmidt
Copy link

Hi,

I tried to dig a little bit into this. It appears that my database no longer contains the source entry in the messages table.

I'm not very well-versed in Python, so I needed to dabble around a bit with the existing code to find out a tad more. In data.py after

query = "SELECT json, conversationId FROM messages ORDER BY sent_at"

when I output the entire res, I get this (where GUIDs are changed to random values to protect my privacy):

'timestamp': 1724669993522,
'attachments': [],
'id': 'd3fa5912-af49-478c-b299-936288250b72',
'conversationId': '4fdd3742-e6ef-46ae-a3ad-1c74d9de2a8d',
'readStatus': 0,
'received_at': 1716974551437,
'received_at_ms': 1724669994011,
'seenStatus': 2,
'sent_at': 1724669993522,
'serverGuid': '9881f87e-8f7c-4e9f-a30a-0c580d47bab9',
'serverTimestamp': 1724669993797,
'sourceDevice': 1,
'sourceServiceId': 'db703cd4-bf91-45c6-8f1c-c4225d219f07',
'type': 'incoming',
'unidentifiedDeliveryReceived': True,
'schemaVersion': 12,
'body': 'Here be some message text',
'bodyRanges': [],
'contact': [],
'decrypted_at': 1724669994099,
'errors': [],
'flags': 0,
'hasAttachments': 0,
'isViewOnce': False,
'mentionsMe': False,
'preview': [],
'requiredProtocolVersion': 0,
'supportedVersionAtReceive': 7

The sourceServiceId in turn shows up in conversations, e.g. the result of

    query = "SELECT type, id, serviceId, e164, name, profileName, members FROM conversations"

(where I added serviceId).

I managed to cobble together a fix that works for me locally:
0001-Fix-46-Names-of-chat-participants-lost-after-upgrade.patch.zip
(I attempted to upload it as a new branch, but have no permissions, therefore I exported a format-patch instead.)

As I said I'm not working much with Python, and I also don't know the Signal database format too well, so please double and triple check before you trust me on this! But hopefully it can fix the issue.

@carderne
Copy link
Owner

carderne commented Oct 9, 2024

@BirgitVeraSchmidt are you open to trying to open a PR again?

What you need to do is fork my repo, push your changes there, and then open a PR from your main to mine. I'll have a look at your patch in a week or two if I don't see a PR.

BirgitVeraSchmidt added a commit to BirgitVeraSchmidt/signal-export that referenced this issue Oct 9, 2024
@BirgitVeraSchmidt
Copy link

Certainly! I was not aware that forking a repository was a normal thing to do on GitHub.

If I did everything right, here should be the pull request:
#141

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

No branches or pull requests

4 participants