respondToSecureSession static method
Future<({Map<String, dynamic> responseMessage, SecureSession session})>
respondToSecureSession({
- required String localPeerId,
- required Map<
String, dynamic> initiationMessage, - List<
CryptoAlgorithm> ? supportedAsymmetric, - List<
CryptoAlgorithm> ? supportedSymmetric, - CryptoAlgorithm? preferredAsymmetric,
- CryptoAlgorithm? preferredSymmetric,
Full workflow for session responder
Implementation
static Future<({SecureSession session, Map<String, dynamic> responseMessage})> respondToSecureSession({
required String localPeerId,
required Map<String, dynamic> initiationMessage,
List<CryptoAlgorithm>? supportedAsymmetric,
List<CryptoAlgorithm>? supportedSymmetric,
CryptoAlgorithm? preferredAsymmetric,
CryptoAlgorithm? preferredSymmetric,
}) async {
final sessionManager = createSessionManager();
final localCapabilities = createDefaultCapabilities(
peerId: localPeerId,
supportedAsymmetric: supportedAsymmetric,
supportedSymmetric: supportedSymmetric,
preferredAsymmetric: preferredAsymmetric,
preferredSymmetric: preferredSymmetric,
);
// Step 1: Respond to initiation
final responseMessage = await sessionManager.respondToSession(
initiationMessage,
localCapabilities,
);
// Step 2: Complete session
final session = await sessionManager.completeSession();
return (session: session, responseMessage: responseMessage);
}