본문 바로가기

IT

GCM(Google Cloud Message) 처리시 JSON의 collapse_key 의미와 사용방법

반응형

 GCM 을 전송하는 방법에는 자체 Sender를 이용하여 Message 클래스를 이용한 메시지 전송방법과 URL에 JSON 포맷의 스트리밍을 전달하는 방법이 있습니다.


 그중에서 JSON방식을 사용하는 이유는 메시시당 1000명에 해당하는 다중사용자 전송이 가능하기때문인데요.


 이를 개발하다보니 이상한 경우에 collapse_key 설정이 정상적으로 구글서버에서 파싱되지 않는 경우가 있었습니다.


 일단 중요한 것은 collapse_key 는 혹시 실수로 다중전송되더라도 클라이언트에 collapse_key 가 중복되는 경우 동일한 메시지로 판단하여 중복메시지를 피하는 것에 의미가 있습니다. c2dm에서 GCM으로 변경되면서 회수제한도 없어져서 많이 사용하게 될 것 같습니다.


 collapse_key에 사용할 수 있는 문자는 숫자와 영문으로 제한된다고 생각하고 랜덤키를 설정하면 됩니다. 저의 경우 Math.random을 이용하였기에 double 값이 넘어와서 소수점이 들어갔는데 구글서버에서 정상적으로 파싱이 되지 않는다고 리턴메시지를 받게 됩니다.


 한줄 요약 : collapse_key 에는 영문과 숫자를 메시지당 랜덤 생성합니다.

반응형