/** * method to run as a job * * @param \GearmanJob $job Object with job parameters * * @return boolean * * @Gearman\Job( * name = "gcm_msg", * description = "This consumes the messages from gcm ccs") */ public function consumeMessages(\GearmanJob $job) { $load = $job->workload(); $this->logger->info('Hola: ' . 'Message Received'); $this->logger->info('Hola: ' . $load); $payload = json_decode($load, true); $GCMCCSUpstreamMessage = new GCMCCSUpstreamMessage($payload['category'], $payload['data'], $payload['message_id'], $payload['from']); $GCMCCSUpstreamMessage->setChannel($payload['channel'])->setType('msg'); $gcmMessageReceivedEvent = new GCMCCSUpstreamEvent($GCMCCSUpstreamMessage); $this->logger->info('Hola: ' . 'Dispatching event GCM_MSG_RECEIVED'); $this->dispatcher->dispatch(GearEvents::GCM_MSG_RECEIVED, $gcmMessageReceivedEvent); return true; }