This API allows you to connect WebRTC-enabled devices with Alexa display devices. When invoked, it sends the Alexa Session Description Protocol (SDP) offer to the master peer. The offer is delivered as soon as the master is connected to the specified signaling channel. This API returns the SDP answer from the connected master. If the master is not connected to the signaling channel, redelivery requests are made until the message expires.
Parameters:
-
channel_arn
(Optional[ResourceARN], default:
None
)
–
The ARN of the signaling channel by which Alexa and the master peer communicate.
-
sender_client_id
(Optional[ClientId], default:
None
)
–
The unique identifier for the sender client.
-
message_payload
(Optional[MessagePayload], default:
None
)
–
The base64-encoded SDP offer content.
Raises:
Source code in docs_src/capo_kinesis_video_signaling/_services/async_kinesis_video_signaling.py
| async def send_alexa_offer_to_master(
self,
*,
config_overrides: Optional[AsyncKinesisVideoSignalingClientConfig] = None,
channel_arn: Optional[
"capo_kinesis_video_signaling.types.resource_arn.ResourceARN"
] = None,
sender_client_id: Optional[
"capo_kinesis_video_signaling.types.client_id.ClientId"
] = None,
message_payload: Optional[
"capo_kinesis_video_signaling.types.message_payload.MessagePayload"
] = None,
) -> "capo_kinesis_video_signaling.types.send_alexa_offer_to_master_response.SendAlexaOfferToMasterResponse":
"""<p>This API allows you to connect WebRTC-enabled devices with Alexa display devices. When invoked, it sends the Alexa Session Description Protocol (SDP) offer to the master peer. The offer is delivered as soon as the master is connected to the specified signaling channel. This API returns the SDP answer from the connected master. If the master is not connected to the signaling channel, redelivery requests are made until the message expires.</p>
Args:
channel_arn: <p>The ARN of the signaling channel by which Alexa and the master peer communicate.</p>
sender_client_id: <p>The unique identifier for the sender client.</p>
message_payload: <p>The base64-encoded SDP offer content.</p>
Raises:
capo_kinesis_video_signaling.errors.client_limit_exceeded_exception.ClientLimitExceededException: <p>Your request was throttled because you have exceeded the limit of allowed client calls. Try making the call later.</p>
capo_kinesis_video_signaling.errors.invalid_argument_exception.InvalidArgumentException: <p>The value for this input parameter is invalid.</p>
capo_kinesis_video_signaling.errors.not_authorized_exception.NotAuthorizedException: <p>The caller is not authorized to perform this operation.</p>
capo_kinesis_video_signaling.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource is not found.</p>
capo_kinesis_video_signaling.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
async def _handler(
req: "AsyncOperationRequest[capo_kinesis_video_signaling.types.send_alexa_offer_to_master_request.SendAlexaOfferToMasterRequest]",
) -> AsyncOperationResponse[
"capo_kinesis_video_signaling.types.send_alexa_offer_to_master_response.SendAlexaOfferToMasterResponse"
]:
import capo_kinesis_video_signaling._operations.aws_acuity_signaling_service.send_alexa_offer_to_master
(
output,
http_response,
) = await capo_kinesis_video_signaling._operations.aws_acuity_signaling_service.send_alexa_offer_to_master.async_send_alexa_offer_to_master(
req.options, req.input
)
return AsyncOperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("SendAlexaOfferToMaster")
)
input_: capo_kinesis_video_signaling.types.send_alexa_offer_to_master_request.SendAlexaOfferToMasterRequest = {}
if channel_arn is not None:
input_["channel_arn"] = channel_arn
if sender_client_id is not None:
input_["sender_client_id"] = sender_client_id
if message_payload is not None:
input_["message_payload"] = message_payload
response = await aexecute_pipeline(
AsyncOperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
await response.response.aclose()
return response.output
|