В настоящее время я использую Microsoft TTS, я получаю потоковое аудио, сохраняю в файл и затем отправляю команду Asterisk в «Потоковый файл».Следуйте:
....
response = requests.post(url, data=body, headers=headers)
self.print("Got wave response")
with open("{}{}.{}".format(cachedir, filename, self.exten), 'wb') as fd:
for chunk in response.iter_content(chunk_size=1024):
self.print("Gravando....")
fd.write(chunk)
fd.close()
self.agi.stream_file('{}{}'.format(cachedir, filename))
Я бы избежал необходимости записывать файл локально, посылая двоичный файл для воспроизведения напрямую.Или даже запись в файл, принудительный запуск в первом потоковом пакете.Я пытался реализовать эту последнюю идею, но я получаю предупреждение Asterisk о том, что файл содержит ноль байтов.
Любое предложение?