如何在 Azure 上的 PHP 應用程式中使用 Twilio 撥打電話

下列範例將說明如何從 Azure 代管的 PHP 網頁上使用 Twilio 撥打電話。 產生的應用程式會提示使用者提供電話值,如下列螢幕擷取畫面所示。

Azure Call Form Using Twilio and PHP

您必須執行下列動作才能使用本主題中的程式碼:

  1. 從您的 Twilio 主控台取得 Twilio 帳戶和驗證權杖。 若要開始使用 Twilio,請在 http://www.twilio.com/pricing 上評估價格。 您可以在 https://www.twilio.com/try-twilio 上註冊試用帳戶。
  2. 取得 適用於 PHP 的 Twilio 程式庫 ,或以 PEAR 封裝的形式進行安裝。 如需詳細資訊,請參閱 讀我檔案
  3. 安裝 Azure SDK for PHP。

建立用以撥打電話的 Web 表單

下列 HTML 程式碼將說明如何建置網頁 (callform.html),以擷取撥打電話所需的使用者資料:

<!DOCTYPE html>
<html>
<head>
  <title>Automated call form</title>
</head>
<body>
  <h1>Automated Call Form</h1>
  <p>Fill in all fields and click <b>Make this call</b>.</p>
  <form action="makecall.php" method="post">
    <table>
      <tr>
        <td>To:</td>
        <td><input name="callTo" size="50" type="text" value=""></td>
      </tr>
      <tr>
        <td>From:</td>
        <td><input name="callFrom" size="50" type="text" value=""></td>
      </tr>
      <tr>
        <td>Call message:</td>
        <td><input name="callText" size="100" type="text" value="Hello. This is the call text. Good bye."></td>
      </tr>
      <tr>
        <td colspan="2"><input type="submit" value="Make this call"></td>
      </tr>
    </table>
  </form><br>
</body>
</html>

建立用以撥打電話的程式碼

下列程式碼將說明如何建置會在使用者提交 callform.html 所顯示的表單時受到呼叫的 makecall.php。 下方顯示的程式碼會建立通話訊息及產生通話。 同時,請務必使用來自 Twilio 主控台的 Twilio 帳戶和驗證權杖,而不是下方程式碼中指派給 $sid$token 的預留位置值。

<html>
<head><title>Making call...</title></head>
<body>
<p>Your call is being made.</p>

<?php
require_once 'path/to/vendor/autoload.php';

$sid   = "your_account_sid";
$token = "your_authentication_token";

$from_number = $_POST['callFrom']; // Calls must be made from a registered Twilio number.
$to_number   = $_POST['callTo'];
$message     = $_POST['callText'];

$client = new Twilio\Rest\Client($sid, $token);

$call = $client->calls->create(
            $to_number,
            $from_number,
            array('url' => http://twimlets.com/message?Message=' . urlencode($message))
        );

echo "Call status: " . $call->status . "<br />";
echo "URI resource: " . $call->uri . "<br />";
?>
</body>
</html>

除了撥打電話以外,makecall.php 也會顯示某些通話中繼資料,如以下影像中所示。 如需通話中繼資料的詳細資訊,請參閱 https://www.twilio.com/docs/api/rest/call#instance-properties

Azure Call Response Using Twilio and PHP

執行應用程式

下一個步驟是將應用程式部署至 Azure Web Apps 與 Git (其中的資訊並非全部與之相關)。

後續步驟

此程式可說明在 Azure 上的 PHP 中使用 Twilio 的基本功能。 在部署至生產環境中的 Azure 之前,您可以新增更多錯誤處理或其他功能。 例如:

如需 Twilio 的其他資訊,請參閱 https://www.twilio.com/docs

另請參閱