sendVPRequestMessage method

Future<void> sendVPRequestMessage(
  1. List<RequestVC> vcRequirements,
  2. String challenge
)

Implementation

Future<void> sendVPRequestMessage(
  List<RequestVC> vcRequirements,
  String challenge,
) async {
  try {
    vpChallenge = challenge;

    int currentTime = DateTime.now().millisecondsSinceEpoch ~/ 1000;
    var uuid = Uuid();
    var id = uuid.v4();
    String receiverDID = peerInfo["did"]!;
    VPRequestMessage vpRequestMessage = VPRequestMessage(
      id: id,
      from: did,
      to: [receiverDID],
      createdTime: currentTime,
      expiresTime: currentTime + 30000,
      vcRequirements: vcRequirements,
      challenge: challenge,
    );

    String peerSocketId = peerInfo["socketId"]!;
    String jwe = await makeJWEFromMessage(
      mnemonic,
      receiverDID,
      this,
      vpRequestMessage.toJson(),
    );
    socket.emit("message", {"to": peerSocketId, "m": jwe});
    print("VPRequestMessage sent to $peerSocketId");
  } catch (e) {
    throw Exception("Error in sendVPRequestMessage: $e");
  }
}