通話の作成
POSThttps://{API_ENDPOINT}/v1/Accounts/{AccountSid}/CallsContent-Type: application/json
認証
Authorizationヘッダー (ベアラートークン, 必須) —Bearer <token>形式のベアラー認証です。token にはご自身の認証トークンを指定します。
リクエスト
パスパラメータ
AccountSidstring
ボディ (application/json)
このエンドポイントはオブジェクトを受け取ります。
fromstring発信者番号toTarget通話の宛先application_sidstringこの通話の制御に使用するアプリケーション。application_sid と call_hook のいずれかが必須です。answerOnBridgebooleantrue に設定すると、発信先の番号が応答するまで着信通話は呼び出し中のままとなり、応答した時点で着信レグに 200 OK が送信されます。false の場合、発信通話を発信すると同時に着信通話は即座に応答されます。call_hookWebhookcall_status_hookWebhookfromHoststringINVITE の SIP From ヘッダーに設定するホスト名timeoutinteger通話の応答を待機する秒数。デフォルトは 60 です。timeLimitinteger通話の最大長 (秒)codecslist of string発信 INVITE で提示するコーデック名を優先順に指定します。名前の大文字・小文字は区別されません。省略した場合、メディアサーバーはデフォルトのコーデックを提示します。サポートされていない名前が 1 つでも含まれている場合はリスト全体が無視され、エラーがログに記録されてアラートが書き込まれ、デフォルトのネゴシエーションが使用されます。tagobject通話に関連付ける顧客提供メタデータの初期セット (Wipple CPaaS の 'tag' Function を参照)headersobject通話に関連付ける顧客の SIP ヘッダーsipRequestWithinDialogHookstringセッションメッセージを受信するための SIP ダイアログ内フックspeech_synthesis_vendorstring音声合成 (TTS) のベンダー (application_sid を使用しない場合は必須)speech_synthesis_languagestring音声合成 (TTS) の言語 (application_sid を使用しない場合は必須)speech_synthesis_voicestring音声合成 (TTS) の音声 (application_sid を使用しない場合は必須)speech_recognizer_vendorstring音声認識 (STT) のベンダー (application_sid を使用しない場合は必須)speech_recognizer_languagestring音声認識 (STT) の言語 (application_sid を使用しない場合は必須)amdamddual_streamsbooleantrue に設定すると、Wipple CPaaS は SDP オファーに 1 つではなく 2 つのオーディオメディアストリーム (2 つのm=audio行) を含む発信 INVITE を生成します。対向側 (キャリアや録音システムなど) が着信音声と発信音声を別々の RTP ストリームで受け取る必要がある場合に有用です。デフォルトは false です。REST API 経由で通話を作成する場合にのみサポートされます (dialFunction からは使用できません)。
レスポンス
201
通話が正常に作成されました
sidstring
エラー
400 Bad Request Error
不正なリクエスト
any
型定義
Target
typeenum- 指定可能な値:
phone,sip,user,teams numberstring発信先の電話番号 (type が phone の場合)sipUristring発信先の SIP URI (type が sip の場合)tenantstringMicrosoft Teams の顧客テナントドメイン名 (type が teams の場合)trunkstringこの通話の配信に使用するキャリアの名前 (type が phone の場合)vmailbooleanユーザーのボイスメールに直接発信してメッセージを残します (MS Teams のみ)overrideTostring指定した場合、発信 INVITE の To ヘッダーとして使用される SIP URI (ほとんどの場合は不要)namestring発信先となる登録済み Wipple CPaaS ユーザーの名前 (type が user の場合)authTargetAuthproxystring発信 INVITE に使用する SIP プロキシ
Webhook
urlstringwebhook_sidstringmethodenum- 指定可能な値:
get,post usernamestringpasswordstring
amd
actionHookstringAMD イベントの送信先 Webhook。thresholdWordCountdoubleamd_machine_detected の結果となる、挨拶内の発話単語数。digitCountdoubleamd_machine_detected の結果をトリガーする、挨拶内の数字の個数。0 で無効timersAmdTimers
TargetAuth
usernamestringチャレンジされた場合に SIP 認証で使用するユーザー名passwordstringチャレンジされた場合に SIP 認証で使用するパスワード
AmdTimers
decisionTimeoutMsdoubleamd_decision_timeout を返すまでに待機する時間 (ミリ秒)。greetingCompletionTimeoutMsdouble挨拶中に amd_machine_stopped_speaking を返すまでに待機する無音時間 (ミリ秒)。noSpeechTimeoutMsdoubleamd_no_speech_detected を返すまでに発話を待機する時間 (ミリ秒)。toneTimeoutMsdoubleトーンの検出を待機する時間 (ミリ秒)。
例
リクエスト
{
"from": "815099990001",
"to": {
"type": "phone",
"number": "+815099990003"
}
}
レスポンス
{
"sid": "2531329f-fb09-4ef7-887e-84e648214436"
}
cURL
curl -X POST "https://{API_ENDPOINT}/v1/Accounts/AccountSid/Calls" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"from": "815099990001",
"to": {
"type": "phone",
"number": "+815099990003"
}
}'
Python
import requests
url = "https://{API_ENDPOINT}/v1/Accounts/AccountSid/Calls"
payload = {
"from": "815099990001",
"to": {
"type": "phone",
"number": "+815099990003"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
JavaScript
const url = 'https://{API_ENDPOINT}/v1/Accounts/AccountSid/Calls';
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: '{"from":"815099990001","to":{"type":"phone","number":"+815099990003"}}'
};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}