예제 #1
0
파일: Response.php 프로젝트: lukyrys/gcm
 public function __construct(Message $message, $body)
 {
     $data = Json::decode($body);
     $this->multicastId = $data->multicast_id;
     $this->failure = $data->failure;
     $this->success = $data->success;
     $this->canonicalIds = $data->canonical_ids;
     foreach ($message->getTo() as $key => $to) {
         $this->results[$to] = $data->results[$key];
     }
 }
예제 #2
0
파일: Sender.php 프로젝트: lukyrys/gcm
 protected function getPayload(Message $message)
 {
     $data = array('registration_ids' => (array) $message->getTo(), 'collapse_key' => $message->getCollapseKey(), 'data' => (array) $message->getData(), 'delay_while_idle' => $message->getDelayWhileIdle(), 'time_to_live' => $message->getTimeToLive(), 'restricted_package_name' => $message->getRestrictedPackageName(), 'dry_run' => $message->getDryRun());
     return json_encode($data);
 }
예제 #3
0
파일: Daemon.php 프로젝트: petrsladek/gcm
 public function send(Message $message)
 {
     if (count($message->getTo()) == 0) {
         throw new NotRecipientException("Recipient must set use");
     }
     if (count($message->getTo()) > 1) {
         throw new TooManyRecipientsException("Recipient must by only one");
     }
     $this->sendGcmMessage(['to' => $message->getTo(true), 'collapse_key' => $message->getCollapseKey(), 'time_to_live' => $message->getTimeToLive(), 'delay_while_idle' => $message->getDelayWhileIdle(), 'message_id' => (string) microtime(), 'data' => $message->getData()]);
 }