Repository navigation
Add Odnoklassniki (OK) support for iOS - #2254
Merged
Merged
Conversation
Adds scripts/artifacts/odnoklassniki.py with three artifacts that read the Odnoklassniki (ru.ok.iphone / ru.ok.tt) YapDatabase store at Library/Application Support/ru.ok.tt/database_N.db/app.db. The store keeps each object as a MessagePack-encoded blob in a single database2 table, so the module includes a small self-contained MessagePack decoder rather than adding a dependency. - Odnoklassniki - Messages: one row per message, with direction from the message flag, sender resolved to a contact name where the user id is a known contact, chat resolved to the group title or the other participant's name, message text, an attachment type summary and a reactions summary. Includes a conversation data view. - Odnoklassniki - Chats: one row per chat with type, title, participants and activity times. - Odnoklassniki - Contacts: one row per contact with name, flags and a last-seen time joined from the contacts_last_seen collection by user id. Timestamps are converted from Unix milliseconds (messages and chats) and Unix seconds (last seen). Undocumented integer codes are reported as stored. Validated against a private sample; no sample data is recorded. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Photo and video attachments carry a small preview image inline in the message object itself (the previewData field, WebP on the tested sample). Render it as embedded media in a new Media column and declare mediaColumn in the conversation view, so a photo or video message shows its preview in the report and the LAVA conversation view. These are low-resolution previews from the record itself; the full-resolution file the app caches separately is keyed by a hash not derived here, so it is not linked, and the notes say so. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds Odnoklassniki (OK) support for iOS. Three artifacts read the app's YapDatabase store at Library/Application Support/ru.ok.tt/database_N.db/app.db, whose objects are MessagePack-encoded blobs in a single database2 table. The module carries a small self-contained MessagePack decoder, so no new dependency is added.
Timestamps are converted from Unix milliseconds (messages and chats) and Unix seconds (last seen). Undocumented integer codes (message type, contact type, gender) are reported as stored. Attachment media files are not rendered; the sticker and animoji catalogue collections and the separate onelogV2 telemetry database are not parsed.
Validated against a private sample with a real profile-driven run (Messages 42, Chats 2, Contacts 2). No sample data is recorded.