createElicitation method

Future<CreateElicitationResponse> createElicitation(
  1. CreateElicitationRequest params, {
  2. CancellationToken? cancellationToken,
})

Requests elicitation.

Known form and URL variants require their matching advertised mode. Future custom variants require the peer's top-level elicitation marker.

Implementation

Future<v2.CreateElicitationResponse> createElicitation(
  v2.CreateElicitationRequest params, {
  CancellationToken? cancellationToken,
}) {
  final String capabilityPath = switch (params) {
    v2.CreateElicitationRequestForm() => 'capabilities.elicitation.form',
    v2.CreateElicitationRequestUrl() => 'capabilities.elicitation.url',
    v2.CreateElicitationRequestCustom() => 'capabilities.elicitation',
  };
  lifecycle.peerCapabilities._require(
    capabilityPath,
    v2_methods.elicitationCreateMethod.name,
  );
  return _request(
    v2_methods.elicitationCreateMethod,
    params,
    cancellationToken: cancellationToken,
  );
}