pusher 创建新应用_php-使用pusher将所有消息保存在我的服务器上

我正在开发一个聊天室,该聊天室目前可用于连续服务器请求,并且浪费资源.

因此,我想利用pusher平台提供的服务.问题是我需要将客户端交换的每条消息保存在数据库中.就我所知,pusher仅将服务器端用于通道的认证和向客户端的消息转发,而客户端之间的通信不会通过我的服务器.

我可能已经在this thread中找到了我的问题的答案(月光回复)

除了我不知道如何实现类似的东西…有些帮助?

解决方法:

您可以通过以下两种方式之一触发聊天消息事件:

>客户->您的服务器->推送器HTTP API->所有客户

>客户-> Pusher WebSocket API->所有客户

在方案1中,消息通过您自己的服务器发送,因此您可以轻松地将它们存储在数据库中.

在方案2中,您可以设置client event WebHooks.使用这些消息路由为:

客户-> Pusher WebSocket API->所有客户Web挂钩->您的服务器

然后,当客户端事件消息通过WebHook到达时,您可以将它们存储在数据库中.

如何设置Pusher WebHook

您可以在信息中心内为Pusher App设置WebHook.

只需为应用选择WebHooks设置.

使用您自己的应用程序上的端点作为URL,创建一个新的“客户端事件” WebHook:

WebHook将被创建,因此只要为此应用触发客户端事件,端点就会被点击.

消费Pusher WebHook

对您定义的URL的POST请求的格式为:

{

"name": "client_event",

"channel": "name of the channel the event was published on",

"event": "name of the event",

"data": "data associated with the event",

"socket_id": "socket_id of the sending socket",

"user_id": "user_id associated with the sending socket" # Only for presence channels

}

因此,您需要解析请求的主体并获取所需的信息.

请确保阅读WebHook docs并遵守安全准则.

标签:laravel,chat,real-time,pusher,php

来源: https://codeday.me/bug/20191120/2045155.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值