Action Objects
사용자가 메시지의 버튼이나 이미지를 눌렀을 때 Bot의 동작을 정의한다.
action object는 다음 메시지에서 사용된다.
- 메시지 전송 > 메시지 공통 속성 > Quick Reply
- 메시지 전송(Button Template)
- 메시지 전송(List Template)
- 메시지 전송(Carousel)
- 메시지 전송(Image Carousel)
- 메시지 Persistent Menu
- 메시지 Rich Menu
사용 가능한 동작은 다음과 같다.
- postback action
- message action
- URI action
- camera action
- camera roll action
- location action
- copy action
Postback Action
이 동작은 캐러셀, 이미지 캐러셀, 리치 메뉴, 빠른 답장(quick reply)의 버튼으로만 구성할 수 있다. 이 동작과 관련된 항목을 누르면 'data' 파라미터에 지정된 문자열이 있는 callback을 통해 postback event가 반환된다.
common
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
type | string | Y | "postback"으로 고정 |
label | string | 설명 확인 | 항목에 표시되는 레이블. 리치 메뉴와 캐러셀의 'defaultAction' 항목을 제외하고 필숫값이다. 리치 메뉴는 값을 지정하지 않으면 데스크톱 환경에서 기본 메시지가 출력된다. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 |
data | string | Y | postback.data 속성의 callback을 통해 반환되는 문자열 최대 글자수: 300자 |
displayText | string | 설명 확인 | 사용자가 보낸 메시지로 채팅에 표시되는 텍스트. 입력하지 않으면 텍스트가 표시되지 않는다. 단, 빠른 답장에서는 필숫값이다. 최대 글자수: 300자 |
multi language
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
i18nLabels | array | N | 다국어 레이블 목록 |
i18nLabels[].language | string | Y | 다국어 언어 코드 ○ ko_KR ○ ja_JP ○ zh_CN ○ zh_TW ○ en_US |
i18nLabels[].label | string | Y | 항목에 표시되는 레이블. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 |
i18nDisplayTexts | array | N | 다국어 디스플레이 텍스트 목록 |
i18nDisplayTexts[].language | string | Y | 다국어 언어 코드 ○ ko_KR ○ ja_JP ○ zh_CN ○ zh_TW ○ en_US |
i18nDisplayTexts[].displayText | string | Y | 사용자가 보낸 메시지로 채팅에 표시되는 텍스트 최대 글자수: 300자 |
Request Example
{
"type": "postback",
"label": "Buy",
"data": "action=buy&itemid=111",
"displayText": "Buy"
}
Message Action
이 동작과 관련된 항목을 누르면 'text' 속성의 문자열이 사용자로부터 메시지로 전송된다.
common
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
type | string | Y | "message"로 고정 |
label | string | 설명 확인 | 항목에 표시되는 레이블. 리치 메뉴와 캐러셀의 'defaultAction' 항목을 제외하고 필숫값이다. 리치 메뉴는 값을 지정하지 않으면 데스크톱 환경에서 기본 메시지가 출력된다. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 ○ 고정 메뉴(persistent menu) 최대 글자수: 1000자 |
text | string | 설명 확인 | 항목을 누를 때 전송되는 텍스트. 캐러셀, 이미지 캐러셀, 리치 메뉴, 빠른 답장에서 필숫값으로 사용되며, 버튼 템플릿, 리스트 템플릿, 고정 메뉴에서는 label값으로 대체된다. 최대 글자수: 300자 |
postback | string | N | message.postback 속성으로 반환되는 문자열 최대 글자수: 1000자 |
multi language
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
i18nLabels | array | N | 다국어 레이블 목록 |
i18nLabels[].language | string | Y | 다국어 언어 코드 ○ ko_KR ○ ja_JP ○ zh_CN ○ zh_TW ○ en_US |
i18nLabels[].label | string | Y | 항목에 표시되는 레이블. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 ○ 고정 메뉴 최대 글자수: 1000자 |
i18nTexts | array | N | 다국어 텍스트 목록 |
i18nTexts[].language | string | Y | 다국어 언어 코드 ○ ko_KR ○ ja_JP ○ zh_CN ○ zh_TW ○ en_US |
i18nTexts[].text | string | Y | 항목을 누를 때 전송되는 텍스트. 캐러셀, 이미지 캐러셀, 리치 메뉴, 빠른 답장에서 필숫값으로 사용되며, 버튼 템플릿, 리스트 템플릿, 고정 메뉴에서는 label값으로 대체된다. 최대 글자수: 300자 |
Request Example
{
"type": "message",
"label": "Yes",
"text": "Yes"
}
URI Action
이 동작과 관련된 항목을 누르면 'uri' 속성에 지정된 URI가 열린다.
common
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
type | string | Y | "uri"로 고정 |
label | string | 설명 확인 | 항목에 표시되는 레이블. 리치 메뉴와 캐러셀의 'defaultAction' 항목을 제외하고 필숫값이다. 리치 메뉴는 값을 지정하지 않으면 데스크톱 환경에서 기본 메시지가 출력된다. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 ○ 고정 메뉴 최대 글자수: 1000자 |
uri | string | Y | 항목을 누를 때 URI가 열린다. 'http', 'https' 스키마를 지원한다. 최대 글자수: 1000자 |
multi language
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
i18nLabels | array | N | 다국어 레이블 목록 |
i18nLabels[].language | string | Y | 다국어 언어 코드 ○ ko_KR ○ ja_JP ○ zh_CN ○ zh_TW ○ en_US |
i18nLabels[].label | string | Y | 항목에 표시되는 레이블. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 ○ 고정 메뉴 최대 글자수: 1000자 |
Request Example
{
"type": "uri",
"label": "View details",
"uri": "http://www.worksmobile.com"
}
Camera Action
이 동작은 빠른 답장의 버튼으로만 구성할 수 있다. 이 동작과 관련된 항목을 누르면 카메라 화면이 열린다.
common
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
type | string | Y | "camera"로 고정 |
label | string | Y | 버튼의 레이블 최대 글자수: 20자 |
multi language
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
i18nLabels | array | N | 다국어 레이블 목록 |
i18nLabels[].language | string | Y | 다국어 언어 코드 ○ ko_KR ○ ja_JP ○ zh_CN ○ zh_TW ○ en_US |
i18nLabels[].label | string | Y | 항목에 표시되는 레이블. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 ○ 고정 메뉴 최대 글자수: 1000자 |
Request Example
{
"type": "camera",
"label": "Camera"
}
Camera Roll Action
이 동작은 빠른 답장의 버튼으로만 구성할 수 있다. 이 동작과 관련된 항목을 누르면 카메라 롤 화면이 열린다.
common
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
type | string | Y | "cameraRoll"로 고정 |
label | string | Y | 버튼의 레이블 최대 글자수: 20자 |
multi language
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
i18nLabels | array | N | 다국어 레이블 목록 |
i18nLabels[].language | string | Y | 다국어 언어 코드 ○ ko_KR ○ ja_JP ○ zh_CN ○ zh_TW ○ en_US |
i18nLabels[].label | string | Y | 항목에 표시되는 레이블. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 ○ 고정 메뉴 최대 글자수: 1000자 |
Request Example
{
"type": "cameraRoll",
"label": "Camera roll"
}
Location Action
이 동작은 빠른 답장의 버튼으로만 구성할 수 있다. 이 동작과 관련된 항목을 누르면 위치 화면이 열린다.
common
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
type | string | Y | "location"으로 고정 |
label | string | Y | 버튼의 레이블 최대 글자수: 20자 |
multi language
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
i18nLabels | array | N | 다국어 레이블 목록 |
i18nLabels[].language | string | Y | 다국어 언어 코드 ○ ko_KR ○ ja_JP ○ zh_CN ○ zh_TW ○ en_US |
i18nLabels[].label | string | Y | 항목에 표시되는 레이블. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 ○ 고정 메뉴 최대 글자수: 1000자 |
Request Example
{
"type": "location",
"label": "Location"
}
Copy Action
이 동작과 관련된 항목을 누르면 'copyText' 속성에 지정된 텍스트가 클립보드에 복사된다. (v3.6 이상 지원)
common
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
type | string | Y | "copy"로 고정 |
label | string | 설명 확인 | 항목에 표시되는 레이블. 리치 메뉴와 캐러셀의 'defaultAction' 항목을 제외하고 필숫값이다. 리치 메뉴는 값을 지정하지 않으면 데스크톱 환경에서 기본 메시지가 출력된다. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 ○ 고정 메뉴 최대 글자수: 1000자 |
copyText | string | Y | 항목을 누를 때 클립보드로 복사된다. 최대 글자수: 1000자 |
multi language
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
i18nLabels | array | N | 다국어 레이블 목록 |
i18nLabels[].language | string | Y | 다국어 언어 코드 ○ ko_KR ○ ja_JP ○ zh_CN ○ zh_TW ○ en_US |
i18nLabels[].label | string | Y | 항목에 표시되는 레이블. ○ 기본 최대 글자수: 20자 ○ 이미지 캐러셀 최대 글자수: 12자 ○ 고정 메뉴 최대 글자수: 1000자 |
Request Example
{
"type": "copy",
"label": "Copy This",
"copyText": "This is a copied text."
}