【问题标题】:How to manage sms and reply from webapp through twilio如何通过 twilio 从 webapp 管理短信和回复
【发布时间】:2016-09-30 23:19:34
【问题描述】:

我正在使用 laravel 5.1 和 twilio 创建一个消息传递 Web 应用程序,并且我正在使用 laravel-twilio 包。

已在 twilio 仪表板中完成设置和配置

  1. 在可编程 SMS 部分,我创建了一个带有 copilot 的消息服务,其中包括一个电话号码 ((xxx) xxx-xxx)。

  2. 给定一个入站请求 url。

我的 laravel 应用代码

我有简单的用户对用户消息传递,其中两个用户都在线,与 twilio 无关。但是假设一个用户离线,另一个用户在线,并且在线用户向离线用户发送聊天消息,那么我必须通过 twilo 向该用户的电话号码发送短信通知离线用户。

    public static function notifyOfflineUser($user,$reply_text){
            $message = "Mysite: ".$user->user_from->firstname.", '".strip_tags($reply_text)."' Reply via mysite ".url('general-message')." or SMS";
            if($user->profile->mobile) {
                try {
                    \Twilio::message($user->profile->mobile, $message);
                } catch (\Exception $e) {

                }
            }
        }

它正在从 twilio 电话号码向用户发送一条短信。

用户可以在哪里通过他/她的电话回复此消息到此号码。 如果回复成功,我必须将消息添加到在线用户的留言板。

//Inbound request url routed to this url with From number, body and other data.

    public function smsReply(Request $request){

        $user_id_to = Profile::where('mobile', $request->get('From'))->first(['user_id'])->user_id;
        $body = $request->get('Body');

        $user_id_from = Message::where('user_id_to', $user_id_to)->orderBy('id', 'desc')->first()->user_id_from;

        //dd($request->all());
        $message = new Message();
        $message->user_id_from                  = $user_id_to;
        $message->user_id_to                    = $user_id_from;
        $message->message                       = $body;
        $message->save();
        return response()->json(true);
    }

现在,如果多个在线用户向该离线用户发送聊天消息,离线用户将从同一个 twilio 号码收到多条短信,并且所有短信都在同一个堆栈中,这意味着如果他/她不会以不同的短信形式出现回复它将发送到相同号码的短信,所有在线用户都会在他们的留言板中添加相同的消息。

现在这是我的问题..

是否还有其他需要表单 twilio 之类的信息,例如多个号码、短代码、免费电话,或者我必须使用我的 laravel 代码来解决问题,以便我可以将每条短信作为不同的短信发送到离线用户的手机,这样我就可以将它们与入站请求网址?如果需要更多信息,请随时询问我。

【问题讨论】:

    标签: php laravel laravel-5.1 twilio twilio-php


    【解决方案1】:

    这里是 Twilio 开发者宣传员。

    为了能够处理这样的多个对话,您将需要多个数字。这样一来,一个数字就可以代表两个用户之间的关系,并且您可以知道用户的反应是什么。

    我建议您查看此tutorial on building SMS conversations using multiple numbers with Laravel 了解更多信息。

    【讨论】:

    • 我需要多少个号码?在离线时,100 个用户可以向他/她发送聊天消息,我需要 100 个或更多号码吗?
    • 您需要与用户之间的最大关系数一样多的数字。详情请查看这篇文章:twilio.com/help/faq/sms/…
    • 你不需要其中任何一个。您只需要足够的数字来覆盖用户可以进行的最大对话数。请注意,一旦与您完成对话,您就可以重新使用一个号码或释放它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-27
    • 1970-01-01
    • 1970-01-01
    • 2014-08-13
    相关资源
    最近更新 更多