HeartTransform.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Mead
  5. * Date: 2019/9/3
  6. * Time: 8:05 PM
  7. */
  8. namespace App\Servers\Weikemu\Transforms;
  9. use App\Models\BoxSettingTraitModel;
  10. use App\Models\WarningLogTraitModel;
  11. use App\Servers\BaseServer;
  12. /**
  13. * 心跳报文
  14. * Class LoginServer
  15. * @package App\Servers
  16. */
  17. class HeartTransform extends BaseServer
  18. {
  19. use BoxSettingTraitModel, WarningLogTraitModel;
  20. public function main($body)
  21. {
  22. $data = $this->decode($body);
  23. return $this->response();
  24. }
  25. /**
  26. * 解析装载的状态消息
  27. * @param $body
  28. * @return array
  29. * User: Mead
  30. */
  31. private function decode($body)
  32. {
  33. $i = 0;
  34. $box_time = self::stitching($body, $i, 4);
  35. $i += 4;
  36. $imei = substr(self::stitching($body, $i, 8), 0, -1); // i=4
  37. return [
  38. 'box_time' => $this->decodeTime($box_time),
  39. 'imei' => $imei
  40. ];
  41. }
  42. /**
  43. * 状态响应
  44. * @param $login_type
  45. * @return array
  46. * User: Mead
  47. */
  48. public function response($login_type = '00')
  49. {
  50. $body = [
  51. '5b',
  52. '0000'
  53. ];
  54. return $body;
  55. }
  56. }