status-go/protocol
Jonathan Rainville 2bbcce6e25
fix(bridge)_: fix bridge replies not working when they come from Discord (#5830)
Fixes https://github.com/status-im/status-desktop/issues/16323

The problem was that the code expected to receive the Discord message ID, but the bridge is smart enough to return the Status message ID already, so there is no need to try and convert it.

There were also a couple issues in the bridge code itself.
2024-09-27 11:36:25 -04:00
..
anonmetrics feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
audio
common feat_: accept community join request with mvds (#5787) 2024-09-05 18:53:09 +08:00
communities feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
datasync Add basic peersyncing 2024-01-23 12:46:17 +00:00
discord feat(discord): Import single channel from discord (#4160) 2023-10-25 12:32:21 -04:00
encryption feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
ens feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
identity chore(identity)_: remove old social links implementation (#5214) 2024-05-24 10:35:34 +02:00
internal/sqlite
migrations feat(sync)!: leftovers work for sync fallback (#5794) 2024-09-19 16:17:46 +08:00
peersyncing Extend peersyncing to sync 1-to-1 messages (#4962) 2024-05-14 12:20:13 +02:00
protobuf fix_: share all future addresses storage 2024-07-18 12:08:40 +03:00
pushnotificationclient feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
pushnotificationserver feat(metrics)_: add centralized metrics 2024-07-11 10:05:31 +01:00
requests fix_: ignore log partial API request (#5865) 2024-09-27 11:48:51 +01:00
sqlite Add basic peersyncing 2024-01-23 12:46:17 +00:00
storenodes refactor: remove wakuv1 code from mailserver cycle and add ENR to list of storenodes (#5753) 2024-09-05 10:25:26 -04:00
subscription
transport feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
tt fix_: enable tests to run with `-count` more than 1 (#5757) 2024-08-23 19:30:58 +00:00
v1 Always set PubsubTopic in filters 2023-11-18 02:26:34 +02:00
verification fix: use proper migrations for protocol's test database 2023-10-03 15:11:58 +02:00
wakusync chore(identity)_: remove old social links implementation (#5214) 2024-05-24 10:35:34 +02:00
zaputil fix_: enable tests to run with `-count` more than 1 (#5757) 2024-08-23 19:30:58 +00:00
LICENSE
README.md
activity_center.go feat(sync)!: leftovers work for sync fallback (#5794) 2024-09-19 16:17:46 +08:00
activity_center_persistence.go feat(sync)!: leftovers work for sync fallback (#5794) 2024-09-19 16:17:46 +08:00
activity_center_persistence_test.go fix!: ensure deleting message does not accidentally delete unrelated notifications (#5789) 2024-09-03 10:12:44 +01:00
chat.go fix!: move `MuteFor24Hr` to the end of the enum (#5813) 2024-09-10 11:25:40 +01:00
chat_group_proxy.go
chat_test.go bug_: fix resend type for private group messages (#5258) 2024-05-30 14:18:54 +02:00
communities_events_eventual_consistency_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
communities_events_owner_without_community_key_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
communities_events_token_master_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
communities_events_utils_test.go feat_: request to join community message use mvds (#5723) 2024-08-28 22:11:34 +08:00
communities_key_distributor.go feat_: retry sending specific messages 2024-05-02 05:40:49 +08:00
communities_messenger_admin_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
communities_messenger_helpers_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
communities_messenger_shared_member_address_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
communities_messenger_signers_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
communities_messenger_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
communities_messenger_test_suite_base_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
communities_messenger_token_permissions_test.go refactor_: use concrete datatypes instead of `string` (#5701) 2024-08-16 19:24:21 +01:00
contact.go chore(identity)_: remove old social links implementation (#5214) 2024-05-24 10:35:34 +02:00
contact_test.go
delete_message.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
edit_message.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
emoji_reaction.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
errors.go fix(archives): Skip importing the archives for community when user not a member (#4006) 2023-09-15 10:42:28 +03:00
group_chat_invitation.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
group_chat_system_messages.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
identity_images.go feat: Profile showcase data sharing (#4209) 2023-11-09 22:59:01 +04:00
linkpreview_unfurler.go feature: Unfurl status links (#4033) 2023-10-13 13:25:34 +01:00
linkpreview_unfurler_image.go fix(ImageUnfurler): set title for image links (#4215) 2023-10-26 17:52:52 +01:00
linkpreview_unfurler_oembed.go feature: Unfurl status links (#4033) 2023-10-13 13:25:34 +01:00
linkpreview_unfurler_opengraph.go Add favicons to external link previews (#4788) 2024-03-12 22:47:51 +02:00
linkpreview_unfurler_status.go fix(unfurl)_: The application crashes when generating status user profile link preview 2024-07-01 21:57:18 +07:00
local_notifications.go feat: new deeplink status-im->status-app (#4198) 2023-11-02 13:56:06 +08:00
message_builder.go
message_persistence.go fix(bridge)_: fix bridge replies not working when they come from Discord (#5830) 2024-09-27 11:36:25 -04:00
message_validator.go fix: validate display name on account creation (#4994) 2024-03-28 16:57:59 +01:00
message_validator_test.go feat(BridgeMessage): Add new type of chat message content: BridgeMessage 2024-01-30 12:14:54 +01:00
messages_iterator.go feat: introduce `MessagesIterator` 2024-02-09 16:02:17 +01:00
messenger.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_activity_center.go feat_: retry sending specific messages 2024-05-02 05:40:49 +08:00
messenger_activity_center_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
messenger_auto_message.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_backup.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_backup_handler.go chore(communities)_: request missing channels' encryption keys in a loop 2024-07-16 16:44:50 +02:00
messenger_backup_test.go fix_: Flaky TestBackupKeypairs test (#5811) 2024-09-09 20:30:05 +05:30
messenger_base_test.go chore_: refactor `TestMessengerCollapsedComunityCategoriesSuite` (#5790) 2024-09-03 12:39:49 +01:00
messenger_bookmarks.go
messenger_bridge_message_test.go fix(search)_: search now works with Discord import and bridged messages (#5489) 2024-07-05 13:33:14 -04:00
messenger_browsers.go
messenger_browsers_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_builder_test.go chore_: refactor `TestMessengerCollapsedComunityCategoriesSuite` (#5790) 2024-09-03 12:39:49 +01:00
messenger_chat_context_test.go Fix contact details large image is always empty (#4864) 2024-03-06 09:25:19 -08:00
messenger_chats.go add image to chat preview (#4888) 2024-04-09 17:39:14 +02:00
messenger_collapsed_community_categories.go
messenger_collapsed_community_categories_test.go chore_: refactor `TestMessengerCollapsedComunityCategoriesSuite` (#5790) 2024-09-03 12:39:49 +01:00
messenger_communities.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_communities_import_discord.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_communities_sharding_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
messenger_community_for_mobile_testing.go feat: New field in TokenCriteria proto 2024-02-27 16:25:26 +01:00
messenger_community_for_mobile_testing_test.go fix: sometimes channels do not randomly appear in test community after its creation (#4669) 2024-02-23 10:16:51 +08:00
messenger_community_metrics.go chore: remove boilerplate check of `communities.GetByID` clients 2024-01-10 18:58:17 +01:00
messenger_community_metrics_test.go refactor: update community access enum naming 2023-10-25 17:34:37 +02:00
messenger_community_shard.go feat_: rate limit message publishing (#5523) 2024-08-01 14:36:25 -04:00
messenger_community_storenodes.go feat_: rate limit message publishing (#5523) 2024-08-01 14:36:25 -04:00
messenger_config.go fix_: send accounts event on handling backed up accounts (#5739) 2024-08-31 00:58:03 +05:30
messenger_config_test.go refactor: remove wakuv1 code from mailserver cycle and add ENR to list of storenodes (#5753) 2024-09-05 10:25:26 -04:00
messenger_contact_requests_test.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_contact_update_test.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_contact_verification.go feat_: retry sending specific messages 2024-05-02 05:40:49 +08:00
messenger_contact_verification_test.go fix_: Add contact to removeTrustStatus response (#5058) 2024-04-18 19:28:44 +04:00
messenger_contacts.go fix_:sync contact request decision (#5130) 2024-05-15 08:01:47 +08:00
messenger_contacts_test.go chore(identity)_: remove old social links implementation (#5214) 2024-05-24 10:35:34 +02:00
messenger_curated_communities.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_delete_message_for_everyone_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
messenger_delete_message_for_me_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_delete_messages_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
messenger_discv5.go
messenger_edit_message_test.go fix: handle bridge message edits 2024-04-07 23:24:46 +02:00
messenger_emoji_reactions.go feat_: retry sending specific messages 2024-05-02 05:40:49 +08:00
messenger_emoji_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_ens.go
messenger_group_chat.go feat_: retry sending specific messages 2024-05-02 05:40:49 +08:00
messenger_group_chat_test.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_handler.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_handler_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_handlers.go fix_: remove unreachable code error message (#5845) 2024-09-23 09:12:02 -04:00
messenger_identity.go perf(login)!: Set-up messenger filters outside login flow (#5229) 2024-06-10 12:02:42 -03:00
messenger_identity_display_name_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_identity_image_test.go chore_: refactor `TestMessengerCollapsedComunityCategoriesSuite` (#5790) 2024-09-03 12:39:49 +01:00
messenger_installations_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_keycard.go
messenger_linkpreview.go feat: new `GetTextURLsToUnfurl` endpoint which extends GetURLs (#4294) 2023-11-17 13:32:37 +00:00
messenger_linkpreview_test.go Add favicons to external link previews (#4788) 2024-03-12 22:47:51 +02:00
messenger_mailserver.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_mailserver_cycle.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_mailserver_processMailserverBatch_test.go refactor: remove wakuv1 code from mailserver cycle and add ENR to list of storenodes (#5753) 2024-09-05 10:25:26 -04:00
messenger_maps.go
messenger_mention.go fix(mentions)_: add callID for `OnChangeText` (#3806) 2024-09-19 13:03:56 +08:00
messenger_mention_test.go fix(mentions)_: add callID for `OnChangeText` (#3806) 2024-09-19 13:03:56 +08:00
messenger_messages.go feat(messages)_: enable deleting bridge messages as admin (#5330) 2024-06-14 10:51:56 -04:00
messenger_messages_order_controller_test.go feat: introduce `MessagesOrderController` 2024-02-09 16:02:17 +01:00
messenger_messages_tracking_test.go refactor: only use shards (#5474) 2024-07-15 20:55:12 +05:30
messenger_mute_test.go
messenger_offline_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
messenger_pairing_and_syncing.go feat(sync)!: leftovers work for sync fallback (#5794) 2024-09-19 16:17:46 +08:00
messenger_pairing_and_syncing_test.go feat(sync)!: leftovers work for sync fallback (#5794) 2024-09-19 16:17:46 +08:00
messenger_peers.go refactor_: use concrete datatypes instead of `string` (#5701) 2024-08-16 19:24:21 +01:00
messenger_peersyncing.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_peersyncing_test.go chore(test_stats)_: better stats, print skipped tests (#5781) 2024-08-29 21:09:26 +01:00
messenger_pin_message_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_pin_messages.go bug_: fix resend type for private group messages (#5258) 2024-05-30 14:18:54 +02:00
messenger_profile_showcase.go feat_: retry sending specific messages 2024-05-02 05:40:49 +08:00
messenger_profile_showcase_proto_conversions.go Feat: Simplify profile showcase preferences (#4854) 2024-03-08 17:20:23 +01:00
messenger_profile_showcase_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
messenger_raw_message_resend.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_raw_message_resend_test.go feat_: request to join community message use mvds (#5723) 2024-08-28 22:11:34 +08:00
messenger_remove_message_test.go chore(community)_: serialise community jsons with image URLs 2024-07-11 18:55:24 +07:00
messenger_reply_test.go
messenger_response.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_response_test.go
messenger_saved_address.go feat_: accounts/saved addresses capacity related api endpoints added 2024-08-06 08:19:33 +02:00
messenger_send_images_album_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
messenger_settings.go Check for mobile data connection if setting is on (#5511) 2024-07-26 22:34:57 +01:00
messenger_settings_test.go feat: add contact customization color (#4869) 2024-04-03 22:49:57 +08:00
messenger_share_image_test.go fix: prevent messenger being started twice 2024-02-27 11:00:29 +01:00
messenger_share_urls.go chore: remove urls package (#5810) 2024-09-09 14:45:21 +01:00
messenger_share_urls_test.go chore: remove urls package (#5810) 2024-09-09 14:45:21 +01:00
messenger_status_updates.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_status_updates_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_store_node_request_manager.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_store_node_request_manager_config.go fix: remove store node envelopes ordering hotfix (#4622) 2024-01-27 13:02:12 +00:00
messenger_storenode_comunity_test.go refactor: remove wakuv1 code from mailserver cycle and add ENR to list of storenodes (#5753) 2024-09-05 10:25:26 -04:00
messenger_storenode_request_test.go refactor_: use concrete datatypes instead of `string` (#5701) 2024-08-16 19:24:21 +01:00
messenger_switcher_cards.go
messenger_sync_activity_center_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
messenger_sync_bookmark_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_sync_chat_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_sync_clear_history_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_sync_contact_request_decision_test.go Fix/duplicate accept cr messages (#4367) 2023-12-05 12:22:20 +08:00
messenger_sync_customization_color_test.go fix: close messenger's databases in tests 2023-11-28 20:59:25 +01:00
messenger_sync_keycard_change_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_sync_keycards_state_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_sync_profile_picture_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_sync_raw_messages.go fix(communities)_: ensure community sync doesn't override joined state 2024-06-20 15:37:20 +02:00
messenger_sync_saved_addresses_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_sync_settings.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_sync_settings_test.go fix: clear waku envelopes cache when deleting a chat (#4621) 2024-01-30 13:43:34 +00:00
messenger_sync_verification_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_sync_wallets_test.go feat: fallback pairing seed (#5614) 2024-07-30 17:14:05 +08:00
messenger_test.go chore_: small mailserver async fetching refactor 2024-07-16 10:53:42 +03:00
messenger_testing_utils.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_unread_test.go fix(CommunityMember)_: update LastUpdateClock 2024-07-09 18:19:40 +02:00
messenger_validate_requests_test.go fix(config)_: add API calls to set new waku node and max backups 2024-06-04 22:52:18 +07:00
messenger_waku_wrapper_test.go feat: introduce `testWakuWrapper` and `testPublicWakuAPIWrapper` 2024-02-09 16:02:17 +01:00
messenger_wallet.go feat_: log on panic (#5849) 2024-09-27 06:37:32 +08:00
messenger_wallet_test.go feat_: accounts/saved addresses capacity related api endpoints added 2024-08-06 08:19:33 +02:00
messenger_walletconnect.go
messenger_walletconnect_test.go
node_config_persistence_test.go fix(config)_: add API calls to set new waku node and max backups 2024-06-04 22:52:18 +07:00
persistence.go chore(identity)_: remove old social links implementation (#5214) 2024-05-24 10:35:34 +02:00
persistence_collapsed_community_categories.go
persistence_metrics.go
persistence_profile_showcase.go feat: Add an expiration and periodical publishing for community grants (#5024) 2024-04-17 16:53:51 +02:00
persistence_profile_showcase_test.go Feat: Simplify profile showcase preferences (#4854) 2024-03-08 17:20:23 +01:00
persistence_quoted_message_test.go chore(community)_: serialise community jsons with image URLs 2024-07-11 18:55:24 +07:00
persistence_test.go fix(bridge)_: fix bridge replies not working when they come from Discord (#5830) 2024-09-27 11:36:25 -04:00
push_notification_test.go fix: reject handling requests to join without revealed accounts (#5549) 2024-08-07 17:57:02 +02:00
status_update.go Always use protobufs by reference & generate handlers 2023-08-22 12:08:54 +01:00
switcher_card.go
transaction_validator.go
transaction_validator_test.go
waku_builder_test.go refactor: only use shards (#5474) 2024-07-15 20:55:12 +05:30

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.