[ aws . chime-sdk-messaging ]

create-channel-flow

Description

Creates a channel flow, a container for processors. Processors are AWS Lambda functions that perform actions on chat messages, such as stripping out profanity. You can associate channel flows with channels, and the processors in the channel flow then take action on all messages sent to that channel. This is a developer API.

Channel flows process the following items:

  • New and updated messages

  • Persistent and non-persistent messages

  • The Standard message type

Note

Channel flows don’t process Control or System messages. For more information about the message types provided by Chime SDK Messaging, refer to Message types in the Amazon Chime developer guide .

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-channel-flow
--app-instance-arn <value>
--processors <value>
--name <value>
[--tags <value>]
--client-request-token <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--app-instance-arn (string)

The ARN of the channel flow request.

--processors (list)

Information about the processor Lambda functions.

(structure)

The information about a processor in a channel flow.

Name -> (string)

The name of the channel flow.

Configuration -> (structure)

The information about the type of processor and its identifier.

Lambda -> (structure)

Indicates that the processor is of type Lambda.

ResourceArn -> (string)

The ARN of the Lambda message processing function.

InvocationType -> (string)

Controls how the Lambda function is invoked.

ExecutionOrder -> (integer)

The sequence in which processors run. If you have multiple processors in a channel flow, message processing goes through each processor in the sequence. The value determines the sequence. At this point, we support only 1 processor within a flow.

FallbackAction -> (string)

Determines whether to continue with message processing or stop it in cases where communication with a processor fails. If a processor has a fallback action of ABORT and communication with it fails, the processor sets the message status to FAILED and does not send the message to any recipients. Note that if the last processor in the channel flow sequence has a fallback action of CONTINUE and communication with the processor fails, then the message is considered processed and sent to recipients of the channel.

Shorthand Syntax:

Name=string,Configuration={Lambda={ResourceArn=string,InvocationType=string}},ExecutionOrder=integer,FallbackAction=string ...

JSON Syntax:

[
  {
    "Name": "string",
    "Configuration": {
      "Lambda": {
        "ResourceArn": "string",
        "InvocationType": "ASYNC"
      }
    },
    "ExecutionOrder": integer,
    "FallbackAction": "CONTINUE"|"ABORT"
  }
  ...
]

--name (string)

The name of the channel flow.

--tags (list)

The tags for the creation request.

(structure)

A tag object containing a key-value pair.

Key -> (string)

The key in a tag.

Value -> (string)

The value in a tag.

Shorthand Syntax:

Key=string,Value=string ...

JSON Syntax:

[
  {
    "Key": "string",
    "Value": "string"
  }
  ...
]

--client-request-token (string)

The client token for the request. An Idempotency token.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command. The generated JSON skeleton is not stable between versions of the AWS CLI and there are no backwards compatibility guarantees in the JSON skeleton generated.

See ‘aws help’ for descriptions of global parameters.

Output

ChannelFlowArn -> (string)

The ARN of the channel flow.