2017-12-27 1307 views
0

我有两个角色,医生,患者和...Laravel 5广播事件到通配符通道使用节点和Laravel ECHO-服务器

当病人没有动作A,我希望有一个广播出去一医生列表,而不是所有的医生,但他们的名单..

在我的测试中,我能够通过订阅与节点的redis到通道前缀医生和连字符然后用户ID ...

redis.subscribe('Doctor-1', function(err, count) { 
}); 

但是,对于生产,我不能硬编码该ID,我需要的是某些兴象下面

redis.subscribe('Doctor-*', function(err, count) { 
}); 

但通配符似乎不工作...

如何,我可以订阅一个通配符任何想法?

回答

2

Redis.io, PubSub Documentation

Wikipedia, Glob Programming

Redis的发布/订阅实现支持模式匹配。客户端 可以订阅全局样式以接收发送到与给定模式匹配的频道名称的所有消息。

例如:

PSUBSCRIBE news.* 

所以,你的片断可以改变为

redis.subscribe('Doctor.*', function(err, count) {}); 

所以将深入

收到任何针对医生与ID Doctor.1以上

Doctors.<groupId>.<DoctorId>等上。