@@ -36,29 +36,34 @@ func Example() {
3636 Narrow (z .Where (z .IsDirectMessage ())).
3737 Execute ()
3838
39- queueID := * registerResp .QueueID
39+ var queueID string
40+ if registerResp .QueueID != nil {
41+ queueID = * registerResp .QueueID
42+ }
4043 lastEventID := registerResp .LastEventID
4144
4245 // Create an event queue handler for processing events
43- queue := realtimeevents .NewEventQueue (client , nil )
46+ queue := realtimeevents .NewEventQueue (client )
4447
4548 // Connect to the event queue
4649 channel , _ := queue .Connect (ctx , queueID , lastEventID )
4750 defer queue .Close ()
4851
49- // Process events
50- for event := range channel {
51- // Check if this is a message event
52- msgEvent , ok := event .(events.MessageEvent )
53- if ! ok {
54- continue
55- }
52+ if channel != nil {
53+ // Process events
54+ for event := range channel {
55+ // Check if this is a message event
56+ msgEvent , ok := event .(events.MessageEvent )
57+ if ! ok {
58+ continue
59+ }
5660
57- // Echo the message back
58- _ , _ , _ = client .SendMessage (ctx ).
59- To (z .UserAsRecipient (msgEvent .Message .SenderID )).
60- Content (fmt .Sprintf ("Echo: %s" , msgEvent .Message .Content )).
61- Execute ()
61+ // Echo the message back
62+ _ , _ , _ = client .SendMessage (ctx ).
63+ To (z .UserAsRecipient (msgEvent .Message .SenderID )).
64+ Content (fmt .Sprintf ("Echo: %s" , msgEvent .Message .Content )).
65+ Execute ()
66+ }
6267 }
6368 // Output:
6469}
0 commit comments