From c50b1f29d4744b85fba2e87cfcabb74529735b5f Mon Sep 17 00:00:00 2001 From: John Brooks Date: Wed, 5 Oct 2016 14:38:41 -0700 Subject: [PATCH] cli: Monitor for conversation events also --- cli/client.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/cli/client.go b/cli/client.go index 736fcab..e473b0f 100644 --- a/cli/client.go +++ b/cli/client.go @@ -44,6 +44,7 @@ func (c *Client) Initialize() error { // Spawn routines to query and monitor state changes go c.monitorNetwork() go c.monitorContacts() + go c.monitorConversations() // XXX block until populated/initialized? return nil @@ -177,3 +178,25 @@ func (c *Client) monitorContacts() { } } } + +func (c *Client) monitorConversations() { + stream, err := c.Backend.MonitorConversations(context.Background(), &ricochet.MonitorConversationsRequest{}) + if err != nil { + log.Printf("Initializing conversations monitor failed: %v", err) + // XXX handle + return + } + + log.Printf("Monitoring conversations") + + for { + event, err := stream.Recv() + if err != nil { + log.Printf("Conversations monitor error: %v", err) + // XXX handle + break + } + + log.Printf("Conversation event: %v", event) + } +}