2015-02-11 29 views
1

我有我的twiml這樣:Twilio TwiML:客戶掛機後別錄

<Response> 
    <Dial timeout="12"> 
    <Client>Robbie</Client> 
    </Dial> 
    <Say> 
    The person you are trying to reach is currently unavailable. Please leave a message at the beep. 
    </Say> 
    <Record action="/voicemail/fdasjhklewu/" maxLength="90" method="GET" timeout="7"/> 
    </Response> 

這裏twilio試圖到達客戶端連接和呼入,然後如果沒有反應,它進入語音信箱。

但是,如果我回答然後掛斷,它仍然會轉到語音郵件。我怎樣才能掛斷電話而不是轉到語音信箱?

回答

2

Twilio開發者傳道這裏。

你實際上可以達到你想要的,但方式稍有不同。

如果你通過這樣的行動,你的<Dial>

<Response> 
    <Dial action='/after_dial'> 
    <Client>Robbie</Client> 
    </Dial> 
</Response> 

然後,一旦調用完成,你需要的東西來處理回調到這一行動。下面是在Ruby中的例子與西納特拉(雖然你可以用任何你想要的語言做到這一點):

post '/after_dial' do 
    content_type 'text/xml' 
    if ['busy', 'no-answer', 'failed', 'canceled'].include?(params['DialCallStatus']) 
    "<Say> 
     The person you are trying to reach is currently unavailable. Please leave a message at the beep. 
    </Say> 
    <Record action="/voicemail/fdasjhklewu/" maxLength="90" method="GET" timeout="7"/>" 
    else 
    "<Hangup/>" 
    end 
end 

DialCallStatus參數告訴你發生了什麼的號召,所以如果它是忙,錯過了,取消或失敗出於任何原因,你可以去語音信箱,否則電話已完成,你可以只是掛斷電話。

讓我知道這是否有幫助。

0

我不認爲有辦法做你想做的。

Twilm在談到中的順序執行。

什麼,你會想要做的就是指定一個回調頁面撥盤。

接着,如果完成了,你會想掛斷

如果沒有完成,那麼你會做的語音郵件。

他是網站的例子。記住,你將使用相同的邏輯,如果它是一個客戶端或手機

https://www.twilio.com/docs/howto/voicemail