我有一个mqtt(paho)文件,它可以监听物联网消息,然后执行一些操作。在一个测试项目中,我有2个过程,一个是“播放音频”,另一个是“停止”该过程
def on_connect(self, mosq, obj, rc):
mqttc.subscribe(MQTT_TOPIC_START, 0)
mqttc.subscribe(MQTT_TOPIC_STOP, 0)
def on_message(mosq, obj, msg):
print "Topic: " + str(msg.topic)
print "QoS: " + str(msg.qos)
print "Payload: " + str(msg.payload)
iot_data = json.loads(str(msg.payload))
if (iot_data["action"]== 'capture'):
subprocess.call('python play_audio.py', shell=True)
elif (iot_data["action"]== 'stop'):
subprocess.call('pkill -f play_audio.py', shell=True)
第一个进程(播放音频)运行良好,但是只有在第一个进程完成后才能调用第二个进程。因此,第二进程无法停止“播放音频”。
如何停止第二过程的“播放音频”第一过程? 任何建议表示赞赏。
答案 0 :(得分:0)