从这里看一下:https://www.twilio.com/docs/voice/client/twiml 我能得到的最接近的是:
$response = new Twiml();
$callerIdNumber = config('services.twilio')['number'];
$dial = $response->dial(['callerId' => $callerIdNumber]);
$dial->parameter([
"name" => "firstname",
"value" => "Test Firstname",
]);
$dial->parameter([
"name" => "lastname",
"value" => "Test lastname",
]);
$dial->client('support_agent');
return $response;
但它会抛出无效的 XML 警告:
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Dial callerId="+12055461045">
<Parameter name="firstname" value="Test Firstname"/>
<Parameter name="lastname" value="Test lastname"/>
<Client>support_agent</Client>
</Dial>
</Response>
在文档中,它应该看起来像这样:
<Response>
<Dial>
<Client>
<Identity>joey</Identity>
<Parameter name="firstname" value="Test Firstname"/>
<Parameter name="lastname" value="Test lastname"/>
</Client>
</Dial>
</Response>
我尝试了很多方法,但它们都抛出应用程序错误。这是我尝试过的两个。我尝试过的其他东西我已经忘记了。
// trial 1
$dial->client->identity('support_agent')
$dial->client->parameter([
"name" => "firstname",
"value" => "Test Firstname",
]);
//trial 2
$dial->client->identity('support_agent', array('parameter' => [
"name" => "firstname",
"value" => "Test Firstname",
]))
任何帮助将不胜感激!
谢谢!
最佳答案
您可以引用下面的PHP代码示例来添加自定义参数,该代码已被我在本地系统上测试过。
require_once './vendor/autoload.php';
use Twilio\TwiML\VoiceResponse;
$response = new VoiceResponse();
$dial = $response->dial('');
$client = $dial->client();
$identity = $client->Identity('user-jane');
$client->parameter([
"name" => "firstname",
"value" => "Test Firstname",
]);
$client->parameter([
"name" => "lastname",
"value" => "Test lastname",
]);
echo $response;
Response is below
<Response>
<Dial>
<Client>
<Identity>user-jane</Identity>
<Parameter name="firstname" value="Test Firstname" />
<Parameter name="lastname" value="Test lastname" />
</Client>
</Dial>
关于php - 如何使用 PHP 在 Twilio 中传递自定义参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59098752/