sendDIDConnectedMessage function

Future<void> sendDIDConnectedMessage(
  1. String mnemonic,
  2. Map<String, dynamic> payload,
  3. InfraDIDCommAgent agent
)

Implementation

Future<void> sendDIDConnectedMessage(
  String mnemonic,
  Map<String, dynamic> payload,
  InfraDIDCommAgent agent,
) async {
  int currentTime = DateTime.now().millisecondsSinceEpoch ~/ 1000;
  var uuid = Uuid();
  var id = uuid.v4();
  String receiverDID = payload["from"];

  DIDConnectedMessage didConnectedMessage = DIDConnectedMessage(
    id: id,
    from: payload["to"][0],
    to: [receiverDID],
    createdTime: currentTime,
    expiresTime: currentTime + 30000,
    context: Context.fromJson(payload["body"]["context"]),
    status: "Successfully Connected",
  );

  String jwe = await makeJWEFromMessage(
    mnemonic,
    receiverDID,
    agent,
    didConnectedMessage.toJson(),
  );

  agent.socket.emit(
    "message",
    {"to": payload["body"]["socketId"], "m": jwe},
  );
  print(
    "DIDConnectedMessage sent to ${payload["body"]["socketId"]}",
  );
}