채널 프로세서 설정 - Amazon Chime SDK

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

채널 프로세서 설정

채널 흐름 사용을 시작하려면 먼저 사용 사례에 맞는 전처리를 처리하는 프로세서 Lambda 함수를 생성해야 합니다. 예를 들어 메시지 콘텐츠 또는 메타데이터를 업데이트하거나, 메시지를 거부하고, 메시지가 전송되지 않도록 하거나, 원본 메시지가 통과하도록 할 수 있습니다.

필수 조건
  • Lambda 함수는 동일한 함수에 있어야 합니다.AWS계정 및 동일AWS지역과 같은AppInstance.

호출 권한 부여

Amazon Chime SDK 메시징 서비스에 Lambda 리소스를 호출할 권한을 부여해야 합니다. 권한에 대한 자세한 내용은 을 참조하십시오.리소스 기반 정책 사용AWS Lambda. 예시:

주요한: “messaging.chime.amazonaws.com”

액션: 람다:InvokeFunction

효과: 허용

법률:SourceAccount:너의AWSAccountId.

법률:SourceArn:"arn:aws:chime:region:AWSAccountId: appInstance/"

참고

특정 앱 인스턴스 ID를 제공하여 프로세서를 호출하거나 와일드카드를 사용하여 계정의 모든 Amazon Chime SDK 앱 인스턴스가 프로세서를 호출하도록 허용할 수 있습니다.

콜백 권한 부여

또한 프로세서 Lambda 함수가 를 호출하도록 허용해야 합니다.ChannelFlowCallbackAPI. 이 작업에 대한 자세한 내용은 을 참조하십시오.AWS Lambda역할 실행에서AWS Lambda개발자 가이드.

Lambda 함수의 실행 역할에 인라인 정책을 추가할 수 있습니다. 이 예제에서는 프로세서가 다음을 호출할 수 있습니다.ChannelFlowCallback API.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "chime:ChannelFlowCallback" ], "Resource": [ "arn:aws:chime:Region:AwsAccountId:appInstance/*" ] } ] }
참고

Lambda 함수의 모범 사례를 따르십시오. 자세한 내용은 다음 항목을 참조하십시오.

프로세서 Lambda 함수 호출

사용자가 메시지를 보내면 다음 입력 요청이 프로세서 Lambda 함수를 호출합니다.

{ "EventType": "string" "CallbackId": "string" "ChannelMessage": { "MessageId": "string", "ChannelArn": "string", "Content": "string", "Metadata": "string", "Sender":{ "Arn": "string", "Name": "string" }, "Persistence": "string", "LastEditedTimestamp": "string", "Type": "string", "CreatedTimestamp": "string", } }
EventType

프로세서로 전송되는 이벤트입니다. 값은 a입니다.CHANNEL_MESSAGE_EVENT상수.

CallbackId

호출할 때 사용한 토큰ChannelFlowCallback프로세서로부터의 API.

ChannelMessage

ChannelArn채널의 ARN

콘텐츠처리할 메시지 내용

CreatedTimestamp메시지가 생성된 시간

LastEditedTimestamp메시지가 편집된 시간

MessageId메시지 식별자

메타데이터처리할 메시지 메타데이터

지속성메시지가 백엔드에 지속되는지 여부를 제어하는 부울입니다. 유효한 값: PERSISTENT | NON_PERSISTENT

발신자메시지 발신자. 유형: 또는아이덴티티 오브젝트.

타입메시지 유형. ChannelFlow만 지원합니다STANDARD메시지 유형. 유효 값:STANDARD

프로세서 함수는 각 메시지에 대해 다음을 결정합니다.

  • 메시지 내용, 메타데이터 또는 둘 다를 업데이트할지 여부

  • 메시지 거부 여부

  • 메시지를 변경하지 않고 남길지 여부

처리가 완료되면 프로세서 Lambda 함수가 결과를 Amazon Chime SDK 메시징 서비스로 다시 전송하므로 메시지가 모든 수신자에게 전송될 수 있습니다. 메시지 상태가 표시됨PENDING프로세서 Lambda 함수가 결과를 다시 전송할 때까지 프로세서 Lambda 함수는 48시간 내에 결과를 다시 전송해야 합니다. 그 이후에는 메시지 전달을 보장하지 않으며ChannelFlowCallbackAPI에서 금지된 예외 오류 메시지가 표시됩니다. 결과를 다시 보내려면 다음을 호출하십시오.ChannelFlowCallbackAPI.