public Task Start() { return(_subscriber.StartAsync(async(msg, cancellationToken) => { string json = msg.Data.ToStringUtf8(); DeprecatedEvent evt = JsonConvert.DeserializeObject <DeprecatedEvent>(json); return await this._handler.Handle(_factory, evt); })); }
async Task <SubscriberClient.Reply> IReceiveMessageHandler.Handle(ISendMessageFactory factory, DeprecatedEvent evt) { string spaceId = evt.Space.Name; string threadId = evt.Message.Thread.Name; Message hangoutMessage = new Message { Thread = new Thread { Name = threadId }, Text = $"echo> {evt.Message.ArgumentText}" }; HttpResponseMessage res = await factory.SendMessage(hangoutMessage, spaceId); string contents = await res.Content.ReadAsStringAsync(); HttpStatusCode statusCode = res.StatusCode; Console.WriteLine($"response: {statusCode}, {contents}"); return(SubscriberClient.Reply.Ack); }