Skip to content

Importing messages silently skips some based on sub_id #128

Open
@wittmane

Description

I exported my messages to transfer them to another device, and the app specified how many SMS and MMS messages were exported, and on the other device it said that same number of messages were imported, but when I went to my SMS app, I noticed it was missing messages. I then tried exporting the messages from the new device, and it said it exported less messages than before.

I did some digging in the export files to compare the difference between messages that got imported and those that failed, and I found that if sub_id was set to 2, they didn't import. I found a mix of -1, 1, and 2 for the values. I'm not sure what that means, but the import skipped 2 for some reason.

I created a sample file to test:

{"_id":"3","thread_id":"1","address":"1235551234","date":"1672531320000","date_sent":"0","read":"1","status":"-1","type":"2","body":"Test message with sub_id 2","failure_cause":"-1","locked":"0","sub_id":"2","stack_type":"0","error_code":"0","creator":"com.google.android.apps.messaging","seen":"1","pri":"0","rcs_extra":"0","rcs_timestamp_delivered":"0","rcs_timestamp_displayed":"0","rcs_message_type":"0","__display_name":"John Doe"}
{"_id":"2","thread_id":"1","address":"1235551234","date":"1672531260000","date_sent":"0","read":"1","status":"-1","type":"2","body":"Test message with sub_id 1","failure_cause":"-1","locked":"0","sub_id":"1","stack_type":"0","error_code":"0","creator":"com.google.android.apps.messaging","seen":"1","pri":"0","rcs_extra":"0","rcs_timestamp_delivered":"0","rcs_timestamp_displayed":"0","rcs_message_type":"0","__display_name":"John Doe"}
{"_id":"1","thread_id":"1","address":"1235551234","date":"1672531200000","date_sent":"0","read":"1","status":"-1","type":"2","body":"Test message with sub_id -1","failure_cause":"-1","locked":"0","sub_id":"-1","stack_type":"0","error_code":"0","creator":"com.google.android.apps.messaging","seen":"1","pri":"0","rcs_extra":"0","rcs_timestamp_delivered":"0","rcs_timestamp_displayed":"0","rcs_message_type":"0","__display_name":"John Doe"}

As I expected, when I imported, it reported 3 SMS imported, but my SMS app only showed the 2 messages with sub_id set to -1 and 1, but skipped the one set to 2.

I did a simple find and replace on my original export to change all "sub_id":"2" to "sub_id":"1", and I was able to do the import successfully with that.

Activity

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

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions