locky 3 жил өмнө
parent
commit
e56dbfa692

+ 3 - 0
Ansjer/config.py

@@ -82,6 +82,9 @@ AWS_ACCESS_KEY_ID = ['AKIA2MMWBR4DSFG67DTG','AKIA2E67UIMD45Y3HL53']  #0国内,
 AWS_SECRET_ACCESS_KEY = ['aI9gxcAKPmiGgPy9axrtFKzjYGbvpuytEX4xWweL','ckYLg4Lo9ZXJIcJEAKkzf2rWvs8Xth1FCjqiAqUw']
 AWS_ARN = ['arn:aws-cn:s3','arn:aws:s3']
 
+# MQTT主题名
+SMART_SCENE_TOPIC_NAME = 'loocam/gateway_sensor/smart_scene/{}'
+
 #尚云服务器CRCKey
 CRCKey = {'AUS':'CRCKey', 'ACN':'CRCKey'}   #{平台名:CRCKey值}
 

+ 5 - 4
Controller/SensorGateway/SmartSceneController.py

@@ -12,6 +12,7 @@ from django.db import transaction
 from django.db.models import F, Q, Count
 from django.views import View
 
+from Ansjer.config import SMART_SCENE_TOPIC_NAME
 from Model.models import FamilyRoomDevice, GatewaySubDevice, FamilyRoom, SmartScene, EffectiveTime, Device_Info, \
     SceneLog
 from Service.CommonService import CommonService
@@ -315,7 +316,7 @@ class SmartSceneView(View):
                 smart_scene_qs.save()
                 # 发布MQTT消息通知网关设备
                 thing_name = serial_number
-                topic_name = 'loocam/gateway_sensor/smart_scene/{}'.format(serial_number)
+                topic_name = SMART_SCENE_TOPIC_NAME.format(serial_number)
 
                 success = CommonService.req_publish_mqtt_msg(thing_name, topic_name, msg)
                 try:
@@ -439,7 +440,7 @@ class SmartSceneView(View):
                 serial_number = GatewaySubDevice.objects.filter(id=sub_device_id).values('device__serial_number')[0][
                     'device__serial_number']
 
-            topic_name = 'loocam/gateway_sensor/smart_scene/{}'.format(serial_number)
+            topic_name = SMART_SCENE_TOPIC_NAME.format(serial_number)
 
             with transaction.atomic():
                 SmartScene.objects.filter(id=smart_scene_id).update(is_enable=is_enable)
@@ -632,7 +633,7 @@ class SmartSceneView(View):
 
             # 通过mqtt发送设备数据
             thing_name = serial_number
-            topic_name = 'loocam/gateway_sensor/smart_scene/{}'.format(serial_number)
+            topic_name = SMART_SCENE_TOPIC_NAME.format(serial_number)
             success = CommonService.req_publish_mqtt_msg(thing_name, topic_name, msg)
             try:
                 assert success
@@ -669,7 +670,7 @@ class SmartSceneView(View):
             else:
                 serial_number = GatewaySubDevice.objects.filter(id=smart_scene_qs[0]['sub_device_id']).\
                     values('device__serial_number')[0]['device__serial_number']
-            topic_name = 'loocam/gateway_sensor/smart_scene/{}'.format(serial_number)
+            topic_name = SMART_SCENE_TOPIC_NAME.format(serial_number)
             with transaction.atomic():
                 SmartScene.objects.filter(id__in=smart_scene_id_list).delete()
                 for smart_scene_id in smart_scene_id_list:

+ 2 - 1
Controller/SensorGateway/SubDeviceController.py

@@ -11,6 +11,7 @@ from django.db import transaction
 from django.db.models import Count
 from django.views import View
 
+from Ansjer.config import SMART_SCENE_TOPIC_NAME
 from Model.models import Device_Info, GatewaySubDevice, FamilyRoomDevice, SensorRecord, SmartScene
 from Service.CommonService import CommonService
 
@@ -453,7 +454,7 @@ class GatewaySubDeviceView(View):
                 # 获取序列号
                 sub_device_qs = sub_device_qs.values('device_id', 'src_addr', 'device__serial_number')
                 serial_number = sub_device_qs[0]['device__serial_number']
-                topic_name = 'loocam/gateway_sensor/smart_scene/{}'.format(serial_number)
+                topic_name = SMART_SCENE_TOPIC_NAME.format(serial_number)
                 sos_count = GatewaySubDevice.objects.filter(device_id=sub_device_qs[0]['device_id']).count()
                 # 通知设备修改sos状态
                 msg = {