1번 연산 요청이 카카오 로그인한 유저가 하는 액션이고 서버 처리 후,
2번 결과를 요청한 유저가 받는 것이라면, 나에게 메시지 보내기 기능을 사용하시면 좋을 것 같습니다.
(참고로, 나에게 메시지 보내기는 전송횟수에 제한이 없으나 전송해도 카카오톡 알림이 뜨지는 않습니다.)
A가 서버에 연산 수행을 요청하고
요청 시, 연산 완료 시점에 리포팅을 받을 친구를 선택해서 입력함. (ex. D,E)
서버에서 연산이 완료되면 A가 입력했던 정보를 바탕으로 D, E에 서버가 메시지를 보냄.
이라서, 우선 제안주신 나에게 메시지 보내기 기능은 취지에 맞지 않는 것 같습니다.
하지만 메시지 API는 하루에 20건 발송이 가능하므로 적절한 것으로 보입니다.
여기서, 메시지 API를 사용한다는 가정으로 추가 질문이 있는데요.
A가 서버에 연산 요청 시, A, D, E를 수신자로 지정할 경우에 A, D, E는 메시지 발신자가 A인 것으로 인식이 되나요?
메시지 API를 보면 서버는 A의 access token이 필요할 것 같은데요.
A가 서비스 등록 과정에서 access token을 발급 받기 위한 code는 전달 하면 될 것으로 보이는데,
이 유효 기간이 2달 정도 되어 보입니다. (refresh token의 만료)
이후에는 A는 token발급을 위한 code를 어떻게 전달을 해야하나요? (이미 등록된 상태인데…)
카카오 로그인한 유저만 메시지발송할 수 있고, 카카오 로그인하면 액세스토큰을 발급 받을 수 있습니다.
이 부분에서 로그인은 A 사용자의 로그인은 A사용자의 PC 또는 폰에서 웹브라우저, 별도의 App에서 발생 시킬 수 있을 것 같은데요. 그렇게 되면 "연결"되는 것이고, “친구목록조회”, “메시지발송”과 같은 권한에 대한 추가 동의도 된 상태라고 했을때.
메시지를 발송하는 주체는 A의 PC나 폰의 웹브라우저가 아닌, 서버가 되어야 하는데요.
이 경우에는 A가 메시지를 발생 시키기 위해 필요한 정보들 (가령 token과 친구 목록)을 서버에 전달해 놓고 이후에 연산이 완료되면 서버가 미리 전달 받은 내용을 기반으로 카카오톡에 요청하면 되는 절차가 맞죠?
결국 추가 문의에서 제가 궁금한 것은
A가 로그인 및 추가 동의한 시점 외에는
A의 PC나 웹브라우저를 더 이상 쓰지 않고 서버에서 미리 전달 받은 정보를 기반으로 메시지를 보낼 수 있는지에 대한 여부 입니다.
메시지를 발송하는 주체는 A의 PC나 폰의 웹브라우저가 아닌, 서버가 되어야 하는데요.
이 경우에는 A가 메시지를 발생 시키기 위해 필요한 정보들 (가령 token과 친구 목록)을 서버에 전달해 놓고 이후에 연산이 완료되면 서버가 미리 전달 받은 내용을 기반으로 카카오톡에 요청하면 되는 절차가 맞죠?
카카오로그인한 A가 카카오와 무관하게 서버에 연산 요청하고, 말씀하신것 처럼 필요한 정보들을 연산과 함께 서버캐시했다가
서버에서 연산이 끝나면 발송하는 것은 문제 없어보입니다.
A가 로그인 및 추가 동의한 시점 외에는
A의 PC나 웹브라우저를 더 이상 쓰지 않고 서버에서 미리 전달 받은 정보를 기반으로 메시지를 보낼 수 있는지에 대한 여부 입니다.
API호출 자체가 일반적으로 서버에서 진행되므로 말씀하신 내용 가능합니다.
수신자 D, E도 카카오 로그인으로 최초 1회 "연결"되어야하고 권한동의도 해야하는 것 인지하고 계실까요?
(이부분을 처리하지 않아서 메시지 발송 못하는 경우가 많아, 다시한번 확인차 여쭤봅니다.)