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.

Спасибо за помощь

0 ответов

Другие вопросы по тегам