func (r *RedisClient) Receive() { for { mes, err := r.pubsub.ReceiveMessage() if err != nil { logrus.Errorf("Failed to receive message, error=%+v", err) continue } data, err := base64.StdEncoding.DecodeString(mes.Payload) if err != nil { logrus.Errorf("Failed to receive message, error=%+v", err) continue } req := apipb.EmitRequest{} err = req.Unmarshal(data) if err != nil { logrus.Errorf("Failed to Unmarshal byte data") continue } h.broadcast <- &req } }