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

问题描述 投票:1回答:1

我有2个使用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();
php laravel twilio-api twilio-php
1个回答
0
投票

Twillio documentation建议您可以使用statusCallback字段提供回调URL。

如果指定,我们会将这些消息状态更改发布到URL:已排队,失败,已发送,已传递或未传递。您可以为其配置路由,然后发送第二条消息。

或者,您可以查看Twillio拥有的message feedback系统。

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

我不确定应使用上述哪种方法,这取决于您。

© www.soinside.com 2019 - 2024. All rights reserved.