label_ok.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
#闹钟信息
-alarm_list = []
+alarm_list = []#用于显示闹钟列表不包含开关机信息
class ClockManager(Abstract):
def __init__(self):
self.idx = 0
IFEXIST = ql_fs.path_exists("/ext/static/storage_file/alarm_msg.json")
- self.check_alarm_list=[]
- if IFEXIST == False:
- with open("/ext/static/storage_file/alarm_msg.json","w",encoding='utf-8') as fd:
- ujson.dump( self.check_alarm_list,fd)
- print("闹钟信息加载完成")
- else:
+ self.check_alarm_list = []
+ if IFEXIST == True:
with open("/ext/static/storage_file/alarm_msg.json","r",encoding='utf-8') as fd:
- self.check_alarm_list = ujson.load(fd)
+ self.check_alarm_list = ujson.load(fd)
def post_processor_after_instantiation(self):
EventMesh.subscribe("push_clock_info", self.set)
EventMesh.subscribe("set_rtc_alarm", self.set_rtc_alarm)
EventMesh.subscribe("get_alarm_indx", self.get_alarm_indx)
EventMesh.subscribe("get_check_alarm_list", self.get_check_alarm_list)
- EventMesh.subscribe("set_check_alarm_list", self.set_check_alarm_list)
- def set_check_alarm_list(self, event, msg):
- self.check_alarm_list = msg
- print("self.check_alarm_list = {}".format(self.check_alarm_list))
+
def get_check_alarm_list(self, event, msg):
- return self.check_alarm_list
+ alarm_len = 0
+ global alarm_list
+ EventMesh.publish("read_alarminjson")
+ alarm_len = len(alarm_list)
+ return alarm_len
+
def set(self, event, msg):
global alarm_list
def read_alarminjson(self, event, msg):
IFEXIST = ql_fs.path_exists("/ext/static/storage_file/alarm_msg.json")
- global alarm_list
- if IFEXIST == False:
- with open("/ext/static/storage_file/alarm_msg.json","w",encoding='utf-8') as fd:
- ujson.dump(alarm_list,fd)
- print("闹钟信息加载完成")
- else:
+ global alarm_list
+ print("IFEXIST:{}".format(IFEXIST))
+ if IFEXIST == True:
with open("/ext/static/storage_file/alarm_msg.json","r",encoding='utf-8') as fd:
alarm_list = ujson.load(fd)
-
+ return alarm_list
+
def add_alarm(self, event, msg):
+
global alarm_list
+ EventMesh.publish("read_alarminjson")
idx = len(alarm_list)
- set_index1 = 0
- set_index2 = 0
- count = 0
- for i in range(0,2):
- get_index = EventMesh.publish("get_boot_off_index")#设置关机时间
- print("get_index{}".format(get_index))
- if idx == 0:#
- if get_index[0] == 0 and i == 0:#记录开关机的index
- count = i+1
- set_index1 = i+1
- elif get_index[0] != 1 and i == 0:
- count = int(get_index[0])
- set_index1 = count
-
- if get_index[1] == 0 and i == 1:
- count = i+1
- set_index2 = count
- elif get_index[1] != 0 and i == 1:
- count = int(get_index[1])
- set_index2 = count
- else:
- if get_index[0] == 0 and i == 0:
- count = idx+1
- set_index1 = idx+1
- elif get_index[0] != 0 and i == 0:
- count= int(get_index[0])
- set_index1 = count
-
- if get_index[1] == 0 and i == 1:
- count = idx+2
- set_index2 = idx+2
-
- elif get_index[1] != 0 and i == 1:
- count= int(get_index[1])
- set_index2 = count
-
- print("idx {} set_index1:{} set_index2:{} count:{}".format(idx,set_index1,set_index2,count))
- EventMesh.publish("set_boot_off_index",[set_index1,set_index2])#设置关机时间
-
-#00获取所有闹钟信息:
-# {'minute': 13, 'repeart': 2, 'idx': 0, 'enabled': 1, 'days': [1, 2, 3, 4, 5, 6, 0], 'hour': 11},
-# {'minute': 0, 'repeart': 2, 'idx': 1, 'enabled': 0, 'days': [1, 2, 3, 4, 5, 6, 0], 'hour': 17},
-# {'minute': 0, 'repeart': 1, 'idx': 2, 'enabled': 0, 'days': [], 'hour': 18},
-# {'hour': 8, 'repeart': 10, 'idx': 2, 'enabled': 1, 'days': [0, 1, 2, 3, 4, 5, 6], 'minute': 28},
-# {'hour': 17, 'repeart': 10, 'idx': 3, 'enabled': 1, 'days': [0, 1, 2, 3, 4, 5, 6], 'minute': 11}]
-
- print("i {}".format(i))
+
+ # msg = ['1','06:90','23:59']
+ count = 1
+ new = 0
+ num = 0
+ print("msg:{}".format(msg))
+ # if msg[0] == 1:
+ # msg_new = msg[1]
+ for i in range(0,2):#开关机固定是 idx 0 1
off_msg1 = msg[i+1]
msg_tmp1 = off_msg1.split(':')
start_hour = int(msg_tmp1[0])
start_min = int(msg_tmp1[1])
enable = int(msg[0])
- print("add_here-----idx:{} msg:{}",idx,msg)
- alarm_list.append({"idx": count-1, "hour": start_hour, "minute": start_min, "days": [0,1,2,3,4,5,6], "enabled": enable,"repeart":10})
- with open("/ext/static/storage_file/alarm_msg.json", 'w+',encoding='utf-8') as fd:
- ujson.dump(alarm_list,fd)
- print("alarm_list----- :{}",alarm_list)
- EventMesh.publish("set_check_alarm_list",alarm_list)
+ EventMesh.publish("set_boot_off_time",[msg[0],msg[1],msg[2]])
+ if alarm_list and new == 0 :
+ for x in range(0,5):
+ # print("count :{} self.alarm_list:111111{} len(self.alarm_list):{}".format(count,alarm_list,len(alarm_list)))
+ if new == 1 and count > len(alarm_list):
+ break
+ tmp = alarm_list[count-1]['idx']
+ if tmp == 0 or tmp == 1:#覆盖旧的
+ alarm_list[count-1] = {"idx": tmp, "hour": start_hour, "minute": start_min, "days":[0,1,2,3,4,5,6], "enabled": enable,"repeart":10}
+ count+=1
+ if count > len(alarm_list):
+ new = 1
+ # print("self.alarm_list:5555 {}".format(alarm_list))
+ break
+ else:#添加最新的
+ count+=1
+ if tmp == 2 or tmp == 3 or tmp == 4:#添加最新的
+ msg_tmp = EventMesh.publish("get_boot_off_time")
+ # print("msg_tmp all_data {}".format(msg_tmp))
+ if msg_tmp != None:
+ if len(msg_tmp[0]) > 0:#只有关机时间长度为0时才添加新元素 不是就覆盖原来旧的数据
+ # print("self.alarm_list:444444 {}".format(alarm_list))
+ if count > len(alarm_list):
+ new = 1
+ continue
+ else:
+ alarm_list.append({"idx": num, "hour": start_hour, "minute": start_min, "days":[0,1,2,3,4,5,6], "enabled": enable,"repeart":10})
+ # print("self.alarm_list:7777777 {}".format(alarm_list))
+ if count > len(alarm_list):
+ new = 1
+ break
+ count+=1
+ # print("self.alarm_list:111111 {}".format(alarm_list))
+
+ else:#添加最新的
+ alarm_list.append({"idx": num, "hour": start_hour, "minute": start_min, "days":[0,1,2,3,4,5,6], "enabled": enable,"repeart":10})
+ new = 1
+ num+=1
+ # print("add_here-----idx:{} msg:{} alarm_list:{}".format(idx,msg,alarm_list))
+
+ # else:
+ # msg_tmp = msg[1]
+ # # print("alarm_list:{} alarm_new_old:{} msg_tmp:{}",alarm_new,alarm_new_old,msg_tmp)
+ # num = 2
+ # count = 1
+ # j=0
+ # new = 0
+ # for j in range(0,3):
+ # alarm_day = []
+ # alarm_week = []
+ # alarm_total_data = []
+ # alarm_total_data = msg_tmp.split(',')[j]
+
+ # b = alarm_total_data.find('-')
+ # if b != -1:
+ # alarm_data = alarm_total_data.split('-')#-作为分隔符
+ # alarm_switch = int(alarm_data[1])#开关
+ # alarm_day_num = int(alarm_data[2])#天
+ # alarm_time = alarm_data[0]#时间
+ # alarm_time_tmp = alarm_time.split(':')#冒号分隔时间 时 分
+ # alarm_time_hour = int(alarm_time_tmp[0])
+ # alarm_time_min = int(alarm_time_tmp[1])
+ # if alarm_day_num == 3:
+ # alarm_week = alarm_data[3]#星期
+
+ # if alarm_day_num == 2:#每一天
+ # alarm_day = [1,2,3,4,5,6,0]
+ # elif alarm_day_num == 3:#自定义
+ # for i in range(0,7):
+ # if alarm_week[i] != '0':
+ # alarm_day.append(i)
+ # if alarm_list and new == 0 :
+ # for x in range(0,5):
+
+ # print("count :{} self.alarm_new:111111{} len(self.alarm_new):{} ".format(count,alarm_list,len(alarm_list)))
+
+ # tmp = alarm_list[count-1]['idx']
+ # if tmp == 2 or tmp == 3 or tmp == 4 :#覆盖旧的
+ # alarm_list[count-1] = {"idx": tmp, "hour": alarm_time_hour, "minute": alarm_time_min, "days":alarm_day, "enabled": alarm_switch,"repeart":1}
+ # count+=1
+ # if count > len(alarm_list):
+ # new = 1
+ # print("self.alarm_list:5555 {}".format(alarm_list))
+ # break
+ # else:#添加最新的
+ # count+=1
+ # if tmp == 0 or tmp == 1:#添加最新的
+ # msg_data = EventMesh.publish("get_boot_off_time")
+ # print("msg_data all_data {}".format(msg_data))
+ # if msg_data != None:
+ # if msg_data[1] > 0:#只有关机时间长度为0时才添加新元素 不是就覆盖原来旧的数据
+ # print("self.alarm_list:444444 {}".format(alarm_list))
+ # if count > len(alarm_list):
+ # new = 1
+ # continue
+ # else:
+ # alarm_list.append({"idx": num, "hour": alarm_time_hour, "minute": alarm_time_min, "days":alarm_day, "enabled": alarm_switch,"repeart":alarm_day_num})
+ # print("self.alarm_list:7777777 {}".format(alarm_list))
+ # if count > len(alarm_list):
+ # new = 1
+ # break
+ # count+=1
+ # print("self.alarm_list:111111 {}".format(alarm_list))
+ # else:#添加最新的
+ # alarm_list.append({"idx": num, "hour": alarm_time_hour, "minute": alarm_time_min, "days":alarm_day, "enabled": alarm_switch,"repeart":alarm_day_num})
+ # new = 1
+ # num+=1
+
+ print("alarm_list----len- :{}".format(len(alarm_list)))
+ with open("/ext/static/storage_file/alarm_msg.json", 'w+',encoding='utf-8') as fd:
+ ujson.dump(alarm_list,fd)
+ EventMesh.publish("push_update_alarm_show")
+
+
+
+
+
def remove_alarm(self, event, msg):
global alarm_list
with open("/ext/static/storage_file/alarm_msg.json", 'w+',encoding='utf-8') as fd:
ujson.dump(alarm_list,fd)
+
def get_alarm_indx(self,event,msg):
return self.idx
ujson.dump(alarm_list,fd)
#设置下一个闹钟
- msg_tmp = EventMesh.publish("get_boot_off_time")
-
+ msg_data = EventMesh.publish("get_boot_off_time")
+ msg_tmp = msg_data[0]
off_tmp2 = msg_tmp[2]
msg_tmp2 = off_tmp2.split(':')
end_min = int(msg_tmp2[0])*60+int(msg_tmp2[1])
if get_hr_state != None or get_spo2_state != None:
if get_hr_state != 1 and get_spo2_state != 1:
EventMesh.publish("load_screen", {"screen": "popup_alarm"})
-
# def _reset_rtc_alarm_time(self, args):
# print("---alarm_ring---")
self.startY = 0
self.startWidth = 0
self.check_json = 0
- self.wechat_list =lv.obj()
+ self.wechat_list = lv.obj(wechat_screen)
+ self.wechat_list.set_pos(0, 0)
+ self.wechat_list.set_size(240, 250)
+ self.wechat_list.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
+ self.wechat_list.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
+ self.wechat_list.add_flag(lv.obj.FLAG.HIDDEN)
+
EventMesh.subscribe("wechat_updata_list_show", self.wechat_updata_list_show)
EventMesh.subscribe("get_wechat_data", self.get_wechat_data)
EventMesh.subscribe("set_wechat_data", self.set_wechat_data)
_btn_label1 = lv.label(wechat_btn)
if value.find("R:") != -1:
- _btn_label1.set_size(40, 40)
+ _btn_label1.set_size(0, 0)
_btn_label1.set_pos(35, 8)
_btn_label1.set_text(str(self.msg_tmp)+'\"')
elif value.find("S:") != -1:
- _btn_label1.set_size(40, 40)
+ _btn_label1.set_size(0, 0)
_btn_label1.set_pos(self.startWidth-78, 8)
_btn_label1.set_text(str(self.msg_tmp)+'\"')
elif value.find("T:") != -1:
from protocol import LK_ProtoCol,PING_ProtoCol,HEART_ProtoCol,OXYGEN_ProtoCol,OXYGEN_One_ProtoCol,HRSTART_ProtoCol,CENTER_ProtoCol,UPLOAD_ProtoCol,\
TEMP_ProtoCol,DLT_ProtoCol,WT_ProtoCol,UD_ProtoCol,REMIND_ProtoCol, CR_ProtoCol,KA_ProtoCol,FIND_ProtoCol,POWEROFF_ProtoCol,\
- ProtoColResolver,PHL_ProtoCol,MONITOR_ProtoCol,bootoff_ProtoCol,WDSTART_ProtoCol,LOWBAT_ProtoCol
+ ProtoColResolver,PHL_ProtoCol,MONITOR_ProtoCol,bootoff_ProtoCol,WDSTART_ProtoCol,LOWBAT_ProtoCol,sosHome_dial_ProtoCol
import mgr as mgr
print("init7:{}".format(utime.localtime()))
- from mgr import ConfigStoreManager,getBootOffManager, LocationManager, SockManager,getVolumSizeManager,gethistoryDataManager,getUpLoadDataManager, getplayAudiodStateManager,\
- NetManager,AddrBookManager,MsgdetailManager,PhoneCallingManager,getStorageDataManager,getBrightnessManager,getHrTimeManager,getTempTimeManager,getLowBatManager
+ from mgr import ConfigStoreManager,getBootOffManager,getSosFlagManager, LocationManager, SockManager,getVolumSizeManager,gethistoryDataManager,getUpLoadDataManager, getplayAudiodStateManager,\
+ NetManager,AddrBookManager,MsgdetailManager,PhoneCallingManager,getOldTimeManager,getStorageDataManager,getBrightnessManager,getHrTimeManager,getTempTimeManager,getLowBatManager
print("init8:{}".format(utime.localtime()))
app.append_manager(getplayAudiodStateManager())
app.append_manager(getLowBatManager())
app.append_manager(getBootOffManager())
+ app.append_manager(getOldTimeManager())
+ app.append_manager(getSosFlagManager())
print("init21:{}".format(utime.localtime()))
pcr.add_support(bootoff_ProtoCol())
pcr.add_support(WDSTART_ProtoCol())
pcr.add_support(LOWBAT_ProtoCol())
+ pcr.add_support(sosHome_dial_ProtoCol())
sm = SockManager()
sm.add_support_resolver(pcr)
if set_interrup_call == 1:
EventMesh.publish("set_interrup_incall",0)
return
-
+
EventMesh.publish("set_interrup_incall",0)
EventMesh.publish("set_UI_high_priority",0)
print('voicecall disconnect')
EventMesh.publish("load_screen", {"screen": "main_menu"})
+ hangup_mode = EventMesh.publish("get_hangup_mode")
+ if hangup_mode == 1:
+ EventMesh.publish("set_sos_flag",0)
+ EventMesh.publish("set_sos_num",0)
sos_flag = EventMesh.publish("get_sos_flag")
- if sos_flag == 0:
+
+ if sos_flag == 0 :
EventMesh.publish("set_sos_num",0)
else:
num = EventMesh.publish("get_sos_num")
hour = date_tmp[3]
min = date_tmp[4]
+ old_Timesec = EventMesh.publish("get_old_time_data")
+ if old_Timesec != None:
+ data = RTC().datetime()
+ hour = data[4]
+ min = data[5]
+ next_alarm_time = utime.localtime(old_Timesec)
+ # print("data[5]:{} {} next_alarm_time:{} old_Timesec:{}".format(data[1],data[2],next_alarm_time,old_Timesec))
+ month = next_alarm_time[1]
+ day = next_alarm_time[2]
+ if month != data[1] or day != data[2]:
+ step = EventMesh.publish("get_old_step_value")
+ if step > 0:
+ self.gsensor.reset_step()
+ EventMesh.publish("set_old_step_value",0)
+
+ hr = EventMesh.publish("get_old_hr_data",)
+ if hr != 0:
+ EventMesh.publish("set_old_hr_data", 0)
+
+ spo2 = EventMesh.publish("get_old_spo2_data")
+ if spo2 != 0:
+ EventMesh.publish("set_old_spo2_data", 0)
+ EventMesh.publish("set_old_time_data",time_tmp)
+
if hour == 0:#清步数
if min <= 1:
if self.clear_step == 0:
if step > 0:
EventMesh.publish("set_old_step_value",0)
self.gsensor.reset_step()
+ hr = EventMesh.publish("get_old_hr_data")
+ if hr != 0:
+ EventMesh.publish("set_old_hr_data", 0)
+
+ spo2 = EventMesh.publish("get_old_spo2_data")
+ if spo2 != 0:
+ EventMesh.publish("set_old_spo2_data", 0)
self.clear_step = 1
else:
if self.clear_step == 1:
step = EventMesh.publish(constants.EVENT.GET_STEP)
self.old_step = self.oldstep + step[0]
return self.old_step
-
-
+#获取旧的时间戳
+class getOldTimeManager(Abstract):
+ # 获取天气数据
+ def __init__(self):
+ self.time_sec = 0
+ self.read_data = {}
+ check_json= ql_fs.path_exists("/ext/static/storage_file/config.json")
+ if check_json == True :
+ with open("/ext/static/storage_file/config.json","r") as fd:#音频文件编号
+ self.read_data = ujson.load(fd)
+ if self.read_data != {}:
+ b = str("old_time") in self.read_data.keys()
+ if b == True:
+ self.time_sec = self.read_data["old_time"]
+
+ def post_processor_after_instantiation(self):
+ EventMesh.subscribe("get_old_time_data", self.get_old_time_data)
+ EventMesh.subscribe("set_old_time_data", self.set_old_time_data)
+
+ def get_old_time_data(self, event, msg):
+ return self.time_sec
+
+ def set_old_time_data(self, event, msg):
+ self.time_sec = msg
+ self.read_data = EventMesh.publish("get_storage_data")
+ self.read_data["old_time"] = msg
+ EventMesh.publish("set_storage_data", self.read_data)
+ with open("/ext/static/storage_file/config.json","w",encoding="utf-8") as fd:
+ ujson.dump(self.read_data,fd)
+
+
+
class getWeatherDataManager(Abstract):
def __init__(self):
self.sos_flag = 0
self.sos_num = 0
+ self.hangup_mode = 0
self.call_timer = osTimer()
self.sos_numer1 = []
self.callnumer =""
EventMesh.subscribe("get_sos_num", self.get_sos_num)
EventMesh.subscribe("set_dial_sos_number", self.set_dial_sos_number)
+ EventMesh.subscribe("get_dial_sos_number", self.get_dial_sos_number)#设置家庭号码三个
EventMesh.subscribe("set_callnumer_cb", self.set_callnumer_cb)#延时回调
- EventMesh.subscribe("get_dial_sos_number", self.get_dial_sos_number)#设置家庭号码三个
+ EventMesh.subscribe("set_hangup_mode", self.set_hangup_mode)
+ EventMesh.subscribe("get_hangup_mode", self.get_hangup_mode)#获取挂断方式 是对方挂断 还是手表按键主动挂断
+
+ def get_hangup_mode(self, event, msg): # 1是设备端手表主动挂断 0是手机端
+ return self.hangup_mode
+
+ def set_hangup_mode(self, event, msg):
+ self.hangup_mode = msg
def set_sos_flag(self, event, msg):
self.sos_flag = msg
EventMesh.publish("save_phonenum",number[0])
voiceCall.callStart(str(number[0]))
-
def set_callnumer_cb(self, event, msg):
self.callnumer = msg
self.call_timer.start(5000, 0, self.call_timer_cb)#延迟1S 继续拨打
def set_dial_sos_number(self, event, msg):
self.sos_numer1 = msg
- # print("self.sos_numer1:{}".format(self.sos_numer1))
+
def get_dial_sos_number(self, event, msg):
return self.sos_numer1
def __init__(self):
self.read_data = {}
self.off_msg = {}
- self.off_index1 = 0
- self.off_index2 = 0
+ self.off_flag = 0
self.rtc = RTC()
check = ql_fs.path_exists("/ext/static/storage_file/config.json")
b3 = str("off_end") in self.read_data.keys()
if b3 == True:
self.off_end = self.read_data["off_end"]
- b4 = str("off_index1") in self.read_data.keys()
- if b4 == True:
- self.off_index1 = self.read_data["off_index1"]
- b5 = str("off_index2") in self.read_data.keys()
- if b5 == True:
- self.off_index2 = self.read_data["off_index2"]
# print("self.sos_numer1:{} self.read_data:{}".format(self.sos_numer1,self.read_data))
EventMesh.subscribe("set_boot_off_time", self.set_boot_off_time)#设置关机时间
EventMesh.subscribe("get_boot_off_time", self.get_boot_off_time)
- EventMesh.subscribe("set_boot_off_index", self.set_boot_off_index)#设置关机时间
- EventMesh.subscribe("get_boot_off_index", self.get_boot_off_index)
-
- def set_boot_off_index(self, event, msg):
- self.off_index1 = msg[0]
- self.off_index2 = msg[1]
-
- print("self.off_index1:{} self.off_index2:{}".format(self.off_index1,self.off_index2))
-
-
- def get_boot_off_index(self, event, msg):
- return [self.off_index1,self.off_index2]
-
def set_boot_off_time(self, event, msg):
+ read_data = EventMesh.publish("get_storage_data")
+ read_data["off_on"] = msg[0]
+ read_data["off_start"] = msg[1]
+ read_data["off_end"] = msg[2]
+ with open("/ext/static/storage_file/config.json", 'w+',encoding='utf-8') as fd:
+ ujson.dump(read_data,fd)
self.off_msg = msg
+ # print("read_data:{} self.off_msg:{}".format(read_data,self.off_msg))
def get_boot_off_time(self, event, msg):
- return self.off_msg
+ flag = 0
+ msg_tmp = EventMesh.publish("get_check_alarm_list")
+ # print("len(msg_tmp):{} len(self.off_msg):{}".format(msg_tmp,len(self.off_msg)))
+ if len(self.off_msg) > 0:
+ if msg_tmp > len(self.off_msg)-1:#判断闹钟是否有数据 总的数据大于开关机的时间 说明有闹钟列表
+ flag = 1
+ else:
+ flag = 0
+ else:
+ if msg_tmp > 0:
+ flag = 1
+
+ return [self.off_msg,flag]
+
\ No newline at end of file
"""
# b'SZKW*860132060004322*0035*REMIND,23-04-06,14:41:06,b6e0d4c6,1,27,-1,40,6DF157335E02'
# print("REMIND_ProtoCol RECV msg:%s"%(msg))
- self.alarm_list = []
+ alarm_new = []
msg = msg[1:-1]
msg_tmp = msg.decode('ascii')
msg_tmp = msg_tmp.split('REMIND,')
msg_tmp = msg_tmp[1]
- alarm_data = EventMesh.publish("get_check_alarm_list")
- num = len(alarm_data)
- print("num:%d"%(num))
+
+ alarm_new = EventMesh.publish("read_alarminjson")
+ # print("alarm_list:{} msg_tmp:{}",alarm_new,msg_tmp)
+ num = 2
+ count = 1
j=0
+ new = 0
for j in range(0,3):
- self.alarm_day = []
- self.alarm_week = []
- self.alarm_total_data = []
- self.alarm_total_data = msg_tmp.split(',')[j]
+ alarm_day = []
+ alarm_week = []
+ alarm_total_data = []
+ alarm_total_data = msg_tmp.split(',')[j]
- b = self.alarm_total_data.find('-')
+ b = alarm_total_data.find('-')
if b != -1:
- alarm_data = self.alarm_total_data.split('-')#-作为分隔符
+ alarm_data = alarm_total_data.split('-')#-作为分隔符
alarm_switch = int(alarm_data[1])#开关
alarm_day_num = int(alarm_data[2])#天
alarm_time = alarm_data[0]#时间
alarm_time_hour = int(alarm_time_tmp[0])
alarm_time_min = int(alarm_time_tmp[1])
if alarm_day_num == 3:
- self.alarm_week = alarm_data[3]#星期
+ alarm_week = alarm_data[3]#星期
if alarm_day_num == 2:#每一天
- self.alarm_day = [1,2,3,4,5,6,0]
+ alarm_day = [1,2,3,4,5,6,0]
elif alarm_day_num == 3:#自定义
for i in range(0,7):
- if self.alarm_week[i] != '0':
- self.alarm_day.append(i)
- self.alarm_list.append({"idx": num, "hour": alarm_time_hour, "minute": alarm_time_min, "days": self.alarm_day, "enabled": alarm_switch,"repeart":alarm_day_num})
- with open("/ext/static/storage_file/alarm_msg.json", 'w',encoding='utf-8') as fd:
- ujson.dump(self.alarm_list,fd)
- num+=1
- EventMesh.publish("set_check_alarm_list", self.alarm_list)
+ if alarm_week[i] != '0':
+ alarm_day.append(i)
+ if alarm_new and new == 0 :
+ for x in range(0,5):
+
+ # print("count :{} self.alarm_new:111111{} len(self.alarm_new):{} ".format(count,alarm_new,len(alarm_new)))
+ if new == 1 and count > len(alarm_new):
+ break
+ tmp = alarm_new[count-1]['idx']
+ if tmp == 2 or tmp == 3 or tmp == 4 :#覆盖旧的
+ alarm_new[count-1] = {"idx": tmp, "hour": alarm_time_hour, "minute": alarm_time_min, "days":alarm_day, "enabled": alarm_switch,"repeart":alarm_day_num}
+ count+=1
+ if count > len(alarm_new):
+ new = 1
+ # print("self.alarm_list:5555 {}".format(alarm_new))
+ break
+ else:#添加最新的
+ count+=1
+ if tmp == 0 or tmp == 1:#添加最新的
+ msg_data = EventMesh.publish("get_boot_off_time")
+ # print("msg_data all_data {}".format(msg_data))
+ if msg_data != None:
+ if msg_data[1] != 0:#只有关机时间长度为0时才添加新元素 不是就覆盖原来旧的数据
+ # print("alarm_new:444444 {}".format(alarm_new))
+ if count > len(alarm_new):
+ new = 1
+ continue
+ else:
+ alarm_new.append({"idx": num, "hour": alarm_time_hour, "minute": alarm_time_min, "days":alarm_day, "enabled": alarm_switch,"repeart":alarm_day_num})
+ # print("self.alarm_list:7777777 {}".format(alarm_new))
+ if count > len(alarm_new):
+ new = 1
+ break
+ count+=1
+ # print("self.alarm_list:111111 {}".format(alarm_new))
+ else:#添加最新的
+ alarm_new.append({"idx": num, "hour": alarm_time_hour, "minute": alarm_time_min, "days":alarm_day, "enabled": alarm_switch,"repeart":alarm_day_num})
+ new = 1
+ num+=1
+ # print("self.alarm_list: {}".format(alarm_new))
+ with open("/ext/static/storage_file/alarm_msg.json", 'w',encoding='utf-8') as fd:
+ ujson.dump(alarm_new,fd)
EventMesh.publish("push_update_alarm_show")
+
+ # EventMesh.publish("add_alarm",[0,msg_tmp])
EventMesh.publish(constants.PROTOCOL.REMIND_SEND)
class HRSTART_ProtoCol(ProtoCol):
print("BOOTOFF:data:%s"%(data))
# 通过socket发送到服务器端
EventMesh.publish(constants.EVENT.CHANNEL_SOCKET_SEND,data)
-
def recv(self, event, msg):
"""
@param event:
on_end = msg_tmp[3]
print("BOOTOFF:send data:{} {} {}".format(on_bt,on_start,on_end))
#b'[SZKW*860132060006970*0015*BOOTOFF,1,06:00,23:59]'
- EventMesh.publish("set_boot_off_time",[on_bt,on_start,on_end])
EventMesh.publish("add_alarm", [on_bt,on_start,on_end])
- EventMesh.publish("set_rtc_alarm")
EventMesh.publish(constants.PROTOCOL.BOOTOFF_SEND)
@param event:
@param msg: 接收到的下行数据
"""
+
# b'[SZKW*867387060319166*000A*SOS_SEND]'
read_data = {}
read_data = EventMesh.publish("get_storage_data")
if len(msg_tmp[i+1]) != 0:
read_data["SOS_NUMBER{}".format(i+1)] = msg_tmp[i+1]
# print("read_data:{} msg_tmp:{}".format(read_data,msg_tmp[i+1]))
-
+
if (len(msg_tmp)-1) == 3:
EventMesh.publish("set_dial_sos_number",[msg_tmp[1],msg_tmp[2],msg_tmp[3]])
elif (len(msg_tmp)-1) == 2:
# print("read_data:{}".format(read_data))
with open("/ext/static/storage_file/config.json","w",encoding="utf-8") as fd:
ujson.dump(read_data,fd)
-
EventMesh.publish(constants.PROTOCOL.SOS_SEND)
# 低电提醒
def hangup(self,e):
EventMesh.publish("set_UI_high_priority", 0)
+ EventMesh.publish("set_hangup_mode", 1)
voiceCall.callEnd()
def done_return(self):
for scr in self.screen_list:
if scr.NAME == msg["screen"]:
# 每次屏幕切换开始息屏倒计时
- self.__lcd_on()
+
if scr.NAME == 'main_menu':
self.main_flag = 1
else :
self.lv.scr_load(self.screen.get_meta())
self.screen.post_processor_after_initialization()
+ self.__lcd_on()
mem = gc.mem_free()
print('2剩余内存RAM:{} KB'.format(mem / 1024))
poweroff_confirm_label.align(lv.ALIGN.CENTER, 0, 0)
poweroff_confirm_label.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
+import utime
class PoweroffConfirmScreen(Screen):
NAME = "poweroff_comfirm"
self.read_data = EventMesh.publish("get_storage_data")
if step != 0:
self.read_data["old_step"] = step
+ date_tmp = utime.localtime()
+ self.read_data["old_timesecond"] = date_tmp#关机保存一个是时间
#print("self.read_data:{}".format(self.read_data))
with open("/ext/static/storage_file/config.json","w",encoding="utf-8") as fd:
ujson.dump(self.read_data,fd)
self.timer.start(3*1000,0,self.power_off)
def power_off(self,*args):
+
Power.powerDown()
def done_return(self):
from protocol import LK_ProtoCol,PING_ProtoCol,HEART_ProtoCol,OXYGEN_ProtoCol,OXYGEN_One_ProtoCol,HRSTART_ProtoCol,CENTER_ProtoCol,UPLOAD_ProtoCol,\
TEMP_ProtoCol,DLT_ProtoCol,WT_ProtoCol,UD_ProtoCol,REMIND_ProtoCol, CR_ProtoCol,KA_ProtoCol,FIND_ProtoCol,POWEROFF_ProtoCol,\
- ProtoColResolver,PHL_ProtoCol,MONITOR_ProtoCol,bootoff_ProtoCol,WDSTART_ProtoCol,LOWBAT_ProtoCol
+ ProtoColResolver,PHL_ProtoCol,MONITOR_ProtoCol,bootoff_ProtoCol,WDSTART_ProtoCol,LOWBAT_ProtoCol,sosHome_dial_ProtoCol
import mgr as mgr
print("init7:{}".format(utime.localtime()))
- from mgr import ConfigStoreManager,getBootOffManager, LocationManager, SockManager,getVolumSizeManager,gethistoryDataManager,getUpLoadDataManager, getplayAudiodStateManager,\
- NetManager,AddrBookManager,MsgdetailManager,PhoneCallingManager,getStorageDataManager,getBrightnessManager,getHrTimeManager,getTempTimeManager,getLowBatManager
+ from mgr import ConfigStoreManager,getBootOffManager,getSosFlagManager, LocationManager, SockManager,getVolumSizeManager,gethistoryDataManager,getUpLoadDataManager, getplayAudiodStateManager,\
+ NetManager,AddrBookManager,MsgdetailManager,PhoneCallingManager,getOldTimeManager,getStorageDataManager,getBrightnessManager,getHrTimeManager,getTempTimeManager,getLowBatManager
print("init8:{}".format(utime.localtime()))
app.append_manager(getplayAudiodStateManager())
app.append_manager(getLowBatManager())
app.append_manager(getBootOffManager())
+ app.append_manager(getOldTimeManager())
+ app.append_manager(getSosFlagManager())
print("init21:{}".format(utime.localtime()))
pcr.add_support(bootoff_ProtoCol())
pcr.add_support(WDSTART_ProtoCol())
pcr.add_support(LOWBAT_ProtoCol())
+ pcr.add_support(sosHome_dial_ProtoCol())
sm = SockManager()
sm.add_support_resolver(pcr)