私は2つの別々のアプリケーション用に2つのbundle_idがあり、両方にプッシュ通知を送信する必要があるという問題が、.P8証明書を受け入れるAppleプッシュ通知にPush8 gemを使用しています。 Push8 gemは、bundle.id ENV ['APN_BUNDLE_ID']パラメータをapplication.ymlファイルから自動的に受け取ります。しかし、ENV ['APN_VENDOR_BUNDLE_ID']をプッシュ通知を送信する別のAPPにも使用したいと思っています。 send.end_user_typeは、「ユーザー」私はAPN_VENDOR_BUNDLE_IDを使用したいと休息のために、トピックとしてバンドルIDのAPN_BUNDLE_IDを使用したい場合にはクラスからメソッドを初期化する引数を渡すにはどうすればいいですか?
プッシュ通知を送信するために私のコードはここに
ここdef self.send_notification_ios(device_id, notification_id)
send = Notification.where(id: notification_id).first
if Rails.env == 'development'
apn = P8push::Client.development
else
apn = P8push::Client.production
end
token = device_id
notification = P8push::Notification.new(device: token)
notification.alert = send.template.message % { txnid: send.order.txnid }
notification.sound = 'sosumi.aiff'
apn.push(notification)
end
です。しかし、私は、APN_VENDOR_BUNDLE_IDをparamとして渡して、gemのclient.rbファイルのメソッドを初期化する方法を知らない。したがって、常にAPN_BUNDLE_IDをトピックとして受け入れ、したがって、エラー・トピックは許可されません。ここで
は宝石用client.rbファイルです: https://github.com/andrewarrow/p8push/blob/master/lib/p8push/client.rb
リンク宝石用initialize
方法は次の2つの選択肢を持って、その属性をカスタマイズするための宿泊施設をしない場合はhttps://github.com/andrewarrow/p8push