私は現在、「電子メールから音声通話」というプロジェクトに取り組んでいます。Pythonを使用して、電子メールを抽出して音声に変換し、WAVファイルに保存しました。今アスタリスクを使用しています(ubuntu 10.10osにAsterisk10.2.1をインストールしました)。システムを介してユーザーの携帯電話(たとえば、919833000000インドの番号)への通話を生成したいと思います。
アスタリスクマネージャーインターフェイスに接続するためのPythonコードを作成しました。また、sip.confファイルとextensions.confファイル、およびmanager.confを構成しました。私はvoipプロバイダーvoiceall.comに登録し、そのユーザー名パスワードを持っています。
これで、Pythonコードを実行しているときに、コードはエラーなしで実行されますが、何も起こりません。呼び出しは生成されていません。誰かがこれで私を助けることができますか?Pythonコードは次のとおりです。
import sys, os, socket, random
# Asterisk Manager connection details
HOST = '127.0.0.1'
PORT = 5038
# Asterisk Manager username and password
USER = 'MYUSERNAME'
SECRET = 'MYPASSWORD'
# Set the name of the SIP trunk to use for outbound calls
TRUNK = 'voiceall'
OUTBOUND = '919833000000'
# Send the call details to the Asteirsk Manager Interface
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
sleep(3)
s.send('Action: login\r\n')
s.send('Username: ' + USER + '\r\n')
s.send('Secret: ' + SECRET + '\r\n\r\n')
sleep(3)
s.send('Action: status\r\n')
data = s.recv(1024)
print data + '\n'
s.send('Events: off\r\n\r\n')
sleep(3)
s.send('Action: originate\r\n')
s.send('Channel: Sip/' + TRUNK + '/' + OUTBOUND + '\r\n')
s.send('WaitTime: 30\r\n')
s.send('CallerId: VOICEALL_USERNAME\r\n')
s.send('Application: playback\r\n')
s.send('Data: /home/Documents/newdemo1' + '\r\n') #newdemo1 is the wave file
s.send('Context: testing\r\n')
s.send('Async: true\r\n')
s.send('Priority: 1\r\n\r\n')
sleep(10)
s.send('Action: Logoff\r\n\r\n')
s.close()
私のsip.confファイルは次のとおりです。
[general]
register => VOICEALL_USERNAME:VOICEALL_PASSWORD@sip.voiceall.net:5038
[voiceall]
canreinvite=no
context=mycontext
host=sip.voiceall.net
secret=VOICEALL_PASSWORD ;your password
type=peer
username=VOICEALL_USERNAME ;your account
disallow=all
allow=ulaw
fromuser=VOICEALL_USERNAME ;your account
trustrpid=yes
sendrpid=yes
insecure=invite
nat=yes
extensions.confファイルは次のとおりです。
[mycontext]
include => voiceall-outbound
[voiceall-outbound]
exten => _1NXXNXXXXXX,1,Dial(SIP/${EXTEN}@voiceall)
exten => _1NXXNXXXXXX,n,Playback(/home/Documents/demonew1)
exten => _1NXXNXXXXXX,n,Hangup()
exten => _NXXNXXXXXX,1,Dial(SIP/1${EXTEN}@voiceall)
exten => _NXXNXXXXXX,n,Playback(/home/Documents/demonew1)
exten => _NXXNXXXXXX,n,Hangup()
exten => _011.,1,Dial(SIP/${EXTEN}@voiceall)
exten => _011.,n,Playback(/home/Documents/demonew1)
exten => _011.,n,Hangup()
私はアスタリスクに慣れていないので、私を助けてください。どんな助けでもありがたいです。前もって感謝します。