public static string Subscriber(string queueName) { rabbitInfo = ConfigManager.ReadConfigValue(); if (m_model == null || m_model.IsClosed) { InitiateConnection(); } m_callback = TestCallBacmMethod; //Declaring exchange m_model.ExchangeDeclare("demoExchange", ExchangeType.Direct); //Declare queue m_model.QueueDeclare(queueName, true, false, false, null); //Bind queue to the exchange m_model.QueueBind(queueName, "demoExchange", "directexchange_key"); Console.WriteLine("Subscribing Queue : " + queueName + Environment.NewLine); //Register consumin event var consumer = new EventingBasicConsumer(m_model); consumer.Received += AmqpMsgPublishReceived; return(m_model.BasicConsume(queueName, true, consumer)); }
public static int Publisher(string queueName, string message) { rabbitInfo = ConfigManager.ReadConfigValue(); InitiateConnection(); m_model.BasicAcks += ReceiveDeliveryTagFromRabbitMq; m_model.ConfirmSelect(); var props = m_model.CreateBasicProperties(); props.Persistent = true; Console.WriteLine("Publishing message to the queue - " + queueName); m_model.BasicPublish(string.Empty, queueName, true, props, Encoding.Default.GetBytes(message)); return(m_deliveryTagReceived); }