def _inject_websocketapi_outputs()

in chalice/package.py [0:0]


    def _inject_websocketapi_outputs(self, websocket_api_id, template):
        # type: (str, Dict[str, Any]) -> None
        aws_lambda_functions = template['resource']['aws_lambda_function']
        stage_name = \
            template['resource']['aws_apigatewayv2_stage'][
                'websocket_api_stage'][
                'name']
        output = template.setdefault('output', {})
        output['WebsocketAPIId'] = {"value": websocket_api_id}

        if 'websocket_connect' in aws_lambda_functions:
            output['WebsocketConnectHandlerArn'] = {
                "value": "${aws_lambda_function.websocket_connect.arn}"}
            output['WebsocketConnectHandlerName'] = {
                "value": (
                    "${aws_lambda_function.websocket_connect.function_name}")}
        if 'websocket_message' in aws_lambda_functions:
            output['WebsocketMessageHandlerArn'] = {
                "value": "${aws_lambda_function.websocket_message.arn}"}
            output['WebsocketMessageHandlerName'] = {
                "value": (
                    "${aws_lambda_function.websocket_message.function_name}")}
        if 'websocket_disconnect' in aws_lambda_functions:
            output['WebsocketDisconnectHandlerArn'] = {
                "value": "${aws_lambda_function.websocket_disconnect.arn}"}
            output['WebsocketDisconnectHandlerName'] = {
                "value": (
                    "${aws_lambda_function.websocket_disconnect"
                    ".function_name}")}

        output['WebsocketConnectEndpointURL'] = {
            "value": (
                'wss://%(websocket_api_id)s.execute-api'
                # The api_gateway_stage is filled in when
                # the template is built.
                '.${data.aws_region.chalice.name}'
                '.amazonaws.com/%(stage_name)s/'
            ) % {
                "stage_name": stage_name,
                "websocket_api_id": websocket_api_id
            }
        }