Matrix 项目学习笔记

Matrix 项目学习笔记

  1. IM
  2. Matrix
  3. 1 month ago
  4. 1 min read

Dendrite 项目

Dendrite 项目是 Matrix.org 官方推出的 Matrix 的服务端

目录结构

  • Dendrite
    • appservice
      • api
        • query.go
      • consumers
        • roomserver.go
      • query
        • query.go
      • appservice_test.go
      • appservice.go
    • build
      • dendritejs-pinecone
      • docker
      • gobind-pinecone
      • gobind-yggdrasil
      • scripts
    • clientapi
      • api
        • api.go
      • auth
        • authtypes
          • flow.go
          • logintypes.go
          • membership.go
          • profile.go
          • threepid.go
        • auth.go
        • login_application_service.go
        • login_test.go
        • login_token.go
        • login.go
        • password.go
        • user_interactive_test.go
        • user_interactive.go
      • httputil
        • httputil.go
        • parse.go
      • producers
        • syncapi.go
      • routing
        • account_data.go
        • admin_whois.go
        • admin.go
        • aliases.go
        • auth_fallback_test.go
        • auth_fallback.go
        • capabilities.go
        • createroom.go
        • deactivate.go
        • device.go
        • directory_public_test.go
        • directory_public.go
        • directory.go
        • joined_rooms.go
        • joinroom_test.go
        • joinroom.go
        • key_backup.go
        • key_crosssigning.go
        • keys.go
        • leaveroom.go
        • login_test.go
        • login.go
        • logout.go
        • membership.go
        • memberships.go
        • notification.go
        • openid.go
        • password.go
        • peekroom.go
        • presence.go
        • profile.go
        • pusher.go
        • pushrules.go
        • receipt.go
        • redaction.go
        • register_secret_test.go
        • register_secret.go
        • register_test.go
        • register.go
        • report_event.go
        • room_hierarchy.go
        • room_tagging.go
        • routing.go
        • sendevent_test.go
        • sendevent.go
        • sendtodevice.go
        • sendtyping.go
        • server_notices_test.go
        • server_notices.go
        • state_test.go
        • state.go
        • thirdparty.go
        • threepid.go
        • upgrade_room.go
        • userdirectory.go
        • voip.go
        • whoami.go
      • threepid
        • invites.go
        • threepid.go
      • userutil
        • userutil_test.go
        • userutil.go
      • admin_test.go
      • clientapi_test.go
      • clientapi.go
      • README.md
    • cmd
      • create-account
        • testdata
          • my.pass
        • main_test.go
        • main.go
      • dendrite
        • main_test.go
        • main.go
      • dendrite-demo-pinecone
        • conduit
          • conduit_test.go
          • conduit.go
        • conn
          • client.go
          • ws.go
        • defaults
          • defaults.go
        • embed
          • embed_elementweb.go
          • embed_other.go
        • monolith
          • keys.go
          • monolith.go
        • relay
          • retriever_test.go
          • retriever.go
        • rooms
          • rooms.go
        • users
          • users.go
        • main.go
        • README.md
      • dendrite-demo-yggdrasil
        • embed
          • embed_elementweb.go
          • embed_other.go
        • signing
          • fetcher.go
        • yggconn
          • client.go
          • node.go
          • session.go
        • yggrooms
          • yggrooms.go
        • main.go
        • README.md
      • dendrite-upgrade-tests
        • main.go
        • tar.go
        • tests.go
      • furl
        • main.go
      • generate-config
        • main.go
      • generate-keys
        • main.go
      • resolve-state
        • main.go
    • docs
    • federationapi
      • api
        • api.go
      • consumers
        • keychange.go
        • presence.go
        • receipts.go
        • roomserver_test.go
        • roomserver.go
        • sendtodevice.go
        • typing.go
      • internal
        • api.go
        • federationclient_test.go
        • federationclient.go
        • keys.go
        • perform_test.go
        • perform.go
        • query.go
      • producers
        • syncapi.go
      • queue
        • destinationqueue.go
        • queue_test.go
        • queue.go
      • routing
        • backfill.go
        • devices.go
        • eventauth.go
        • events.go
        • invite.go
        • join.go
        • keys.go
        • leave.go
        • missingevents.go
        • openid.go
        • peek.go
        • profile_test.go
        • profile.go
        • publicrooms.go
        • query_test.go
        • query.go
        • routing.go
        • send_test.go
        • send.go
        • state.go
        • threepid.go
        • version.go
      • statistics
        • statistics_test.go
        • statistics.go
      • storage
        • cache
        • postgres
        • shared
        • sqlite3
        • tables
        • interface.go
        • storage_test.go
        • storage_wasm.go
        • storage.go
      • types
        • types.go
      • federationapi_keys_test.go
      • federationapi_test.go
      • federationapi.go
    • helm
    • internal
      • caching
        • cache_eventstatekeys.go
        • cache_federationevents.go
        • cache_lazy_load_members.go
        • cache_roomevents.go
        • cache_roomservernids.go
        • cache_roomversions.go
        • cache_serverkeys.go
        • cache_space_rooms.go
        • cache_typing_test.go
        • cache_typing.go
        • caches.go
        • impl_ristretto.go
      • eventutil
        • eventcontent.go
        • events.go
        • types.go
      • fulltext
        • bleve_test.go
        • bleve_wasm.go
        • bleve.go
      • hooks
        • hooks.go
      • httputil
        • httpapi_test.go
        • httpapi.go
        • paths.go
        • rate_limiting.go
        • routing_test.go
        • routing.go
      • pushgateway
        • client_test.go
        • client.go
        • pushgateway.go
      • pushrules
        • action_test.go
        • action.go
        • condition.go
        • default_content.go
        • default_override.go
        • default_pushrules_test.go
        • default_underride.go
        • default.go
        • evaluate_test.go
        • evaluate.go
        • pushrules.go
        • util_test.go
        • util.go
        • validate_test.go
        • validate.go
      • sqlutil
        • internal/sqlutil/connection_manager_test.go
        • internal/sqlutil/connection_manager.go
        • internal/sqlutil/migrate_test.go
        • internal/sqlutil/migrate.go
        • internal/sqlutil/sql.go
        • internal/sqlutil/sqlite_cgo.go
        • internal/sqlutil/sqlite_native.go
        • internal/sqlutil/sqlutil_test.go
        • internal/sqlutil/sqlutil.go
        • internal/sqlutil/unique_constraint_cgo.go
        • internal/sqlutil/unique_constraint_wasm.go
        • internal/sqlutil/unique_constraint.go
        • internal/sqlutil/uri.go
        • internal/sqlutil/writer_dummy.go
        • internal/sqlutil/writer_exclusive.go
        • internal/sqlutil/writer.go
      • transactions
        • transactions_test.go
        • transactions.go
      • log_unix.go
      • log_windows.go
      • log.go
      • mutex.go
      • tracing_test.go
      • tracing.go
      • transactionrequest_test.go
      • transactionrequest.go
      • validate_test.go
      • validate.go
      • version.go
    • mediaapi
      • fileutils
        • fileutils.go
      • routing
        • download_test.go
        • download.go
        • routing.go
        • upload_test.go
        • upload.go
      • storage
        • postgres
        • shared
        • sqlite3
        • tables
        • interface.go
        • storage_test.go
        • storage_wasm.go
        • storage.go
      • thumbnailer
        • thumbnailer_bimg.go
        • thumbnailer_nfnt.go
        • thumbnailer.go
      • types
        • types.go
      • bimg-96x96-crop.jpg
      • mediaapi.go
      • nfnt-96x96-crop.jpg
      • README.md
    • relayapi
      • api
        • api.go
      • internal
        • api.go
        • perform_test.go
        • perform.go
      • routing
        • relaytxn_test.go
        • relaytxn.go
        • routing.go
        • sendrelay_test.go
        • sendrelay.go
      • storage
        • postgres
        • shared
        • sqlite3
        • tables
        • interface.go
        • storage_wasm.go
        • storage.go
      • ARCHITECTURE.md
      • relayapi_test.go
      • relayapi.go
    • roomserver
      • acls
        • acls_test.go
        • acls.go
      • api
        • alias_test.go
        • alias.go
        • api.go
        • input.go
        • output.go
        • perform_test.go
        • perform.go
        • query.go
        • wrapper.go
      • auth
        • auth_test.go
        • auth.go
      • internal
        • helpers
          • auth_test.go
          • auth.go
          • helpers_test.go
          • helpers.go
        • input
          • input_events_test.go
          • input_events.go
          • input_latest_events.go
          • input_membership.go
          • input_missing.go
          • input_test.go
          • input.go
        • perform
          • perform_admin.go
          • perform_backfill.go
          • perform_create_room.go
          • perform_forget.go
          • perform_inbound_peek.go
          • perform_invite.go
          • perform_join.go
          • perform_leave.go
          • perform_peek.go
          • perform_publish.go
          • perform_unpeek.go
          • perform_upgrade.go
        • query
          • query_room_hierarchy.go
          • query_test.go
          • query.go
        • alias.go
        • api.go
      • producers
        • roomevent.go
      • state
        • state_test.go
        • state.go
      • storage
        • postgres
        • shared
        • sqlite3
        • tables
        • interface.go
        • storage_wasm.go
        • storage.go
      • types
        • headered_event.go
        • types_test.go
        • types.go
      • version
        • version.go
      • README.md
      • roomserver_test.go
      • roomserver.go
    • setup
      • base
        • static
          • client/login
          • index.gotmpl
        • base_test.go
        • base.go
        • federation.go
        • sanity_other.go
        • sanity_unix.go
      • config
        • config_address_test.go
        • config_address.go
        • config_appservice.go
        • config_clientapi.go
        • config_federationapi.go
        • config_global.go
        • config_jetstream.go
        • config_keyserver.go
        • config_mediaapi.go
        • config_mscs.go
        • config_relayapi.go
        • config_roomserver.go
        • config_syncapi.go
        • config_test.go
        • config_userapi.go
        • config.go
      • jetstream
        • helpers.go
        • log.go
        • nats.go
        • streams.go
      • mscs
        • msc2836
          • msc2836_test.go
          • msc2836.go
          • storage.go
        • mscs.go
      • process
        • process.go
      • flags.go
      • monolith.go
    • syncapi
      • consumers
        • clientapi.go
        • keychange.go
        • presence.go
        • receipts.go
        • roomserver.go
        • sendtodevice.go
        • typing.go
        • userapi.go
      • internal
        • history_visibility_test.go
        • history_visibility.go
        • keychange_test.go
        • keychange.go
      • notifier
        • notifier_test.go
        • notifier.go
        • userstream.go
      • producers
        • appservices.go
        • federationapi_presence.go
      • routing
        • context_test.go
        • context.go
        • filter.go
        • getevent.go
        • memberships.go
        • messages.go
        • relations.go
        • routing.go
        • search_test.go
        • search.go
      • storage
        • postgres
        • shared
        • sqlite3
        • tables
        • interface.go
        • storage_test.go
        • storage_wasm.go
        • storage.go
      • streams
        • stream_accountdata.go
        • stream_devicelist.go
        • stream_invite.go
        • stream_notificationdata.go
        • stream_pdu.go
        • stream_presence.go
        • stream_receipt.go
        • stream_sendtodevice.go
        • stream_typing.go
        • streamprovider.go
        • streams.go
        • template_stream.go
      • sync
        • request.go
        • requestpool_test.go
        • requestpool.go
      • synctypes
        • clientevent_test.go
        • clientevent.go
        • filter_test.go
        • filter.go
      • types
        • presence.go
        • provider.go
        • types_test.go
        • types.go
      • README.md
      • syncapi_test.go
      • syncapi.go
    • test
      • testrig
      • wasm
      • db.go
      • event.go
      • http.go
      • keyring.go
      • keys.go
      • memory_federation_db.go
      • memory_relay_db.go
      • room.go
      • slice.go
      • user.go
    • userapi
      • api
        • api_logintoken.go
        • api.go
      • consumers
        • clientapi.go
        • devicelistupdate.go
        • roomserver_test.go
        • roomserver.go
        • signingkeyupdate.go
      • internal
        • api_logintoken.go
        • cross_signing.go
        • device_list_update_default.go
        • device_list_update_sytest.go
        • device_list_update_test.go
        • device_list_update.go
        • key_api_test.go
        • key_api.go
        • user_api.go
      • producers
        • keychange.go
        • syncapi.go
      • storage
        • postgres
        • shared
        • sqlite3
        • tables
        • interface.go
        • storage_test.go
        • storage_wasm.go
        • storage.go
      • types
        • statistics.go
        • storage.go
      • util
        • devices.go
        • notify_test.go
        • notify.go
        • phonehomestats_test.go
        • phonehomestats.go
        • stats_wasm.go
        • stats_windows.go
        • stats.go
      • userapi_test.go
      • userapi.go
使用微信扫码赞助该文章
赞助二维码 轻赞助 提供支持
Matrix IM