Pārlūkot izejas kodu

Send client_pid to distinguish multiple clients

When a controlling process starts multiple clients that make multiple
subscriptions it may be desirable to identify from which client a
message is comming from. The topic id may not be sufficient.
Petr Gotthard 7 gadi atpakaļ
vecāks
revīzija
d4176461ff
1 mainītis faili ar 2 papildinājumiem un 1 dzēšanām
  1. 2 1
      src/emqx_client.erl

+ 2 - 1
src/emqx_client.erl

@@ -989,7 +989,8 @@ deliver(#mqtt_msg{qos = QoS, dup = Dup, retain = Retain, packet_id = PacketId,
                   topic = Topic, props = Props, payload = Payload},
         State = #state{owner = Owner}) ->
     Owner ! {publish, #{qos => QoS, dup => Dup, retain => Retain, packet_id => PacketId,
-                        topic => Topic, properties => Props, payload => Payload}},
+                        topic => Topic, properties => Props, payload => Payload,
+                        client_pid => self()}},
     State.
 
 packet_to_msg(#mqtt_packet{header   = #mqtt_packet_header{type   = ?PUBLISH,