protected function generateJSONMessage(GCMMessage $message) { $data = array('notification' => $message->getNotification()->toArray(), 'collapse_key' => $message->getCollapseKey(), 'delay_while_idle' => $message->getDelayWhileIdle(), 'time_to_live' => $message->getTimeToLive(), 'restricted_package_name' => $message->getRestrictedPackageName(), 'dry_run' => $message->getDryRun()); if ($message->getData() != null) { $data['data'] = $message->getData(); } if (is_array($message->getTo())) { $data['registration_ids'] = $message->getTo(); } else { $data['to'] = $message->getTo(); } return json_encode($data); }