Message Event

    사용자가 보낸 메시지가 포함된 callback 이벤트 개체이다.
    각 메시지 타입에 해당하는 메시지 객체가 message 속성에 포함된다.

    메시지 타입 내용 클라이언트 버전
    text 텍스트 모든 버전 가능
    location 위치 정보 모든 버전 가능
    sticker 스티커 클라이언트 v2.3부터 가능
    image 이미지 클라이언트 v2.3부터 가능
    file 파일 클라이언트 v2.9부터 가능

    텍스트

    소스로부터 전송된 텍스트가 포함된 메시지 객체이다.

    주의

    • 'content.postback' 항목은 message action의 postback 혹은 '시작하기'로 반응하는 항목으로 postback action의 응답은 postback event 페이지를 참고한다.

    Request - type "text"

    파라미터 타입 필수 여부 설명
    type string Y "message"로 고정
    source object Y callback 메시지를 전달한 주체
    source.accountId string Y 대화한 사용자의 대표 계정
    source.roomId string Y 대화한 사용자가 속한 대화방 ID
    createdTime number Y 메시지가 작성된 날짜와 시간. Unix time으로 나타내며, 단위는 밀리초(msec)이다.
    content object Y 메시지 내용
    content.type string Y "text"로 고정
    content.text string Y 대화한 사용자가 입력한 대화 내용
    content.postback string N 사용자 postback 정보(그리팅 혹은 템플릿 사용)

    Request Example - type "text"

    
    POST /callback HTTP/1.1
    Host: YOUR_SERVER_HOST_NAME
    Content-type: application/json; charset=UTF-8
    X-WORKS-Signature: 9crxWhZ9aQO/9ruUM4MH3dF/WRGYRhj0vSR4cRyJfHQ=
    X-WORKS-BotNo: 123
    
    {
      "type": "message",
      "source": {
        "accountId": "admin@example.com",
        "roomId": "12345"
      },
      "createdTime": 1470902041851,
      "content": {
        "type": "text",
        "text": "hello"
      }
    }
    

    위치 정보

    소스로부터 전송된 위치 정보가 포함된 메시지 객체이다.

    Request - type "location"

    파라미터 타입 필수 여부 설명
    type string Y "message"로 고정
    source object Y callback 메시지를 전달한 주체
    source.accountId string Y 대화한 사용자의 대표 계정
    source.roomId string Y 대화한 사용자가 속한 대화방 ID
    createdTime number Y 메시지가 작성된 날짜와 시간. Unix time으로 나타내며, 단위는 밀리초(msec)이다.
    content object Y 메시지 내용
    content.type string Y "location"으로 고정
    content.address string Y 사용자 위치를 나타내는 주소
    content.latitude number Y 사용자 위치를 나타내는 위도
    content.longitude number Y 사용자 위치를 나타내는 경도

    Request Example - type "location"

    
    POST /callback HTTP/1.1
    Host: YOUR_SERVER_HOST_NAME
    Content-type: application/json; charset=UTF-8
    X-WORKS-Signature: 9crxWhZ9aQO/9ruUM4MH3dF/WRGYRhj0vSR4cRyJfHQ=
    X-WORKS-BotNo: 123
    
    {
      "type": "message",
      "source": {
        "accountId": "admin@example.com",
        "roomId": "12345
      },
      "createdTime": 1508062056427,
      "content": {
        "type": "location",
        "address": "〒150-0002 東京都渋谷区渋谷2丁目15−1",
        "latitude": 35.6587750,
        "longitude": 139.7052230
      }
    }
    

    스티커

    소스로부터 전송된 스티커 데이터를 포함하는 메시지 객체이다.
    LINE의 기본적인 스티커와 스티커 ID는 스티커 목록을 참고한다.
    클라이언트 버전 2.3부터 사용할 수 있다.

    Request - type "sticker"

    파라미터 타입 필수 여부 설명
    type string Y "message"로 고정
    source object Y callback 메시지를 전달한 주체
    source.accountId string Y 대화한 사용자의 대표 계정
    source.roomId string Y 대화한 사용자가 속한 대화방 ID
    createdTime number Y 메시지가 작성된 날짜와 시간. Unix time으로 나타내며, 단위는 밀리초(msec)이다.
    content object Y 메시지 내용
    content.type string Y "sticker" 고정
    content.packageId string Y 패키지 ID
    content.stickerId string Y 스티커 ID

    Request Example - type "sticker"

    
    POST /callback HTTP/1.1
    Host: YOUR_SERVER_HOST_NAME
    Content-type: application/json; charset=UTF-8
    X-WORKS-Signature: 9crxWhZ9aQO/9ruUM4MH3dF/WRGYRhj0vSR4cRyJfHQ=
    X-WORKS-BotNo: 123
    
    {
      "type": "message",
      "source": {
        "accountId": "admin@example.com",
        "roomId": "12345
      },
      "createdTime": 1508062056427,
      "content": {
        "type": "sticker",
        "packageId": "1",
        "stickerId": "1"
      }
    }
    

    이미지

    소스로부터 전송된 이미지 데이터를 포함하는 메시지 객체이다.
    리소스 ID의 바이너리 이미지 데이터는 콘텐츠 다운로드 문서를 참고해 다운로드할 수 있다.
    클라이언트 버전 2.3부터 사용할 수 있다.

    Request - type "image"

    파라미터 타입 필수 여부 설명
    type string Y "message"로 고정
    source object Y callback 메시지를 전달한 주체
    source.accountId string Y 대화한 사용자의 대표 계정
    source.roomId string Y 대화한 사용자가 속한 대화방 ID
    createdTime number Y 메시지가 작성된 날짜와 시간. Unix time으로 나타내며, 단위는 밀리초(msec)이다.
    content object Y 메시지 내용
    content.type string Y "image"로 고정
    content.resourceId string Y 리소스 ID

    Request Example - type "image"

    
    POST /callback HTTP/1.1
    Host: YOUR_SERVER_HOST_NAME
    Content-type: application/json; charset=UTF-8
    X-WORKS-Signature: 9crxWhZ9aQO/9ruUM4MH3dF/WRGYRhj0vSR4cRyJfHQ=
    X-WORKS-BotNo: 123
    
    {
      "type": "message",
      "source": {
        "accountId": "admin@example.com",
        "roomId": "12345
      },
      "createdTime": 1508062056427,
      "content": {
        "type": "image",
        "resourceId": "WAAAQPwBexX2HnseNvvM9Zyhvp2kIRF3Ul7L7/aMVti8="
      }
    }
    

    파일

    소스로부터 전송된 파일을 포함하는 메시지 객체이다.
    리소스 ID의 파일 데이터는 콘텐츠 다운로드 문서를 참고해 다운로드할 수 있다.
    클라이언트 버전 2.9부터 사용할 수 있다.

    Request - type "file"

    파라미터 타입 필수 여부 설명
    type string Y "message"로 고정
    source object Y callback 메시지를 전달한 주체
    source.accountId string Y 대화한 사용자의 대표 계정
    source.roomId string Y 대화한 사용자가 속한 대화방 ID
    createdTime number Y 메시지가 작성된 날짜와 시간. Unix time으로 나타내며, 단위는 밀리초(msec)이다.
    content object Y 메시지 내용
    content.type string Y "file"로 고정
    content.resourceId string Y 리소스 ID

    Request Example - type "file"

    
    POST /callback HTTP/1.1
    Host: YOUR_SERVER_HOST_NAME
    Content-type: application/json; charset=UTF-8
    X-WORKS-Signature: 9crxWhZ9aQO/9ruUM4MH3dF/WRGYRhj0vSR4cRyJfHQ=
    X-WORKS-BotNo: 123
    
    {
      "type": "message",
      "source": {
        "accountId": "admin@example.com",
        "roomId": "12345
      },
      "createdTime": 1508062056427,
      "content": {
        "type": "file",
        "resourceId": "WAAAQPwBexX2HnseNvvM9Zyhvp2kIRF3Ul7L7/aMVti8="
      }
    }
    

    Response(고객사의 메시지 수신 서버 -> 메시지 서버)

    호출에 성공하면 HTTP 상태 코드 200을 반환해야 한다.
    callback에 의해 전송된 HTTP 요청은 실패해도 다시 전송하지 않는다.

    Response

    
    HTTP/1.1 200 OK
    Content-Type: application/json
    Server: YOUR_SERVER_HOST_NAME
    Content-Length: 0