EMQX插件开发,多个设备订阅一个topic的情况下,如何往固定的clientId上推送消息,其他设备不收到消息

需求:1、多个设备订阅一个topic上了,现在想要让设备独立订阅自己的topic已经不现实了
2、插件调用内部函数直接推送消息到clientId对应的设备上,其他设备不能收到消息

这个是啥插件?哪个版本的,我怎么感觉你描述的需求很难实现啊

按照官网插件开发文档写的,我用erlang开放了18088端口,提供了一个api地址,监听到这个地址请求的时候,转到这里面来处理,按照api入参的clientId获取到通道后,直接用内部函数推送playload,这是我的思路。
开源版v5.8.6。
我看到文档publish接口里面有clientId的参数但是已经被弃用了。。。

你误解那个(废弃)clientID了 那个只是构造Messages.表明它是从哪个clientID发出来的,不是发往哪里去
所以你上面的也不对。

你第一个publish,是代表要发消息出去,它会经过路由表,把所有匹配topic的都发一遍。并不是你要的效果。

你第二个handleout 一般都在在client进程中调用,不是你这样用的,得看看他具体报什么错