core: update agent protocol to parameterize by entity type (#1988)

* core: update agent protocol to parameterize by entity type

* update simplexmq
This commit is contained in:
Evgeny Poberezkin
2023-03-10 17:23:04 +00:00
committed by GitHub
parent 1b7b9da07c
commit f2f4b26c35
5 changed files with 32 additions and 29 deletions
+13 -11
View File
@@ -49,7 +49,7 @@ import Database.SQLite.Simple.ToField (ToField (..))
import GHC.Generics (Generic)
import GHC.Records.Compat
import Simplex.FileTransfer.Description (FileDigest)
import Simplex.Messaging.Agent.Protocol (ACommandTag (..), ACorrId, AParty (..), ConnId, ConnectionMode (..), ConnectionRequestUri, InvitationId)
import Simplex.Messaging.Agent.Protocol (ACommandTag (..), ACorrId, AParty (..), APartyCmdTag (..), ConnId, ConnectionMode (..), ConnectionRequestUri, InvitationId, SAEntity (..))
import Simplex.Messaging.Encoding.String
import Simplex.Messaging.Parsers (dropPrefix, enumJSON, fromTextField_, sumTypeJSON, taggedObjectJSON)
import Simplex.Messaging.Protocol (AProtoServerWithAuth, ProtoServerWithAuth, ProtocolTypeI)
@@ -1939,17 +1939,19 @@ instance TextEncoding CommandFunction where
CFAckMessage -> "ack_message"
CFDeleteConn -> "delete_conn"
commandExpectedResponse :: CommandFunction -> ACommandTag 'Agent
commandExpectedResponse :: CommandFunction -> APartyCmdTag 'Agent
commandExpectedResponse = \case
CFCreateConnGrpMemInv -> INV_
CFCreateConnGrpInv -> INV_
CFCreateConnFileInvDirect -> INV_
CFCreateConnFileInvGroup -> INV_
CFJoinConn -> OK_
CFAllowConn -> OK_
CFAcceptContact -> OK_
CFAckMessage -> OK_
CFDeleteConn -> OK_
CFCreateConnGrpMemInv -> t INV_
CFCreateConnGrpInv -> t INV_
CFCreateConnFileInvDirect -> t INV_
CFCreateConnFileInvGroup -> t INV_
CFJoinConn -> t OK_
CFAllowConn -> t OK_
CFAcceptContact -> t OK_
CFAckMessage -> t OK_
CFDeleteConn -> t OK_
where
t = APCT SAEConn
data CommandData = CommandData
{ cmdId :: CommandId,