public async Task Send(NewBlockEvent blockEvent) { string jsonMsg = blockEvent.ToJson(SerializerSettings); var bytes = UTF8.GetBytes(jsonMsg); var message = new Message(bytes); message.MessageId = blockEvent.Hash.ToString(); message.ContentType = blockEvent.GetType().ToString(); await Client.SendAsync(message); }
public async Task Send(NewBlockEvent blockEvent) { string jsonMsg = blockEvent.ToJson(Networks.GetFromCryptoCode(blockEvent.CryptoCode).JsonSerializerSettings); var bytes = UTF8.GetBytes(jsonMsg); var message = new Message(bytes); message.MessageId = blockEvent.Hash.ToString(); message.ContentType = blockEvent.GetType().ToString(); message.UserProperties.Add("CryptoCode", blockEvent.CryptoCode); await Client.SendAsync(message); }
Task IBrokerClient.Send(NewBlockEvent blockEvent) { CheckAndOpenConnection(); string jsonMsg = blockEvent.ToJson(Networks.GetFromCryptoCode(blockEvent.CryptoCode).JsonSerializerSettings); var body = Encoding.UTF8.GetBytes(jsonMsg); var routingKey = $"blocks.{blockEvent.CryptoCode}"; IBasicProperties props = Channel.CreateBasicProperties(); props.MessageId = blockEvent.Hash.ToString(); props.ContentType = typeof(NewBlockEvent).ToString(); props.Headers = new Dictionary <string, object>(); props.Headers.Add("CryptoCode", blockEvent.CryptoCode); Channel.BasicPublish( exchange: NewBlockExchange, routingKey: routingKey, basicProperties: props, body: body); return(Task.CompletedTask); }