brunch

399. Bot을 이용한 동적 대화 2

by Master Seo

목표

bot과 람다, 다이나모 DB간 연동을 해보자.



<0> 구성


사용자 ---------- 봇 -------람다 ------ 다이나모 DB , SNS 등

10 봇ㄱ.png



순서

<1> 다이나모 DB 테이블 생성

<2> 람다 만들기

<3> bot과 람다 연동

<4> 테스트하기



<1> 다이나모 DB 테이블 생성


1 bot-table 만들기

DynamoDB > 테이블 만들기 > 테이블 이름

myProducts

productId

number

생성



2 . 2차 인덱스 만들기

myproducts > 인덱스 텝 > 인덱스 만들기 > pirmary key

productType

add sort key 체크

key only

// 생성하는데 10분 걸림



3. 주문 추적하는 테이블 만들기

myOrders

orderId

string



4. 주문 추적을 위한 인덱스 생성

myorders 테이블 > 인덱스 > 인덱스 생성

파티션 키

userId



5. 람다

테스트 > 생성



6. 다이나모 테이블 생성 확인

services > dynamodb > tables > myproducts table > items tab




<2> 람다 만들기


1

람다 > 람다 생성 >

lex-backend

기존 역할 사용

/./ 기존역할은 새로은 role

함수 생성


2

함수 코드 업로드


3.

기본 설정

파이선 2.7

핸들러

lambda_function.lambda_handler






<3> bot과 람다 연동


1

서비스 > Lex > mybot > GetProductFlavor 확인



2

인텐트 이름 Help 선택 > Fulfiilment > AWS lambda function 으로 변경 > lex-backend 선택

> 인텐트 저장

30 help.png





3

왼쪽 OrderProduct >

Lambda initialization 체크 >

Lamabda function : lex-backend >

인텐트 저장



4

왼쪽 주문 프로덕트 인텐트

Initialization and validation code hook 선택

lex-backed

인텐트 저장





<4> 테스트하기


1

빌드 > 성공

오른쪽에 테스트 봇이 보인다.

help

40 help.png



참고

선행 https://brunch.co.kr/@topasvga/1187



감사합니다.





keyword
매거진의 이전글398. Bot을 이용한 동적 대화 1