Liu Song’s Projects


~/Projects/mqtt-go

git clone https://code.lsong.org/mqtt-go

Commit

Commit
130ffcbb53388387b97ee96949bb93c12abc9442
Author
mochi <[email protected]>
Date
2022-01-24 17:42:04 +0000 +0000
Diffstat
 server/events/events.go | 7 ++++++-

Add OnDisconnect Event Hook


diff --git a/server/events/events.go b/server/events/events.go
index 26eb646f6b1fef5b61d73ba5f3f6388a7b6f4dac..d39794d8310ee490570ecace2bccd1beb4a3a4df 100644
--- a/server/events/events.go
+++ b/server/events/events.go
@@ -6,9 +6,9 @@ 	"github.com/mochi-co/mqtt/server/internal/packets"
 )
 
 type Events struct {
-	OnMessage // published message receieved.
 	OnMessage    // published message receieved.
 	OnConnect    // client connected.
+	OnDisconnect // client disconnected.
 }
 
 type Packet packets.Packet
@@ -39,3 +39,8 @@ type OnMessage func(Client, Packet) (Packet, error)
 
 // OnConnect is called when a client successfully connects to the broker.
 type OnConnect func(Client, Packet)
+
+// OnDisconnect is called when a client disconnects to the broker. An error value
+// is passed to the function if the client disconnected abnormally, otherwise it
+// will be nil on a normal disconnect.
+type OnDisconnect func(Client, error)