尝试使用实时数据库通信时未收到通知

Posted

技术标签:

【中文标题】尝试使用实时数据库通信时未收到通知【英文标题】:Not getting a notification when trying to use real-time database communications 【发布时间】:2015-12-20 09:15:23 【问题描述】:

我正在尝试使用网络套接字向我的应用程序添加新通知。我正在使用 Backand 作为我的服务器,并且似乎无法掌握对新事件的响应。这是我发送事件的服务器端代码:

//Action: Update - After data saved and committed 
function backandCallback(userInput, dbRow, parameters, userProfile)   
   //Send to array of users   
   socket.emitUsers("new_notification",userInput, ["admins"]);
  return ; 
 

我的客户端代码来接收它:

//Wait for server updates on 'items' object 
Backand.on('new_notification', function (data)    
  //Get the 'items' object that have changed   
  console.log(data);
);

但是当我尝试在我的应用代码中接收事件时,我从未看到“new_notification”类型的通知。谁能告诉我这是怎么回事?

【问题讨论】:

【参考方案1】:

确保您使用的是 emitRole 而不是 emitUsers。上面的代码发送到用户数组,但看起来您想向“管理员”角色发送通知。把它改成 emitRole() 就可以了。

【讨论】:

我怎样才能把它设置给用户呢? 哦,现在我明白了。谢谢,太完美了。【参考方案2】:

对于您希望保持区分大小写的角色,它将是: socket.emitRole("items_updated",userInput, "Admin");

对于用户来说,语法是: socket.emitUsers("items_updated",userInput, ["user2@gmail.com","user1@gmail.com"]);

【讨论】:

以上是关于尝试使用实时数据库通信时未收到通知的主要内容,如果未能解决你的问题,请参考以下文章

向存储的实时数据库发送推送通知

我想在工作日收到实时通知

使用 php 和 jquery 实时通知

通过单击应用程序图标直接启动应用程序时未收到推送通知数据

基于swoole+Redis的消息实时推送通知

ios上的实时推送通知教程