def __init__(self):
super().__init__()
self._1M_flag = 0#判断一分钟定时器是否开启中
+ self._1M_nowplay_flag = 0#判断当前留言播放是否结束去影响新留言播放的标志位
self.app_new_voice_flag = 0#app是否下发留言
self._1M_timer = osTimer()#多发留言间隙时间60S
self._60S_voice_flag = 0
+ self.is_listen_wait = 0#是否收听未听留言
+ self.close_timer_cnt = 0 #若两次未听定时器关闭
EventMesh.subscribe("get_app_new_voice_flag",self.get_app_new_voice_flag)
EventMesh.subscribe("set_app_new_voice_flag",self.set_app_new_voice_flag)
EventMesh.subscribe("get_1M_flag",self.get_1M_flag)
+ EventMesh.subscribe("set_1M_nowplay_flag",self.set_1M_nowplay_flag)
+ EventMesh.subscribe("set_is_listen_wait",self.set_is_listen_wait)
EventMesh.subscribe("get_60S_voice_flag",self.get_60S_voice_flag)
EventMesh.subscribe("set_60S_voice_flag",self.set_60S_voice_flag)
pass
EventMesh.publish("set_play_new_voice_list",new_voice_list)
print("是否收到留言:{},self._1M_flag = {}".format(EventMesh.publish("get_recv_voice"),self._1M_flag))
- if EventMesh.publish("get_recv_voice") == 0 and self._1M_flag == 0:#当没有音频在播放时,再播放新的,否则保存下来不播放,等60S后一起播放
+ if EventMesh.publish("get_recv_voice") == 0 and self._1M_flag == 0 and self._1M_nowplay_flag == 0:#当没有音频在播放时,再播放新的,否则保存下来不播放,等60S后一起播放
EventMesh.publish("set_recv_voice",1) #设置留言播放状态
EventMesh.publish("play_new_voice_list")
+ self._1M_nowplay_flag == 1
else:#当有音频在播放时,存下来开始倒计时
pass
if self._1M_flag == 0 :
EventMesh.publish("set_history_voice_flag",1)#修改历史留言标志位
EventMesh.publish("set_wait_voice_flag",1)#修改60S标志位
EventMesh.publish(WEB_CMD_ENUM.GET_NEW_VOICE_MSG_S)
-
+
def get_app_new_voice_flag(self,event,msg):
return self.app_new_voice_flag
def set_app_new_voice_flag(self,event,msg):
return self._60S_voice_flag
def set_60S_voice_flag(self,event,msg):
self._60S_voice_flag = msg
+ def set_1M_nowplay_flag(self,event,msg):
+ self._1M_nowplay_flag = msg
+ def set_is_listen_wait(self,event,msg):
+ self.is_listen_wait = msg
class IOTWeb_put_voice_msg_stateProtoCol(ProtoCol):
"""put_voice_msg_state"""
TYPE = "put_voice_msg_state"