Пример #1
0
    void HandleConnected(AmqpClient clientParam)
    {
        exchangeSubscription = new AmqpExchangeSubscription(responseExchange, responExchangeType, responseRoutingKey, HandleExchangeMassageRecieved);
        AmqpClient.Subscribe(exchangeSubscription);

        serverTerhubung = true;
    }
    // subscribe to rabbitmq exchange if connection is successful
    void HandleConnected(AmqpClient clientParam)
    {
        // subscribe to exchange for listening response's purpose
        exchangeSubscription = new AmqpExchangeSubscription(responseExchangeName, responseExchangeType, responseRoutingKey, HandleExchangeMessageReceived);
        AmqpClient.Subscribe(exchangeSubscription);

        serverConnected = true;
    }
    void handleIncomingMessageChairs(AmqpExchangeSubscription subscription, IAmqpReceivedMessage message)
    {
        SensorData data   = JsonUtility.FromJson <SensorData>(ByteArrayToString(message.Body));
        int        row    = int.Parse(data.position.Split('-')[0]);
        int        number = int.Parse(data.position.Split('-')[1]);

        occupancie[row - 1, number - 1] = data.occupancie;
    }
Пример #4
0
        public void OnMessageReceived(AmqpExchangeSubscription subscription, IAmqpReceivedMessage message)
        {
            var origMsgText = Encoding.UTF8.GetString(message.Body);
            var origMsg     = JsToCSharpMessage.ConvertToObject(origMsgText);

            var origMsgEscaped = origMsgText.Replace("\\", "\\\\").Replace("\"", "\\\"");

            OnMessageReceived("{\"type\":\"" + origMsg.type + "\",\"body\":\"" + origMsgEscaped + "\"}");
        }
Пример #5
0
        /// <summary>
        /// A default message received handler useful for debugging.
        /// </summary>
        /// <param name="subscription">The subscription the message was received on.</param>
        /// <param name="message">The message that was received.</param>
        public void UnityEventDebugExhangeMessageHandler(AmqpExchangeSubscription subscription, IAmqpReceivedMessage message)
        {
            // Decode as text
            var payload = System.Text.Encoding.UTF8.GetString(message.Body);

            AmqpConsole.Color = new Color(1f, 0.5f, 0);
            AmqpClient.Log("Message received on {0}: {1}", subscription.ExchangeName + (!string.IsNullOrEmpty(message.RoutingKey) ? ":" + message.RoutingKey : ""), payload);
            AmqpConsole.Color = null;

            MessageListController.AddMessage(subscription, message);
        }
    void handleIncomingMessage(AmqpExchangeSubscription subscription, IAmqpReceivedMessage message)
    {
        SensorData data = JsonUtility.FromJson <SensorData>(ByteArrayToString(message.Body));

        if (data.type == "add")
        {
            AddSensor(data.family, data.id, data.value);
        }
        else
        {
            Sensor sensor = sensors[data.id];
            sensorValues[sensor.sensorFamily][sensor.sensorSlot] = data.value;
        }
    }
Пример #7
0
        private static void Client_Connected(object sender, EventArgs e)
        {
            Console.WriteLine("Client connected!");

            if (command == "rx")
            {
                Console.WriteLine("Entering receive mode...");

                if (string.IsNullOrEmpty(queueName))
                {
                    // Subscribe to supplied exchange to listen for messages
                    rxExSub = new AmqpExchangeSubscription(exchangeName, exchangeType, routingKey, OnAmqpExchangeMessageReceived);
                    var ex = client.Subscribe(rxExSub);

                    if (ex == null)
                    {
                        Console.WriteLine("Listening for messages on exchange: {0}", exchangeName);
                    }
                    else
                    {
                        Console.WriteLine("Error listening for messages");
                    }
                }
                else
                {
                    rxQueueSub = new AmqpQueueSubscription(queueName, false, OnAmqpQueueMessageReceived);
                    client.Subscribe(rxQueueSub);
                    Console.WriteLine("Listening for messages on queue: {0}", queueName);
                }
            }
            else if (command == "tx")
            {
                Console.WriteLine("Entering send mode...");

                for (var i = 1; i <= count; i++)
                {
                    var payload = i.ToString();
                    Console.WriteLine("[tx] {0} {1}:{2} => {3}", DateTime.Now, exchangeName, routingKey, payload);
                    client.Publish(exchangeName, routingKey, payload);
                    System.Threading.Thread.Sleep(1000); // one per second
                }

                // Disconnect
                client.Disconnect();
            }
        }
 // Handles exchange unsubscribes
 void HandleExchangeUnsubscribed(AmqpExchangeSubscription subscription)
 {
     // Add it to the local list
     exSubscriptions.Remove(subscription);
 }
Пример #9
0
 // Handles exchange subscribes
 void HandleExchangeSubscribed(AmqpExchangeSubscription subscription)
 {
     // Add it to the local list
     //exSubscriptions.Add(subscription);
 }
Пример #10
0
 public void HandleMessageFromExchange(AmqpExchangeSubscription subscription, IAmqpReceivedMessage message)
 {
     Debug.Log("HANDLE MESSAGE FROM Exchange: " + message);
 }
Пример #11
0
    // Start is called before the first frame update
    void Start()
    {
        var subscription = new AmqpExchangeSubscription(ExchangeName, ExchangeType, RoutingKey, HandleMessageReceived);

        AmqpClient.Subscribe(subscription);
    }