SendTgMegJob.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. namespace App\Jobs;
  3. use App\Events\Task\LastSignInEvent;
  4. use App\Model\TaskAwarkLogModel;
  5. use App\Repositories\ConfigRepoistory;
  6. use App\Repositories\Service\CommonService;
  7. use App\Repositories\Service\UserSingInService;
  8. use App\Repositories\TaskAwarkLogRepository;
  9. use GuzzleHttp\Client;
  10. use Hyperf\AsyncQueue\Job;
  11. use Hyperf\Guzzle\ClientFactory;
  12. class SendTgMegJob extends Job
  13. {
  14. public $params;
  15. public $name;
  16. public $message;
  17. public function __construct($name,$message,$params)
  18. {
  19. // 这里最好是普通数据,不要使用携带 IO 的对象,比如 PDO 对象
  20. $this->name = $name;
  21. $this->params = $params;
  22. $this->message = $message;
  23. }
  24. public function handle()
  25. {
  26. $configRepo = make(ConfigRepoistory::class);
  27. $tgMsgServer = $configRepo->get('tg_msg_server', 'sys', '');
  28. $tgApiToken = $configRepo->get('tg_api_token', 'sys', '');
  29. if ($tgMsgServer && $tgApiToken) {
  30. $content = json_encode($this->params,JSON_UNESCAPED_UNICODE);
  31. make(CommonService::class)->httpPostJson(
  32. $tgMsgServer . 'api/tg/send/message',
  33. [
  34. 'name' => $this->name,
  35. 'message' => $this->message,
  36. 'content'=>$content,
  37. 'title' => '雏姬'
  38. ],
  39. ['AUTH-TOKEN' => $tgApiToken]);
  40. }
  41. }
  42. }