在twilio中发送短信时处理错误

时间:2018-12-03 05:39:43

标签: laravel twilio

我有一个订单表,用户在其中输入一些带有电话号码的详细信息。当用户确认订单时,我正在使用twilio可编程短信向该电话号码发送短信。短信发送工作正常。这是代码:

    $message = $twilio->messages
                      ->create($toNumber, [
                            'body' => 'My Message',
                            'from' => 'AlphaNumericNumber'
                        ]);

但是问题是,如果用户输入了无效数字,则会引发HTTP 400代码错误。如果用户输入了无效的号码,我想显示一个用户友好的Flash /错误消息以返回表单。谁能帮我这个?我在应用程序上使用laravel 5.5。

我遇到的错误:

Twilio \ Exceptions \ RestException (21211)
    [HTTP 400] Unable to create record: The 'To' number is not a valid phone number.

1 个答案:

答案 0 :(得分:2)

您可以将twilio调用包装在try..catch语句中,并在发生错误时重定向:

try {
    $message = $twilio->messages
                      ->create($toNumber, [
                          'body' => 'My Message',
                          'from' => 'AlphaNumericNumber'
                       ]);

} catch (\Exception $e) {
    // will return user to previous screen with twilio error
    return redirect()->back()->withError($e->getMessage());
}

如果遇到异常,则会将用户重定向到上一个屏幕,其中包含存储在Flash中的错误的详细信息。