빠른 답장

빠른 답장은 사용자에게 버튼을 제공하는 새로운 방법으로, 빠른 답장은 작성 도구 위에 눈에 띄게 표시되며 키보드는 덜 눈에 띄게 표시됩니다. 빠른 답장을 누르면 대화에서 메시지가 전송되며 개발자가 정의한 메타데이터가 콜백에 포함됩니다. 또한 사용자가 대화에서 이전 메시지에 첨부된 버튼을 누르는 일이 일어나지 않도록 버튼이 해제됩니다.

빠른 답장에는 텍스트가 포함됩니다. 이미지를 추가할 수도 있습니다.

빠른 답장을 사용하여 사용자에게 위치를 입력하도록 요청할 수도 있습니다.

예시

텍스트만

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"USER_ID"
  },
  "message":{
    "text":"Pick a color:",
    "quick_replies":[
      {
        "content_type":"text",
        "title":"Red",
        "payload":"DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_RED"
      },
      {
        "content_type":"text",
        "title":"Green",
        "payload":"DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_GREEN"
      }
    ]
  }
}' "https://graph.facebook.com/v2.6/me/messages?access_token=PAGE_ACCESS_TOKEN"    

텍스트 및 이미지

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"USER_ID"
  },
  "message":{
    "text":"Pick a color:",
    "quick_replies":[
      {
        "content_type":"text",
        "title":"Red",
        "payload":"DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_RED",
        "image_url":"http://petersfantastichats.com/img/red.png"
      },
      {
        "content_type":"text",
        "title":"Green",
        "payload":"DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_GREEN",
        "image_url":"http://petersfantastichats.com/img/green.png"
      }
    ]
  }
}' "https://graph.facebook.com/v2.6/me/messages?access_token=PAGE_ACCESS_TOKEN"    

위치

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"USER_ID"
  },
  "message":{
    "text":"Please share your location:",
    "quick_replies":[
      {
        "content_type":"location",
      }
    ]
  }
}' "https://graph.facebook.com/v2.6/me/messages?access_token=PAGE_ACCESS_TOKEN"

필드

message 개체

속성 이름 설명 필수

text

메시지 텍스트

attachment나 text를 설정해야 합니다.

attachment

attachment 개체

attachment나 text를 설정해야 합니다.

quick_replies

메시지와 함께 전송될 quick_reply의 배열

N

  • quick_replies는 11개 항목으로 제한됩니다.

attachment 개체

속성 이름 설명 필수

type

첨부 파일의 유형으로, image나 template입니다.

Y

payload

첨부 파일의 페이로드

Y

빠른 답장은 텍스트 메시지, 이미지, 템플릿 첨부 파일 등 모든 메시지 유형과 함께 작동합니다. attachment 개체를 사용하는 방법에 대한 자세한 내용은 보내기 API 문서를 참조하세요.

quick_reply 개체

속성 이름 설명 유형 필수

content_type

text 또는 location

문자열

Y

title

버튼의 캡션

문자열

content_type이 text인 경우만

payload

맞춤 데이터는 Webhook을 통해 개발자에게 다시 전송됩니다.

문자열

content_type이 text인 경우만

image_url

text 빠른 답장을 위한 이미지의 URL

문자열

N

  • title의 글자수는 최대 20자입니다. 20자 이후 글자는 잘립니다.
  • payload의 글자수는 최대 1000자입니다.
  • content_type이 location이면 title 및 payload는 사용되지 않습니다.
  • image_url의 이미지는 24x24 이상이어야 하며 잘리고 크기가 조정됩니다.

콜백

빠른 답장을 누르면 개발자의 Webhook 메시지 수신 콜백에 텍스트 메시지가 전송됩니다. 메시지의 텍스트가 빠른 답장의 제목에 해당합니다. 메시지 개체에는 또한 빠른 답장의 payload 데이터가 포함된 quick_reply라는 이름의 필드가 포함됩니다.

{
  "sender": {
    "id": "USER_ID"
  },
  "recipient": {
    "id": "PAGE_ID"
  },
  "timestamp": 1464990849275,
  "message": {
    "mid": "mid.1464990849238:b9a22a2bcb1de31773",
    "seq": 69,
    "text": "Red",
    "quick_reply": {
      "payload": "DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_RED"
    }
  }
}    

사용자가 위치를 공유하는 경우 콜백의 모양은 다음과 같습니다.

{
  "object": "page",
  "entry": [
    {
      "id": "PAGE_ID",
      "time": 1472672934319,
      "messaging": [
        {
          "sender": {
            "id": "USER_ID"
          },
          "recipient": {
            "id": "PAGE_ID"
          },
          "timestamp": 1472672934259,
          "message": {
            "mid": "mid.1472672934017:db566db5104b5b5c08",
            "seq": 297,
            "attachments": [
              {
                "title": "Facebook HQ",
                "url": "https://www.facebook.com/l.php?u=https%....5-7Ocxrmg",
                "type": "location",
                "payload": {
                  "coordinates": {
                    "lat": 37.483872693672,
                    "long": -122.14900441942
                  }
                }
              }
            ]
          }
        }
      ]
    }
  ]
}