_thread.start_new_thread(self.interInfo_queue_thread, ())
EventMesh.subscribe("publish_message_event_interInfo",self.publish_message_event_interInfo)
+
+ self.audio_event_queue = Queue()
+ _thread.start_new_thread(self.audio_event_queue_thread, ())
+ EventMesh.subscribe("publish_message_event_audio",self.publish_message_event_audio)
+
self.record_test = audio.Record()
self.record_test.gain(4,12)
str_data = 'mp3files={}.mp3'.format(audio_buf.index("R_WECHAT_RECV"))
EventMesh.publish("play_audio_file",[str_data,1])#获取播放音频文件
- def play_audio_file(self,event,str_data):#msg 拼接的路径文件
+
+
+ def audio_event_queue_thread(self):
+ while True:
+ data = self.audio_event_queue.get()
+ #print("interInfo_queue_thread:data = {}".format(data))
+ if data != None:
+ try:
+ data["func"](data["data"])
+ except Exception as e:
+ print("interInfo_queue_thread:ERROR:{}".format(e))
+ usys.print_exception(e)
+ def publish_message_event_audio(self,event,msg):
+ self.audio_event_queue.put(msg)
+
+ def play_audio_file(self, *args, **kwargs):#拨打电话
+ # print("args",args)
+ EventMesh.publish("publish_message_event_audio",{"func":self.play_audio_file_do,"data":args[1]})
+
+ def play_audio_file_do(self,data):#msg 拼接的路径文件
open_power = EventMesh.publish("get_power_on_state")#获取开机标识
power_off = EventMesh.publish("get_power_off_state")#获取开机标识
if open_power != None:
if power_off != None:
if power_off == 1:
return
- print("play_audio_file",str_data[0],str_data[1])#路径 str_data[1] 是否需要被打断
- self.aud.montage_play('U:/static/audio.bin',1,str_data[1],str_data[0])
+ print("play_audio_file",data[0],data[1])#路径 str_data[1] 是否需要被打断
+ self.aud.montage_play('U:/static/audio.bin',1,data[1],data[0])
except Exception as e:
print("interInfo_queue_thread:ERROR:{}".format(e))
usys.print_exception(e)
+
def publish_message_event_interInfo(self,event,msg):
self.interInfo_queue.put(msg)