関数にアクションがあると、アプリ A とアプリ B に 2 つの通知を送信するこの関数が php にあります。ただし、1 つのアプリで 1 つの通知しか受け取りません。私は通知のプッシュを行うために apnsphp を使用しています。
以下は私の状況です: アプリ A とアプリ B の 2 つのアプリがあります。両方のアプリが異なる apns 証明書を使用しています。
apns証明書キャッシュの可能性はありますか?
シナリオ 1) APP A で IPAD にログインし、同時に APP B で IPAD にログインすると、APP B ではなく APP A のプッシュ通知が受信されます。
シナリオ 2) APP A で IPAD にログインし、APP B で iPhone (別のデバイス) にログインすると、APP B ではなく APP A のプッシュ通知が受信されます。
シナリオ 3) APP A で iPad からログアウトし、APP B で iPad (同一デバイス) または iPhone (別のデバイス) にログインすると、App B でプッシュ通知が受信されます。
私は apnsphp からこのエラーを受け取ります:
["ERRORS"]=> array(2) {
[0]=>
array(3) {
["identifier"]=> int(1)
["statusCode"]=> int(999)
["statusMessage"]=> string(53) "Internal error (0 bytes written instead of 223 bytes)"
}
[1]=>
array(5) {
["command"]=> int(8)
["statusCode"]=> int(8)
["identifier"]=> int(1)
["time"]=> int(1415012295)
["statusMessage"]=> string(13) "Invalid token"
}
}
以下はログです。
Tue, 04 Nov 2014 10:02:25 +0800 ApnsPHP[4136]: INFO: Trying tls://gateway.push.apple.com:2195...
Tue, 04 Nov 2014 10:02:26 +0800 ApnsPHP[4136]: INFO: Connected to
tls://gateway.push.apple.com:2195. Tue, 04 Nov 2014 10:02:26 +0800 ApnsPHP[4136]: INFO: Sending
messages queue, run #1: 1 message(s) left in queue. Tue, 04 Nov 2014 10:02:26 +0800
ApnsPHP[4136]: STATUS: Sending message ID 1 [custom identifier: CakeApns] (1/3): 166 bytes. Tue,
04 Nov 2014 10:02:27 +0800 ApnsPHP[4136]: INFO: Disconnected.
Tue, 04 Nov 2014 10:02:27 +0800 ApnsPHP[4136]: INFO: Sending messages queue, run #1: 1 message(s)
left in queue. Tue, 04 Nov 2014
10:02:27 +0800 ApnsPHP[4136]: STATUS: Sending message ID 1 [custom identifier: CakeApns] (1/3):
221 bytes. Tue, 04 Nov 2014 10:02:27 +0800 ApnsPHP[4136]: ERROR: Unable to send message ID 1:
Internal error (0 bytes written instead of 221 bytes) (999). Tue, 04 Nov 2014 10:02:27 +0800
ApnsPHP[4136]: INFO: Trying tls://gateway.push.apple.com:2195... Tue, 04 Nov 2014 10:02:28 +0800
ApnsPHP[4136]: INFO: Connected to tls://gateway.push.apple.com:2195. Tue, 04 Nov 2014 10:02:28
+0800 ApnsPHP[4136]: INFO: Sending messages queue, run #2: 1 message(s) left in queue. Tue, 04
Nov 2014 10:02:28 +0800 ApnsPHP[4136]: STATUS: Sending message ID 1 [custom identifier: CakeApns]
(2/3): 221 bytes. Tue, 04 Nov 2014 10:02:28 +0800 ApnsPHP[4136]: ERROR: Unable to send message ID
1: Invalid token (8). Tue, 04 Nov 2014 10:02:28 +0800 ApnsPHP[4136]: INFO: Disconnected. Tue, 04
Nov 2014 10:02:28 +0800 ApnsPHP[4136]: INFO: Trying tls://gateway.push.apple.com:2195... Tue, 04
Nov 2014 10:02:29 +0800 ApnsPHP[4136]: INFO: Connected to tls://gateway.push.apple.com:2195. Tue,
04 Nov 2014 10:02:29 +0800 ApnsPHP[4136]: INFO: Sending messages queue, run #3: 1 message(s) left
in queue. Tue, 04 Nov 2014 10:02:29 +0800 ApnsPHP[4136]: WARNING: Message ID 1 [custom
identifier: CakeApns] has an unrecoverable error (8), removing from queue without retrying...
Tue, 04 Nov 2014 10:02:30 +0800 ApnsPHP[4136]: INFO: Disconnected.