Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在成功执行另一个函数后运行该函数_Php_Laravel_Twilio Api_Twilio Php - Fatal编程技术网

Php 如何在成功执行另一个函数后运行该函数

Php 如何在成功执行另一个函数后运行该函数,php,laravel,twilio-api,twilio-php,Php,Laravel,Twilio Api,Twilio Php,我有两个功能,分别使用Twilio发送媒体文件和文本消息。大多数时候,我想先发照片,然后发短信。但是,当我调用这两个函数时,文本消息在照片之前发送。如何确保照片在文本之前先发送 //sends photo public static function sendMediaMessage($phone, $mediaUrl, $msg = null){ try{ $client = new Client(env('TWILIO_SID'), env('

我有两个功能,分别使用Twilio发送媒体文件和文本消息。大多数时候,我想先发照片,然后发短信。但是,当我调用这两个函数时,文本消息在照片之前发送。如何确保照片在文本之前先发送

//sends photo
   public static function sendMediaMessage($phone, $mediaUrl, $msg = null){
        try{

            $client = new Client(env('TWILIO_SID'), env('TWILIO_TOKEN'));
            $send = $client->messages->create(
                "whatsapp:".$phone,
                array(
                    'from' => "whatsapp:".env('TWILIO_NUMBER'), 
                    'body' => $msg,
                    'mediaUrl' => [$mediaUrl],

                )
            );

        }catch (\Exception $exception){

        }
    }

//send text messages
public static function sendWhatsAppMessage($phone, $message){

        try{

            $client = new Client(env('TWILIO_SID'), env('TWILIO_TOKEN'));
            $send = $client->messages->create(
                "whatsapp:".$phone, // Text this number
                array(
                    'from' => "whatsapp:".env('TWILIO_NUMBER'), 
                    'body' => $message
                )
            );

        }catch (\Exception $exception){

        }

    }
打电话

myClass::sendMediaMessage();
myClass::sendWhatsAppMessage();
Twillio建议您可以使用
statusCallback
字段提供回调url

如果指定,我们将这些消息状态更改发布到URL:排队、失败、已发送、已传递或未传递

您可以为其配置路由,然后发送第二条消息

或者,您可以查看Twillio现有的系统

要跟踪邮件反馈,必须在首次创建邮件时将ProvideFeedback设置为true。这将创建一个结果为未确认的消息反馈实例


我不确定上面哪一个应该被使用,这取决于你

但是,我不能确定,我想这将超出您的控制范围,因为Twilio可能会对不同类型的消息使用不同的队列。同样,以本文为例,这也可能取决于承运人。