Estou desenvolvendo um chatbot baseado em voz que pode chamar uma pessoa e ter a conversa. Atualmente, o chatbot usa meu microfone e alto-falante para áudio de entrada e saída. Eu estou tentando integrar isso através da rede móvel, de modo a substituir o microfone do meu PC e alto-falante com o celular. Veja o diagrama de blocos no link para entender
mesmo diagrama de blocos, mas nuvem diferente
Eu estou tomando entrada de mic e dando-lhe um conversor de fala para texto (S2TC) ea resposta dada pelo chatbot dando-o para um conversor de texto para fala (T2S).
import speech_recognition as sr
from speechtotext import convert_speech_to_text
r = sr.Recognizer()
with sr.Microphone() as source:
# in_audio is the mic input
in_audio = r.listen(source)
# bot give response based on input audio
bot_response = chatbot(convert_speech_to_text(in_audio))
out_audio = convert_text_to_speech(bot_response)
Agora estou tentando utilizar o asterisco para conectar-se à rede e integrar o mobile e o meu chatbot. Para isso, preciso que o que quer que seja falado em dispositivos móveis seja recebido como 'in_audio' e 'out_audio' devem ser enviados pela rede.
Aqui o bot inicia a ligação, acabei de receber um link para fazer uma ligação , mas como faço para receber ou capturar in_audio pela rede para enviar para o meu programa ou para meus conversores, e enviar o out_audio para um usuário. Existem funções de asterisco para fazer isso? Se não for possível configurar o asterisco, existe alguma maneira de integrar rede móvel a bots de voz?
Eu estou construindo o aplicativo usando python e discurso bing para conversor de texto no windows.
Nota: Eu sou novo no asterisco.