Skip to content

register_transit_gateway_multicast_group_sources async

register_transit_gateway_multicast_group_sources(
    *,
    config_overrides: Optional[AsyncEC2ClientConfig] = None,
    transit_gateway_multicast_domain_id: Optional[
        TransitGatewayMulticastDomainId
    ] = None,
    group_ip_address: Optional[String] = None,
    network_interface_ids: Optional[TransitGatewayNetworkInterfaceIdList] = None,
    dry_run: Optional[Boolean] = None,
) -> RegisterTransitGatewayMulticastGroupSourcesResult

Registers sources (network interfaces) with the specified transit gateway multicast group.

A multicast source is a network interface attached to a supported instance that sends multicast traffic. For more information about supported instances, see Multicast on transit gateways in the Amazon Web Services Transit Gateways Guide.

After you add the source, use SearchTransitGatewayMulticastGroups to verify that the source was added to the multicast group.

Parameters:

  • transit_gateway_multicast_domain_id (Optional[TransitGatewayMulticastDomainId], default: None ) –

    The ID of the transit gateway multicast domain.

  • group_ip_address (Optional[String], default: None ) –

    The IP address assigned to the transit gateway multicast group.

  • network_interface_ids (Optional[TransitGatewayNetworkInterfaceIdList], default: None ) –

    The group sources' network interface IDs to register with the transit gateway multicast group.

  • dry_run (Optional[Boolean], default: None ) –

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

Raises:

Source code in docs_src/capo_ec2/_services/async_ec2.py
async def register_transit_gateway_multicast_group_sources(
    self,
    *,
    config_overrides: Optional[AsyncEC2ClientConfig] = None,
    transit_gateway_multicast_domain_id: Optional[
        "capo_ec2.types.transit_gateway_multicast_domain_id.TransitGatewayMulticastDomainId"
    ] = None,
    group_ip_address: Optional["capo_ec2.types.string.String"] = None,
    network_interface_ids: Optional[
        "capo_ec2.types.transit_gateway_network_interface_id_list.TransitGatewayNetworkInterfaceIdList"
    ] = None,
    dry_run: Optional["capo_ec2.types.boolean.Boolean"] = None,
) -> "capo_ec2.types.register_transit_gateway_multicast_group_sources_result.RegisterTransitGatewayMulticastGroupSourcesResult":
    """<p>Registers sources (network interfaces) with the specified transit gateway multicast group.</p> <p>A multicast source is a network interface attached to a supported instance that sends multicast traffic. For more information about supported instances, see <a href="https://docs.aws.amazon.com/vpc/latest/tgw/tgw-multicast-overview.html">Multicast on transit gateways</a> in the <i>Amazon Web Services Transit Gateways Guide</i>.</p> <p>After you add the source, use <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SearchTransitGatewayMulticastGroups.html">SearchTransitGatewayMulticastGroups</a> to verify that the source was added to the multicast group.</p>

    Args:
        transit_gateway_multicast_domain_id: <p>The ID of the transit gateway multicast domain.</p>
        group_ip_address: <p>The IP address assigned to the transit gateway multicast group.</p>
        network_interface_ids: <p>The group sources' network interface IDs to register with the transit gateway multicast group.</p>
        dry_run: <p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>

    Raises:
        capo_ec2.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_ec2.types.register_transit_gateway_multicast_group_sources_request.RegisterTransitGatewayMulticastGroupSourcesRequest]",
    ) -> AsyncOperationResponse[
        "capo_ec2.types.register_transit_gateway_multicast_group_sources_result.RegisterTransitGatewayMulticastGroupSourcesResult"
    ]:
        import capo_ec2._operations.amazon_ec2.register_transit_gateway_multicast_group_sources

        (
            output,
            http_response,
        ) = await capo_ec2._operations.amazon_ec2.register_transit_gateway_multicast_group_sources.async_register_transit_gateway_multicast_group_sources(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging("RegisterTransitGatewayMulticastGroupSources"),
    )
    input_: capo_ec2.types.register_transit_gateway_multicast_group_sources_request.RegisterTransitGatewayMulticastGroupSourcesRequest = {}
    if transit_gateway_multicast_domain_id is not None:
        input_["transit_gateway_multicast_domain_id"] = (
            transit_gateway_multicast_domain_id
        )
    if group_ip_address is not None:
        input_["group_ip_address"] = group_ip_address
    if network_interface_ids is not None:
        input_["network_interface_ids"] = network_interface_ids
    if dry_run is not None:
        input_["dry_run"] = dry_run

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output