static void Main(string[] args) { Tracer.Trace = new NLogAdapter(); var brokerUri = "failover:(amqp://127.0.0.1:5672,amqp://127.0.0.1:5673)" + "?failover.initialReconnectDelay=1000" + "&failover.reconnectDelay=1000" + "&failover.maxReconnectAttempts=10"; var connectionFactory = new NmsConnectionFactory(brokerUri); var simpleMessageListenerContainer = new SimpleMessageListenerContainer { ConnectionFactory = connectionFactory, DestinationName = DestinationName, MessageListener = new MessageListener() }; // start listener simpleMessageListenerContainer.AfterPropertiesSet(); var cachingConnectionFactory = new CachingConnectionFactory(connectionFactory); var nmsTemplate = new NmsTemplate(cachingConnectionFactory) { DefaultDestinationName = DestinationName, }; while (true) { Logger.Info("Enter your message."); var text = Console.ReadLine(); nmsTemplate.SendWithDelegate(session => session.CreateTextMessage(text)); } }
/// <summary> /// Sends message to update the job status. /// </summary> /// <param name="ticketId">The ticket identifier.</param> /// <param name="jobStatus">The job status.</param> public void UpdateJobStatus(string ticketId, TicketStatus jobStatus) { NmsTemplate.SendWithDelegate(JobInfoDestination, delegate(ISession session) { var msg = session.CreateMessage(); msg.Properties.SetString(MessageKeys.TicketMessageKey, ticketId); msg.Properties.SetInt(MessageKeys.JobStatusMessageKey, (int)jobStatus); return(msg); }); }
public void Publish(string ticker, double price) { NmsTemplate.SendWithDelegate("APP.STOCK.MARKETDATA", delegate(ISession session) { IMapMessage message = session.CreateMapMessage(); message.Body.SetString("TICKER", ticker); message.Body.SetDouble("PRICE", price); message.NMSPriority = MsgPriority.Normal; return(message); }); }
/// <summary> /// Sends message to record the GameShare replay video. /// </summary> /// <param name="ticketId">The ticket identifier.</param> /// <param name="casino">The casino name.</param> /// <param name="gameTitle">The game title.</param> /// <param name="gamePlayedAt">The game played-at time (milliseconds since epoch)</param> /// <param name="videoBytes">game share video as a byte array</param> public void UploadVideo(string ticketId, string casino, string gameTitle, long gamePlayedAt, byte[] videoBytes) { NmsTemplate.SendWithDelegate(VideoUploadDestination, delegate(ISession session) { var msg = session.CreateBytesMessage(); msg.Properties.SetString(MessageKeys.TicketMessageKey, ticketId); msg.Properties.SetString(MessageKeys.CasinoNameMessageKey, casino); msg.Properties.SetString(MessageKeys.GameTitleMessageKey, gameTitle); msg.Properties.SetLong(MessageKeys.GamePlayTimeMessageKey, gamePlayedAt); msg.WriteBytes(videoBytes); return(msg); }); }