I input a WhatsApp extraction made with Avilla Forensics to ALEAPP and I got 0 results but I knew there were contacts, chats and messages in it. After I checked the msgstore.db and the wa.db, I found out there is a table that ALEAPP doesn't recognize (jid_map).
Please find the Avilla extraction here:
https://drive.google.com/file/d/1y1XO7lmQsWv_rvwVYEaClEF5mfZ7m4m-/view?usp=sharing
(Please download as I will remove it from the Google Drive soon).
I discovered that the values in the "jid_row_id" column of the "chat" table (in my case 3 and 12) did NOT match the values in the "_id" column of the "jid" table (in my case 4 and 11). So then I found the table "jid_map". That table mapped values 3 and 12 in the "lid_row_id" column to values 4 and 11 in the "jid_row_id" column. I searched a little bit and the AI says it associates the new users based on id (LID) and the old users based on phone number (JID).
In my case, these joins solved the query:
message m INNER JOIN chat c ON m.chat_row_id == c._id
INNER JOIN jid_map jm ON c.jid_row_id == jm.lid_row_id
INNER JOIN jid j ON jm.jid_row_id == j._id
INNER JOIN wa_contacts w ON j.raw_string == w.jid
The complete solution seems to be checking whether that table exists, and if so, adapt the joins according to the situation. I found it by checking the source code of Wa Immich Tagger (https://github.com/mac12m99/Wa_Immich_Tagger) and WhatsApp Chat Exporter (https://github.com/KnugiHK/WhatsApp-Chat-Exporter/).
Regards
I input a WhatsApp extraction made with Avilla Forensics to ALEAPP and I got 0 results but I knew there were contacts, chats and messages in it. After I checked the msgstore.db and the wa.db, I found out there is a table that ALEAPP doesn't recognize (jid_map).
Please find the Avilla extraction here:
https://drive.google.com/file/d/1y1XO7lmQsWv_rvwVYEaClEF5mfZ7m4m-/view?usp=sharing
(Please download as I will remove it from the Google Drive soon).
I discovered that the values in the "jid_row_id" column of the "chat" table (in my case 3 and 12) did NOT match the values in the "_id" column of the "jid" table (in my case 4 and 11). So then I found the table "jid_map". That table mapped values 3 and 12 in the "lid_row_id" column to values 4 and 11 in the "jid_row_id" column. I searched a little bit and the AI says it associates the new users based on id (LID) and the old users based on phone number (JID).
In my case, these joins solved the query:
message m INNER JOIN chat c ON m.chat_row_id == c._id
INNER JOIN jid_map jm ON c.jid_row_id == jm.lid_row_id
INNER JOIN jid j ON jm.jid_row_id == j._id
INNER JOIN wa_contacts w ON j.raw_string == w.jid
The complete solution seems to be checking whether that table exists, and if so, adapt the joins according to the situation. I found it by checking the source code of Wa Immich Tagger (https://github.com/mac12m99/Wa_Immich_Tagger) and WhatsApp Chat Exporter (https://github.com/KnugiHK/WhatsApp-Chat-Exporter/).
Regards