casper 4 月之前
父节点
当前提交
c4058da70a
共有 4 个文件被更改,包括 36 次插入23 次删除
  1. 4 4
      sri-pysdk/xclient/xmqtt.py
  2. 7 3
      sri-pysdk/xlib/xtime.py
  3. 23 14
      sri-server-bg02/lib/MessageListener.py
  4. 2 2
      sri-server-bg03/lib/Connection_e1.py

+ 4 - 4
sri-pysdk/xclient/xmqtt.py

@@ -65,13 +65,13 @@ if __name__ == '__main__':
 
     # --- test subscribe ---
     def m1(_, __, p3):
-        print(f'#message: {p3.payload}')
-        # print(f"#message.payload: {json.loads(p3.payload)}")
+        # print(f'#message: {p3.payload}')
+        print(f"#message.payload: {json.loads(p3.payload)}")
 
     # subscribe_topic = 'bg/log'
     # subscribe_topic = 'qtmqtt'
-    # subscribe_topic = 'Vehicle/ControlVehicle/Veh001'
-    subscribe_topic = 'client'
+    # subscribe_topic = 'client'
+    subscribe_topic = 'Vehicle/ControlVehicle/Veh001'
     c1.start_subscribe_loop(decorate_method=m1, subscribe_topic=subscribe_topic)
 
     # --- test publish ---

+ 7 - 3
sri-pysdk/xlib/xtime.py

@@ -55,11 +55,12 @@ def string_to_ts(string, pattern='%Y-%m-%dT%H:%M:%S.%f'):
     return int(time.mktime(time.strptime(string, pattern)))
 
 
-def ts_to_string(int_time, pattern='%Y-%m-%dT%H:%M:%S.%f'):
+def ts_to_string(int_time, pattern='%Y-%m-%d %H:%M:%S.%f'):
     """
     时间戳->字符串
     """
-    return time.strftime(pattern, time.localtime(int_time))
+    return datetime.datetime.fromtimestamp(int_time).strftime(pattern)[:-3]
+    # return time.strftime(pattern, time.localtime(int(int_time)))
 
 
 def now_string(pattern='%Y-%m-%d %H:%M:%S'):
@@ -161,9 +162,12 @@ if __name__ == '__main__':
 
     # print(now_ts(unit='ms'))
     # print(now_ts(unit='s'))
-    print(now_ts())
+    # print(now_ts())
 
     # out = string_to_ts('2021-07-16', '%Y-%m-%d')
     # print(out)
 
+    a = 1729059775.443
+    print(ts_to_string(a))
+
     # print(string_to_ts('2022-06-01 22:00:00', pattern='%Y-%m-%d %H:%M:%S'))  # 1654092000

+ 23 - 14
sri-server-bg02/lib/MessageListener.py

@@ -18,24 +18,32 @@ class MessageListener(object):
     """
 
     @staticmethod
-    def decorate_method(client, userdata, message):
+    def v001(client, userdata, message):
         """消息处理方法"""
         # --- log ---
         # print(f'MessageListener24: #message.payload: {message.payload}', flush=True)
+        # methods.debug_log(f"MessageListener24", f"#message.payload: {message.payload}")
 
         # --- save log ---
-        file_name = methods.now_string('%Y-%m-%d-%H.log')
-        # log_file_path = f"{save_dir}/{file_name}"
-        log_file_path = os.path.join(save_dir, file_name)
+        # file_name = methods.now_string('%Y-%m-%d-%H.log')
+        # log_file_path = os.path.join(save_dir, file_name)
+        # methods.write_text(f'{message.payload}\n', 'a')
+
+        # --- save log ---
+        # file_name = methods.now_string('%Y-%m-%d-%H.log')
+        # log_file_path = os.path.join(save_dir, file_name)
         log_dict = json.loads(message.payload)
-        log_list = list()
-        # item_count = 8  # 小车项目
-        item_count = 29  # 湛江项目
-        for i in range(1, item_count + 1):
-            v = str(log_dict.get(str(i)))
-            log_list.append(v)
-        methods.write_text(log_file_path, '|'.join(log_list) + '\n', 'a')
-        # methods.debug_log(f"MessageListener38", f"#message.payload: {json.loads(message.payload)}")
+        # log_list = list()
+        log_time = int(log_dict.get('timestamp'))/1000
+        log_time = methods.ts_to_string(log_time)
+        methods.debug_log(f"MessageListener24", f"#log_time: {log_time}")
+        # print(f'MessageListener24: #log_time: {log_time}', flush=True)
+        # # item_count = 8  # 小车项目
+        # item_count = 29  # 湛江项目
+        # for i in range(1, item_count + 1):
+        #     v = str(log_dict.get(str(i)))
+        #     log_list.append(v)
+        # methods.write_text(log_file_path, '|'.join(log_list) + '\n', 'a')
 
     @classmethod
     def start_check_loop(cls):
@@ -46,8 +54,9 @@ class MessageListener(object):
         #     methods.debug_log('MessageListener46', f"#out: {out}")
 
         Global.emqx.start_subscribe_loop(
-            decorate_method=MessageListener.decorate_method,
-            subscribe_topic='bg/log'
+            decorate_method=MessageListener.v001,
+            # subscribe_topic='bg/log'
+            subscribe_topic='Vehicle/ControlVehicle/Veh001'
         )
 
     # @classmethod

+ 2 - 2
sri-server-bg03/lib/Connection_e1.py

@@ -603,9 +603,9 @@ class SRIConnection(asyncio.Protocol):
                 Leave.egotype: int32
                 """
                 o3 = protobuf.UserActivityInfo()
-                o3.user_uuid = 'aabbccddeeffgg'  # 用户uuid
+                o3.user_uuid = 'SSGGSSEEFFHHWWSS'  # 用户uuid
                 o3.cockpit_id = self.connection_id  # 舱端id
-                o3.vehicle_id = 10101089  # 车端id
+                o3.vehicle_id = 112233  # 车端id
                 re_command_id = protobuf.S2V_SendUserInfo  # 6011
                 re_body_length = o3.ByteSize()
                 re_head_data = struct.pack(self.head_sequence, re_command_id, re_body_length)