From 2f1536052677d8e460ca0184ff15608ccf0c82ed Mon Sep 17 00:00:00 2001 From: fschuh Date: Sun, 4 May 2025 15:58:02 -0400 Subject: [PATCH] Fixed remaining compatibility issues with latest code --- Whatsapp_Chat_Exporter/__main__.py | 27 ++++++++++++++------------- Whatsapp_Chat_Exporter/data_model.py | 12 +++++++----- 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/Whatsapp_Chat_Exporter/__main__.py b/Whatsapp_Chat_Exporter/__main__.py index 46b0734..5d09643 100644 --- a/Whatsapp_Chat_Exporter/__main__.py +++ b/Whatsapp_Chat_Exporter/__main__.py @@ -701,8 +701,6 @@ def main(): args.whatsapp_theme, args.headline ) - elif args.incremental_merge: - incremental_merge(args.source_dir, args.target_dir, args.media) elif args.exported: # Process exported chat process_exported_chat(args, data) @@ -749,16 +747,19 @@ def main(): if args.wa is None: args.wa = "ContactsV2.sqlite" - # Process contacts - process_contacts(args, data, contact_store) - - # Process messages, media, and calls - process_messages(args, data) - - # Create output files - create_output_files(args, data, contact_store) - - # Handle media directory - handle_media_directory(args) + if args.incremental_merge: + incremental_merge(args.source_dir, args.target_dir, args.media) + else: + # Process contacts + process_contacts(args, data, contact_store) + + # Process messages, media, and calls + process_messages(args, data) + + # Create output files + create_output_files(args, data, contact_store) + + # Handle media directory + handle_media_directory(args) print("Everything is done!") \ No newline at end of file diff --git a/Whatsapp_Chat_Exporter/data_model.py b/Whatsapp_Chat_Exporter/data_model.py index 09101b0..80e1ea7 100644 --- a/Whatsapp_Chat_Exporter/data_model.py +++ b/Whatsapp_Chat_Exporter/data_model.py @@ -255,7 +255,7 @@ class ChatStore: self.status = other.status or self.status # Merge messages - self.messages.update(other.messages) + self._messages.update(other._messages) class Message: """ @@ -341,10 +341,12 @@ class Message: @classmethod def from_json(cls, data): message = cls( - data["from_me"], - data["timestamp"], - data["time"], - data["key_id"] + from_me = data["from_me"], + timestamp = data["timestamp"], + time = data["time"], + key_id = data["key_id"], + received_timestamp = data.get("received_timestamp"), + read_timestamp = data.get("read_timestamp") ) message.media = data.get("media") message.meta = data.get("meta")