猿问

使用 Twilio 发送短信后获取短信费用

我正在做一个项目,在某些事件下它会发送一条 SMS 消息。


我的计划是在发送 SMS 时,我会保留记录,以便在需要时进行调试,并记录我的服务发生的情况。我计划记录的一件事是传递消息的成本。从 Twilio 文档看来,这是可能的,除非我发送消息时,我得到的响应是 status ,queued而 price 是null。


然后我查看了使用 Twilio webhook 回调,以便我收到有关 SMS 交付状态的更新,这也可以正常工作,但我没有得到价格,我只收到以下信息:


(

    [SmsSid] => redacted

    [SmsStatus] => delivered

    [MessageStatus] => delivered

    [To] => redacted

    [MessageSid] => redacted

    [AccountSid] => redacted

    [From] => redacted

    [ApiVersion] => 2010-04-01

)

以下是我发送短信的方式,供参考


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

            $message = $twilio->messages->create("redacted", array(

                "body" => $smsContent,

                "from" => "redacted",

                "statusCallback" => $callback

            ));

如何从 Twilio 获取 SMS 交付的价格?


MM们
浏览 220回答 1
1回答

慕神8447489

我想出了一个方法,但它似乎有点低效,因为我必须向 Twilio 发送另一个请求以获取 SMS 的完整状态,但这就是我所做的。我通过 webhook 收到一个 Twilio 请求,然后我使用SmsId发布的消息获取消息,如下所示:$smssid = $_POST["SmsSid"];$twilio = new \Twilio\Rest\Client($sid, $token);$message = $twilio->messages($smssid)->fetch();$twilioResponse = new TwilioResponse($message);仅供参考TwilioResponse是我自己的类,它在构造函数中传递了 $message,然后我使用它来构建和解析我自己的版本以满足我的需要。
随时随地看视频慕课网APP
我要回答