필자는 Amazon Lex 봇을 음성 (질문)에 응답하고 모든 슬롯을 채우는 Facebook 작업 공간 메신저와 통합했습니다. 그러나 사용자가 모든 질문에 대답하면 람다 함수가 반환하는 실제 출력 대신 메신저에 매개 변수 (의도 이름과 모든 슬롯과 키 - 값 쌍의 값)를 최종 출력으로 반환합니다. I는 (그러나 람다 초기화 및 검증)에서 최종 출력을 제공 이행에 람다 함수를 지정Lex 봇이 람다 충족 함수 출력 대신 클라이언트에 매개 변수를 반환합니다.
Intent: TestIntent
Slots: month:jan year:2015 channel:testChannel type:testType main:salesVolume category:testCategory region:testRegion
아래 최종 리턴 출력된다. 이 봇은 Lex Test Bot에서 작동하며 올바른 출력을 반환합니다. 이는 람다 함수를 성공적으로 호출했기 때문입니다.
Lex 콘솔의 채널 탭에서 메신저 통합을위한 IAM 역할은 AWSServiceRoleForLexChannels
이지만 변경할 수 없습니다.
페이스 북의 메신저가 람다 함수를 호출하지 않습니까? Lex 봇이 테스트에서는 작동하지만 Facebook 직장 메신저에서는 작동하지 않는 이유는 무엇입니까?