라벨이 APNS인 게시물 표시

Node.js를 이용하여 iOS 푸시기능 구현

이미지
안녕하세요 남산돈가스입니다.
지난 시간에 이어서 오늘은 #2 Node.js를 이용하여 iOS 푸시기능을 구현해보는 시간을 갖겠습니다.
일단 이 포스팅에서는 iOS용 APNS 인증서와 키가 모두 발급되어있다는 전제하에 포스팅을 진행하려고 합니다.
iOS 클라이언트 단에서 APNS를 셋팅하는 부분은 아래 링크에 보기 쉽게 설명되어있으니 참고하시면 쉽게 따라오실 수 있을 것입니다.
http://blog.saltfactory.net/node/implementing-push-notification-service-for-ios.html
자, 그럼 ios에 푸시를 날리기위한 준비물이 완성되었으니 이제 nodejs쪽을 확인해봅시다.
간단한, 프로젝트를 생성하겠습니다.


express App으로 pushTest라는 프로젝트를 생성했습니다.
nodejs에서 apns 모듈을 사용하기 위해서는 apn 모듈을 install 해야합니다.
npm install apn
apn 모듈을 설치한 뒤 js파일을 하나 생성합니다

// Developer modevar dev_options = { gateway : "gateway.sandbox.push.apple.com", cert: './ios-certificates/development/swift_apns_development_cert.pem', key: './ios-certificates/development/swift_apns_development_server.pem', production: false }; // Production(App store)var pro_options = { gateway : "gateway.push.apple.com", cert: './ios-certificates/development/swift_apns_production_cert.pem', key: './ios-certific…

푸시기능과 GCM / APNS

이미지
안녕하세요 남산돈가스입니다.

이번 포스팅은 iFriendsPet v.1.11에 업데이트 될 기능인 푸시기능에 대해서 정리하는 시간을 가져보려고 합니다.

이 주제는 총 3개의 포스팅으로 나누어 다음과 같은 순서로 게시될 예정입니다.
#1 푸시기능과 GCM / APNS
#2 Node.js를 이용하여 iOS 푸시기능 구현
#3 Node.js를 이용하여 Android 푸시기능 구현

그 첫번 째 포스팅으로 푸시기능의 개념과 GCM / APNS에 대해서 알아보도록 하겠습니다.

일단 저도 푸시기능을 처음 개발해보는 사람으로서 푸시기술이라는게 정확히 어떤 의미인지부터 궁금했습니다.
위키피디아에서 검색한 푸시란, 인터넷 상에서 어떤 전송 요청이 중앙 서버에서 시작되는 정보 전달 방식이라고 설명하는데요. 덧붙여, 이 푸시는 전송 요청이 클라이언트에서 시작되는 풀 기법과 대비되는 것이라고도 표현합니다.

위의 설명을 살펴보면 풀 방식과 푸시방식이 존재하는데, 이 두 방식은 서로 상반 된 기능을 하고 있다고 짐작해볼 수 있습니다.
간단하게 정리해보자면, 푸시 기법은 사용자(클라이언트)가 어떠한 이벤트를 실행 함에 따라 서버 사이드에서 그 이벤트에 대한 정보 등을 자동으로 제공해주는 서비스라고 할 수 있고, 풀 기법은 이와 반대로 사용자가 직접 필요한 정보를 서버쪽에 요청하여 해당하는 정보 등을 제공받는 형식이라고 말할 수 있습니다.

모바일 서비스가 주를 이루기 전의 푸시서비스는 흔히 뉴스, 메일링 서비스 등을 생각해 볼 수 있습니다. 웹 상에서 뉴스를 구독하거나 메일 수신에 동의하는 절차를 통해 자동으로 서버에서 클라이언트에게 주기적인 정보를 제공해왔었습니다.
이런 푸시 서비스는 스마트폰의 급격한 성장을 통해 모바일 서비스들의 기본적이고 중요한 기능으로 자리 잡았습니다.
이러한 이유들을 통해 우리 iFriendsPet 모바일 서비스에서도 사용자와의 지속적인 커뮤니케이션과 사용성 증가를 위해 푸시 기능을 도입하고자 생각했습니다.
그렇다면 지금부터 푸시기능을 어떻게 개발할 것인지 알아보도…