baresip - блокировка подпроцесса stdout/stderr и отсутствие вывода
Я пишу оболочку Python для Baresip, которая сможет инициировать вызовы и обнаружить, что они завершены на дальнем конце. Я использовал baresip v0.5.7, а теперь v0.5.8.
По какой-то причине baresip не печатает информацию о том, что вызов завершен, и во время активного вызова печатается только строка [00:01:01] времени вызова.
Вот мой код:
baresip_process = subprocess.Popen('baresip', stdout=PIPE, stderr=STDOUT, stdin=PIPE)
output = baresip_process.stdout.readline()
if 'terminated' in output:
#Do something....
Проблемы:
1) baresip_process.stdout.readline() блокируется навсегда
2) По сути, baresip никогда не печатает "прекращено" или другую информацию, относящуюся к вызову, в stderr/stdout.
Спасибо за помощь