Example #1
0
 public function onCommandReceived(CommandEvent $event)
 {
     $command = $event->getCommand();
     $data = $event->getData();
     $command->setChannel($data->channel);
     $command->setUser($data->user);
     $command->execute($data, $event->getContext());
 }
Example #2
0
 private function setupMessageListener()
 {
     $this->client->on("message", function ($message) {
         $data = $message->getData();
         $this->logger->info($data);
         $data = json_decode($data);
         if (isset($data->text)) {
             $trigger = explode(' ', $data->text)[0];
             if (isset($this->commands[$trigger])) {
                 $commandEvent = new CommandEvent();
                 $commandEvent->setCommand($this->commands[$trigger]);
                 $commandEvent->setData($data);
                 $commandEvent->setContext($this->context);
                 $this->dispatcher->dispatch('command.received', $commandEvent);
             }
         }
     });
 }