status-go/protocol
Andrea Maria Piana 55f7ac420d Make sure image URL are preserved when deleting a message for me
When deleting a message for me, the image url wasn't preserved,
resulting in the image disappearing on the client side.
This commit adds the processing of returned messages so that the image
is preserved.
2023-06-30 11:12:26 +01:00
..
anonmetrics fix: unable to perform backup 2023-06-29 13:04:49 +01:00
audio Add audio messages 2020-07-27 17:14:50 +02:00
common Call before dispatch for group chat messages 2023-06-29 13:04:49 +01:00
communities feat(AssetsDeployment): Assets deployment 2023-06-29 16:10:05 +02:00
datasync Rename MessageProcessor to MessageSender (#2264) 2021-06-23 17:13:48 +03:00
discord refactor(import-tool): process import data in chunks 2023-01-30 12:23:56 +01:00
encryption fix: unable to perform backup 2023-06-29 13:04:49 +01:00
ens Add permission checks for ENS token permissions 2023-06-05 13:10:48 +02:00
identity Updates ring width and palette to match the designs (#3671) 2023-06-26 13:17:59 +01:00
internal/sqlite Sync Settings (#2478) 2022-03-23 18:47:00 +00:00
linkpreview Support unfurling more websites (#3530) 2023-06-05 07:46:17 -03:00
migrations feat(AssetsDeployment): Assets deployment 2023-06-29 16:10:05 +02:00
protobuf feat(AssetsDeployment): Assets deployment 2023-06-29 16:10:05 +02:00
pushnotificationclient fix: unable to perform backup 2023-06-29 13:04:49 +01:00
pushnotificationserver fix: unable to perform backup 2023-06-29 13:04:49 +01:00
requests Allow passing nameserver on login 2023-06-29 13:05:46 +01:00
sqlite chore(upgradeSQLCipher): Upgrading SQLCipher to version 5.4.5 (#3559) 2023-06-07 08:58:01 +03:00
subscription
transport fix: unable to perform backup 2023-06-29 13:04:49 +01:00
tt Tests and linting 2021-09-30 13:02:41 +01:00
urls test: remove flaky test 2023-05-25 19:46:47 +02:00
v1 feat: community admin permission functionality (#3569) 2023-06-14 10:15:46 -04:00
verification feat(ActivityCenter): Add message for canceling contact requests (#2992) 2022-12-14 12:27:02 +04:00
wakusync fix: profile social links updated 2023-06-06 09:59:12 +02:00
zaputil
LICENSE
README.md Added basic history of the protocol package (#1984) 2020-06-04 11:23:09 +01:00
activity_center.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
activity_center_persistence.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
activity_center_persistence_test.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
chat.go feat(categories): Add muted type to category muting shortcut (#3534) 2023-06-02 14:25:32 +03:00
chat_group_proxy.go Clean up protocol package (#1890) 2020-03-09 07:19:23 +01:00
chat_test.go URL unfurling (initial implementation) (#3471) 2023-05-18 15:43:06 -03:00
communities_messenger_admin_test.go fix: admins are not allowed to kick or ban other admins 2023-06-27 09:14:26 +02:00
communities_messenger_helpers_test.go chore: add TestBecomeMemberPermissions integration test 2023-06-29 10:02:09 +02:00
communities_messenger_test.go refactor: extract communities_messenger_token_permissions_test 2023-06-28 07:56:51 +02:00
communities_messenger_token_permissions_test.go chore: add TestBecomeMemberPermissions integration test 2023-06-29 10:02:09 +02:00
contact.go Add system message for mutual contact state updates (#3519) 2023-06-08 16:00:19 +04:00
contact_test.go Compute emojiHash on-the-fly 2023-03-06 13:22:40 +02:00
delete_message.go sync message for `delete for me` should not be sent to someone else (#3462) 2023-05-09 20:54:56 +08:00
edit_message.go address feedback 2021-06-29 13:15:15 +02:00
emoji_reaction.go Return compressed key with emojis (#3410) 2023-05-10 13:45:42 +03:00
errors.go Add ClearHistory & DeactivateChat methods 2021-01-11 13:36:05 +01:00
group_chat_invitation.go group chat invitation 2020-09-07 12:15:58 +02:00
group_chat_system_messages.go feat: Handle image in group chat 2022-09-01 12:19:01 +02:00
identity_images.go Split clock values for contacts 2023-01-31 15:43:00 +00:00
local_notifications.go Add primary & secondary names 2023-02-27 15:13:43 +00:00
message_builder.go add PinMessage and PinnedMessage (#2180) 2021-05-14 23:22:50 +02:00
message_persistence.go feat: add images count to reply (#3574) 2023-06-06 15:52:07 +04:00
message_validator.go Add system message for mutual contact state updates (#3519) 2023-06-08 16:00:19 +04:00
message_validator_test.go Fix protobuf ImageType change 2020-12-17 14:10:00 +01:00
messenger.go Only send PNs to chats that are unmuted (#3673) 2023-06-27 19:19:21 +04:00
messenger_activity_center.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
messenger_activity_center_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_auto_message.go Add read/unread messenger functions for activity center 2022-10-26 17:19:44 +01:00
messenger_backup.go fix: profile social links updated 2023-06-06 09:59:12 +02:00
messenger_backup_handler.go fix: profile social links updated 2023-06-06 09:59:12 +02:00
messenger_backup_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_base_test.go feat: a profile keypair name follows display name 2023-05-25 19:46:47 +02:00
messenger_bookmarks.go Sync all devices after initial pairing (#3047) 2023-01-06 20:21:14 +08:00
messenger_browsers.go Issue 13813 -- Use messenger ns for browser CRUD (#2801) 2022-08-24 16:05:35 +02:00
messenger_browsers_test.go Issue 13813 -- Use messenger ns for browser CRUD (#2801) 2022-08-24 16:05:35 +02:00
messenger_chats.go Make chat muting only works on one chat and not to completely block PNs from a user (#3647) 2023-06-22 08:06:32 +03:00
messenger_collapsed_community_categories.go Add collapsed community categories 2023-03-14 17:13:21 +00:00
messenger_collapsed_community_categories_test.go Fix collapsed tests 2023-03-16 13:40:20 +00:00
messenger_communities.go chore: add TestBecomeMemberPermissions integration test 2023-06-29 10:02:09 +02:00
messenger_config.go fix: save revealed accounts regardless of permissions granted (#3609) 2023-06-16 11:10:32 +04:00
messenger_contact_requests_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_contact_update_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_contact_verification.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
messenger_contact_verification_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_contacts.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
messenger_delete_message_for_everyone_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_delete_message_for_me_test.go sync message for `delete for me` should not be sent to someone else (#3462) 2023-05-09 20:54:56 +08:00
messenger_delete_message_test.go Make sure image URL are preserved when deleting a message for me 2023-06-30 11:12:26 +01:00
messenger_discv5.go feat: Add DiscV5 to Waku2 (#2434) 2021-11-22 09:40:14 -04:00
messenger_edit_message_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_emoji_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_ens.go Request/Decline access to communities 2021-02-26 15:35:43 +01:00
messenger_group_chat.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
messenger_group_chat_test.go feat: allow group admin to delete others message (#3259) 2023-03-07 22:38:09 +08:00
messenger_handler.go feat: community admin permission functionality (#3569) 2023-06-14 10:15:46 -04:00
messenger_handler_test.go Split clock values for contacts 2023-01-31 15:43:00 +00:00
messenger_identity.go Set installation name on account creation and pairing 2023-06-29 10:14:12 +02:00
messenger_identity_display_name_test.go feat: a profile keypair name follows display name 2023-05-25 19:46:47 +02:00
messenger_identity_image_test.go Add spiff workflow cmd 2023-03-16 14:31:34 +00:00
messenger_identity_social_links_test.go fix: profile social links updated 2023-06-06 09:59:12 +02:00
messenger_installations_test.go Fix installation test 2023-05-05 12:41:28 +01:00
messenger_keycard.go feat: accounts improvements applied 2023-05-25 19:46:47 +02:00
messenger_mailserver.go chore: `forceFetchingBackup` param added to `RequestAllHistoricMessages` and `RequestAllHistoricMessagesWithRetries` functions 2023-06-09 17:42:11 +02:00
messenger_mailserver_cycle.go chore: `forceFetchingBackup` param added to `RequestAllHistoricMessages` and `RequestAllHistoricMessagesWithRetries` functions 2023-06-09 17:42:11 +02:00
messenger_mailserver_processMailserverBatch_test.go test: processMailserverBatch 2023-04-30 10:04:04 -04:00
messenger_maps.go Tests and linting 2021-09-30 13:02:41 +01:00
messenger_mention.go support mention Non-Latin nickname (#3641) 2023-06-21 14:42:14 +08:00
messenger_mention_test.go support mention Non-Latin nickname (#3641) 2023-06-21 14:42:14 +08:00
messenger_messages.go Make sure image URL are preserved when deleting a message for me 2023-06-30 11:12:26 +01:00
messenger_mute_test.go Add muted_till param for chats (#3258) 2023-04-16 17:06:00 +02:00
messenger_peers.go chore: upgrade go-waku to v0.5 (#3213) 2023-02-22 17:58:17 -04:00
messenger_pin_message_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_pin_messages.go feat: community admin permission functionality (#3569) 2023-06-14 10:15:46 -04:00
messenger_reply_test.go fix(reply-test): fix reply test because msgs could come out of order 2023-01-11 16:24:42 -05:00
messenger_response.go feat: community admin permission functionality (#3569) 2023-06-14 10:15:46 -04:00
messenger_response_test.go Fix duplicated notifications on receiving contact update 2023-02-14 09:22:37 +00:00
messenger_saved_address.go feat: Update saved addresses DB to store ENS, isTest flag and chains (#3183) 2023-03-06 16:26:46 +03:00
messenger_send_images_album_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_share_image_test.go Run tests separately, make sure messenger is shutdown, fix torrent test 2023-06-23 11:30:04 +01:00
messenger_status_updates.go Upgrade linter to 1.50.0 2023-01-13 17:52:03 +00:00
messenger_status_updates_test.go Timeout automatic status updates (#2757) 2022-08-03 04:38:01 +05:30
messenger_switcher_cards.go Persist switcher cards (#3049) 2023-01-05 21:41:57 +05:30
messenger_sync_activity_notification_test.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
messenger_sync_bookmark_test.go support local pairing after logged in as receiver; pair installation;(#3202) 2023-02-28 20:32:45 +08:00
messenger_sync_chat_test.go support local pairing after logged in as receiver; pair installation;(#3202) 2023-02-28 20:32:45 +08:00
messenger_sync_clear_history_test.go support local pairing after logged in as receiver; pair installation;(#3202) 2023-02-28 20:32:45 +08:00
messenger_sync_keycard_change_test.go tests: `GetProfileKeypairForTest` from test helper updated and provides higher granularity 2023-05-25 19:46:47 +02:00
messenger_sync_keycards_state_test.go tests: `GetProfileKeypairForTest` from test helper updated and provides higher granularity 2023-05-25 19:46:47 +02:00
messenger_sync_profile_picture_test.go support local pairing after logged in as receiver; pair installation;(#3202) 2023-02-28 20:32:45 +08:00
messenger_sync_raw_messages.go fix: profile social links updated 2023-06-06 09:59:12 +02:00
messenger_sync_saved_addresses_test.go feat: Update saved addresses DB to store ENS, isTest flag and chains (#3183) 2023-03-06 16:26:46 +03:00
messenger_sync_settings.go feat: backup display name improvements 2023-03-31 16:20:50 +02:00
messenger_sync_settings_test.go Changes necessary to restore wallet on mobile app 2023-05-25 21:08:34 +02:00
messenger_sync_verification_test.go support local pairing after logged in as receiver; pair installation;(#3202) 2023-02-28 20:32:45 +08:00
messenger_sync_wallets_test.go chore: Add ColorId for Wallet accounts that can be shared with mobile (#3521) 2023-06-02 17:06:51 +02:00
messenger_test.go Add BeforeDispatch callback 2023-06-26 13:36:20 +01:00
messenger_wallet.go fix: issues caused by wrong `pairing.proto` fixed 2023-06-05 09:29:34 +02:00
messenger_walletconnect.go Implement wallet connect session CRUD API 2022-08-19 12:32:00 +01:00
messenger_walletconnect_test.go Implement wallet connect session CRUD API 2022-08-19 12:32:00 +01:00
persistence.go fix: profile social links updated 2023-06-06 09:59:12 +02:00
persistence_collapsed_community_categories.go Feat/sync activity center notification (#3535) 2023-06-10 10:00:17 +08:00
persistence_test.go Handle async raw message confirmations 2023-06-26 13:36:20 +01:00
push_notification_test.go Correctly shutdown messengers 2023-06-29 13:04:49 +01:00
status_update.go feat: user status (#2276) 2021-07-22 13:41:49 -04:00
switcher_card.go Persist switcher cards (#3049) 2023-01-05 21:41:57 +05:30
transaction_validator.go Move message to common namespace 2020-09-09 21:22:12 +02:00
transaction_validator_test.go Move message to common namespace 2020-09-09 21:22:12 +02:00

README.md

status-go/protocol

This is an implementation of the secure transport and payloads which are a part of the Status Client specification.

This implementation uses SQLite and SQLCipher for persistent storage.

The payloads are encoded using protocol-buffers.

Content

  • messenger.go is the main file which exports Messenger struct. This is a public API to interact with this implementation of the Status Chat Protocol.
  • protobuf/ contains protobuf files implementing payloads described in the Payloads spec.
  • encryption/ implements the Secure Transport spec.
  • transport/ connects the Status Chat Protocol with a wire-protocol which in our case is either Whisper or Waku.
  • datasync/ is an adapter for MVDS.
  • applicationmetadata/ is an outer layer wrapping a payload with an app-specific metadata like a signature.
  • identity/ implements details related to creating a three-word name and identicon.
  • migrations/ contains implementation specific migrations for the sqlite database which is used by Messenger as a persistent data store.

History

Originally this package was a dedicated repo called status-protocol-go and was migrated into status-go. The new status-go/protocol package maintained its own dependencies until sub modules were removed and the root go.mod file managed all dependencies for the entire status-go repo.