在不修改硬件设备端的情况下,如何让订阅者收到消息时,知道是哪个客户端发送的消息

在物联网中台中,一个系统会连接很多种设备,不同设备解析topic和消息体方法是不同的,在硬件设备端不允许做额外操作的情况下,作为订阅者我如何知道这个消息是哪个设备端发出的,从而调用对应的解析方法解析topic和消息体。
初步设想是使用插件方式在emqv5.0以上的新增的userproperty做文章把clientid写进去可行吗,对erlang代码第一次接触

已搞定,还是吃了没文化的亏,第一次接触erlang,开发环境 语法 编译把自己搞死