RailsからiPhoneやAndroidにpush通知した。
使ったのは下記Gem。
使ったのは下記Gem。
必要なもの
iPhone
- 証明書ファイル 証明書の取得はこちらなどを参考に
- 送信する端末のdevice token
Android
- api_key api_keyの取得はこちらなどを参考に
- 送信する端末のregistration id
iPhoneへpush通知
Gemfileに追加後bundle install
gem 'apns'
まずpemファイルを作ってあげないといけない
openssl pkcs12 -in cert.p12 -out cert.pem -nodes -clcerts
作ったpemファイルを
/path/to/cert.pem
に配置し、下記でpush通知が送れる。APNS.host = 'gateway.push.apple.com'
APNS.pem = '/path/to/cert.pem'
APNS.port = 2195
device_token = 'xxxxxxxxxxxxxxxxxxxx' # 送りたい端末のdevice token
APNS.send_notification(device_token, :alert => 'Hello iPhone!', :badge => 1, :sound => 'default')
Androidへpush通知
Gemfileに追加後bundle install
gem 'gcm'
下記実行するとandroid側に通知が飛ぶ
require 'gcm'
api_key = "xxxxxxxxxxxxxxxxxxxx"
registration_ids = ["a1", "a2", "a3"] # 送りたいregistration_idの配列
gcm = GCM.new(api_key)
options = {data: {score: "123"}, collapse_key: "updated_score"}
response = gcm.send_notification(registration_ids, options)
options内のdataハッシュ内に自由にキーを設定して送信してあげるとAndroid側で取得して色々処理できたりします
0 件のコメント:
コメントを投稿