Skip to content

Instantly share code, notes, and snippets.

@dipeshdulal
Created July 12, 2020 03:32
Show Gist options
  • Save dipeshdulal/65ab0df2d86a58cd119c5d3ee69046ab to your computer and use it in GitHub Desktop.
Save dipeshdulal/65ab0df2d86a58cd119c5d3ee69046ab to your computer and use it in GitHub Desktop.
SendMessage
func (s *chatServiceServer) SendMessage(msgStream chatpb.ChatService_SendMessageServer) error {
msg, err := msgStream.Recv()
if err == io.EOF {
return nil
}
if err != nil {
return err
}
ack := chatpb.MessageAck{Status: "SENT"}
msgStream.SendAndClose(&ack)
go func() {
streams := s.channel[msg.Channel.Name]
for _, msgChan := range streams {
msgChan <- msg
}
}()
return nil
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment