3

プロジェクトの 1 つで Twilio の Programmable Voice を使用しています。私の主な要件は、モバイル デバイス間に VoIP クラスを配置することです (PSTN 通話なし)。あるデバイスから別のデバイスに電話をかけることはできますが、着信画面で適切な発信者名を設定できません。

受信機に発信者名を表示する方法を教えてください。TVOCallInvite の「from」値には携帯電話番号「+18xxxxxxxx」が表示されますが、発信者の名前を表示する必要があります。. ダイヤルされたクライアント名と callerID (私のツイル番号) を含む TwiML PHP ファイルを作成しました。このファイルの URL を TwiML アプリのリクエスト URL ( https://www.twilio.com/console/voice/twiml/apps/myappid ) に割り当てました。

CallKit の「localizedCallerName」で発信者の名前を割り当てることができますが、発信者の ID ではなく電話番号を受け取っています。

詳細: チュートリアル: https://github.com/twilio/voice-quickstart-swift TwilioVoice -> 2.0.0 iOS バージョン: 10.1 デバイス: iPhone 7 & iPhone 5S

添付のスクリーンショットを見つけてください。

ここに画像の説明を入力

Google で検索しましたが、答えが見つからないことに注意してください。

ありがとう。

以下は私のvoice.phpファイルです

<?php

require __DIR__ . '/TwilioSdk/Twilio/autoload.php';
include('config.php');
use Twilio\Twiml;
$response = new Twiml;

if (isset($_REQUEST['To']) && strlen($_REQUEST['To']) > 0) 
{
  $number = htmlspecialchars($_REQUEST['To']);
  $dial = $response->dial(array('callerId' => $callerid)); // callerid is +18XXXXXXXXX
  if (preg_match("/^[\d\+\-\(\) ]+$/", $number)) 
  {
    $dial->number($number);
  } 
  else 
  {
    $dial->client($number);
  }
} 
else 
{
   $response->say("Thanks for calling!");
}
header('Content-Type: text/xml');
echo $response;

?>

通話ログ用の Twilio コンソール

ここに画像の説明を入力

4

1 に答える 1

0

Twilio 開発者エバンジェリストはこちら。

CallKit の iOS 通話画面に表示される名前を取得するにはcallerId、電話番号ではなく としてクライアント識別子を渡す必要があります。

クライアント識別子には接頭辞を付ける必要がありますclient:。したがって、上記のコードで重要な部分は、TwiML を生成することです。これは次のようになります。

$response->dial(array('callerId' => 'client:' . $clientName));

電話番号をダイヤルする場合は、番号を発信者 ID として使用する必要があります。別のクライアントにダイヤルする場合は、電話番号またはクライアント ID を使用できます。名前をアプリケーションに表示する場合は、上記のクライアント識別子をお勧めします。

于 2018-06-21T12:23:44.373 に答える