2016-07-26 60 views
1

我期待與Twilio建立整合,以下是我想要做的簡要概述: 1)用選項 的數字(語言FTW)菜單提示來電者 - 「按1鍵爲X,按2鍵爲Y」 2)提示呼叫者留下記錄 - 例如,‘只是答案的留言,然後按#或掛斷’ 3)訪問記錄(MP3)#2可Twilio IVR錄製單一答案嗎?

感謝

+0

你能否清楚你的問題,因爲你的描述有點在說你在做什麼,但不是確切的問題 – Shyam

回答

1

Twilio開發人員在這裏傳播信息。

你絕對可以這樣做!爲此,您需要提供一系列URL,以TwiML作爲迴應,告訴Twilio如何處理此通話。

首先,您需要設置一個Twilio號碼,以便將來電轉到您的第一個webhook網址。您需要在Twilio console中執行此操作。

然後,您的第一個webhook網址需要產生選項菜單。這通常稱爲IVR,我們有幾個教程向您展示如何在這裏深入構建一個教程:IVR: Screening and RecordingIVR Phone tree(我已經鏈接到Ruby/Rails版本的教程,但還有其他語言可用,只需檢查tutorials page)。

本質上,您需要使用TwiML中的<Say><Gather>動詞讀出選項並對結果作出響應。例如:

<Response> 
    <Gather numDigits="1" action="/gather_results"> 
    <Say voice="alice">Dial 1 to leave a message, Dial 2 to hangup</Say> 
    </Gather> 
</Response> 

action attribute on the <Gather> element點的地方,一旦他們進入一個數字呼叫方應直接。那時你需要寫一些動態的東西,從請求中提取Digits parameter。如果該號碼響應錄音動作,則可以使用<Record>動詞記錄該答案。

我寫下如下,就像它使用Sinatra和Ruby,但希望它顯示如何在任何語言中使用它。

def gather_results 
    if params["Digits"] == "1" 
    "<Response finishOnKey='#'> 
     <Say voice="alice">Leave a message and press # or hang up</Say> 
     <Record action="/record_results"></Record> 
    </Response>" 
    else 
    # Do something else 
    end 
end 

最後,您需要一些東西來完成錄製。該最終的URL位於<Record>動詞的action屬性中描述的端點上。該URL將收到extra parameters that refer to the recording,包括錄製文件本身的URL。你可以在這裏編寫你喜歡的任何代碼,或者只是保存錄制的URL或者下載文件本身。

希望這可以幫助,讓我知道如果有什麼不清楚。