Send/omni 응답 관련 문의 — responseMethod 기본 동작 및 destinations 응답 순서

안녕하세요. Sandbox 연동 전 문서만으로 확인이 안 되는 두 가지가 있어 문의드립니다.

  1. responseMethod 미지정(기본값 push) 시 정확한 동작
  • 계정(통합 Key)의 리포트 수신 방식을 Polling으로 설정해서 사용할 예정입니다.
  • POST /api/comm/v1/send/omni 호출 시 messageFlow[].alimtalk.responseMethod를 아예 보내지 않으면 기본값 push가 적용된다고 문서에 나와 있는데,
    이 경우:
    1. 이 API 호출 자체는 각 수신자의 접수 결과(destinations[].code/result)만 즉시 응답하고 최종 전달 결과는 기다리지 않는 게 맞을까요?
    2. 최종 전달 결과(카카오톡 도착 성공/실패)는 이 응답과 무관하게, 계정에 설정해 둔 Report Polling API(GET /api/comm/v1/report/polling) 쪽으로만 들어오는 게 맞을까요?
    3. responseMethod를 아예 안 보내는 것이, 계정 단위 리포트 수신 방식(Polling) 설정과 충돌 없이 정상 동작하는 조합이 맞는지 확인 부탁드립니다.
  1. destinations[] 요청/응답 배열의 순서 및 상관관계 식별자
  • 한 번의 send/omni 호출에 수신자 여러 명을 destinations[] 배열로 보낼 때, 요청에는 destinations[].ref를 개별 식별자로 넣어 보냅니다.
  • 그런데 응답 예시를 보면 destinations[]에 to, msgKey, code, result만 있고 요청 때 보낸 ref가 응답에는 포함되지 않는 것으로 보입니다.
  • 저희는 요청 배열 순서(N번째로 보낸 수신자)와 응답 배열 순서(N번째 결과)가 항상 1:1로 일치한다고 가정하고 매칭하려고 하는데,
    1. 이 가정이 맞을까요? 대량 발송 시에도 순서가 보장되나요?
    2. 혹은 응답에도 ref를 포함해서 받을 수 있는 방법이 있을까요? (요청 필드를 다르게 넣어야 하거나, 별도 옵션이 있는지)
    • 순서 매칭이 불안정하다면, to(수신번호) 외에 응답과 요청을 안전하게 짝지을 수 있는 다른 방법이 있는지도 알고 싶습니다.

답변 부탁드립니다. 감사합니다.

안녕하세요. 비즈고를 이용해주셔서 감사합니다.:smiley:

문의하신 사항에 차례대로 답변 정리하였습니다.

  1. responseMethod 미지정(기본값 push) 시 정확한 동작

"리포트 처리방식"과 "카카오 요청 응답방식"의 옵션 중 Polling이 동일어로 사용하고 있어 혼동될 수 있지만 2가지 옵션은 다른 개념입니다.

리포트 처리방식에서 선택하실수 있는 옵션은 Webhook / Polling 이며 ApiKey에 종속되어 설정가능합니다. (메시지건별로 설정할 수 있는 옵션은 아닙니다.)

카카오 요청 응답방식은 아래 링크를 참고해주시기 바라며, 알림톡 발송 시 카카오의 처리에 대한 옵션값 선택이고 말씀하신것처럼 기본은 push로 동작하고 메시지 요청별로 옵션(push/polling)을 선택하실 수 있습니다.
꼭 단말까지의 도착을 원하는것이 아니라면 가급적 기본값인 push 사용을 권장 드립니다.

  1. destinations[] 요청/응답 배열의 순서 및 상관관계 식별자

응답시에 수신번호마다 개별적으로 ref 값을 전달드립니다.
요청 시 JsonArray 순서대로 응답도 순서로 보내드립니다.

참고 부탁드리며, 더 궁금하신 사항 있으시면 언제든지 문의 부탁드리겠습니다.
감사합니다. 좋은 하루 되세요.:+1: