예제 #1
0
 /**
  * 处理消息.
  *
  * @param int                    $account 公众号
  * @param array                  $message 消息
  * @param Overtrue\Wechat\Server $server  server
  *
  * @return Response
  */
 private function handleMessage($account, $message, $server)
 {
     //存储消息
     $this->messageService->storeMessage($account, $message);
     //属于文字类型消息
     if ($message['MsgType'] == 'text') {
         $replies = Cache::get('replies_' . $account->id);
         foreach ($replies as $key => $reply) {
             //查找字符串
             if (str_contains($message['Content'], $key)) {
                 return $this->messageService->eventsToMessage($reply['content']);
             }
         }
         return $this->handleNoMatch($account);
     }
 }
예제 #2
0
 /**
  * 未匹配时的默认回复.
  *
  * @param AccountModel $account 公众号
  * @param array        $message 消息
  *
  * @return Response
  */
 private function handleDefault(AccountModel $account, $message)
 {
     $reply = $this->replyRepository->skipCriteria()->getDefaultReply($account->id);
     return $this->messageService->makeText($reply['content']);
 }