diff --git a/channels/manager.go b/channels/manager.go index 1600271af693e6f76d1098c84f22b78332932037..73d507bf331dfc0efd7be3b659d2b37326addfbf 100644 --- a/channels/manager.go +++ b/channels/manager.go @@ -10,6 +10,24 @@ // replies, reactions, and eventually admin commands. package channels +// on sending, data propagates as follows: +// Send function (Example: SendMessage) - > SendGeneric -> +// Broadcast.BroadcastWithAssembler -> cmix.SendWithAssembler + +// on receiving messages propagate as follows: +// cmix message pickup (by service)- > userListener -> +// events.triggerEvent -> messageTypeHandler (example: Text) -> +// eventModel (example: ReceiveMessage) + +// on sendingAdmin, data propagates as follows: +// Send function - > SendAdminGeneric -> +// Broadcast.BroadcastAsymmetricWithAssembler -> cmix.SendWithAssembler + +// on receiving admin messages propagate as follows: +// cmix message pickup (by service)- > adminListener -> +// events.triggerAdminEvent -> messageTypeHandler (example: Text) -> +// eventModel (example: ReceiveMessage) + import ( "gitlab.com/elixxir/client/broadcast" "gitlab.com/elixxir/client/storage/versioned"