public void HandleHeartbeatIndicator(Broker broker, IDecoder decoder, long sequence, IMessage msg)
        {
            if (Console != null)
            {
                long brokerBank = 1;
                long agentBank  = 0;
                try {
                    string routingKey = msg.DeliveryProperties.GetRoutingKey();
                    if (routingKey != null)
                    {
                        agentBank  = Agent.GetBrokerBank(routingKey);
                        brokerBank = Agent.GetBrokerBank(routingKey);
                    }
                }
                catch (Exception e) {
                    log.Warn("Internal QPID error", e);
                }

                string agentKey  = Agent.AgentKey(agentBank, brokerBank);
                long   timestamp = decoder.ReadUint64();
                if (broker.Agents.ContainsKey(agentKey))
                {
                    Agent agent = broker.Agents[agentKey];
                    Console.HearbeatRecieved(agent, timestamp);
                }
            }
        }