private void OnReceiveInventoryMessage(object sender, EventArgs args)
        {
            CommMessage compressMessage = (CommMessage)((RealtimeDataEventArgument)args).Data;
            CommMessage message         = compressMessage.ExtractZipTypeMessage();

            int pos       = 0;
            int dictCount = SerializingHelper.DecodingInt32(message.Data, ref pos);

            for (int i = 0; i < dictCount; i++)
            {
                string viaKeys = SerializingHelper.DecodingString(message.Data, ref pos);

                if (viaKeys.Contains("ATD"))
                {
                    int count = SerializingHelper.DecodingInt32(message.Data, ref pos);
                    for (int j = 0; j < count; j++)
                    {
                        string custId = SerializingHelper.DecodingString(message.Data, ref pos);
                        int    sCount = SerializingHelper.DecodingInt32(message.Data, ref pos);

                        m_clientSessionDict.TryAdd(custId, new ConcurrentDictionary <string, byte[]>());

                        for (int k = 0; k < sCount; k++)
                        {
                            string sAccount = SerializingHelper.DecodingString(message.Data, ref pos);
                            byte[] data     = SerializingHelper.DecodingByteArray(message.Data, ref pos, 16); //session la 16 byte

                            m_clientSessionDict[custId].TryAdd(sAccount, data);
                        }
                    }
                }
            }
        }
 private void OnReceiveOrderMessage(object sender, EventArgs args)
 {
     //if (sender == m_authenClient)
     {
         CommMessage message = (CommMessage)((RealtimeDataEventArgument)args).Data;
         int         pos     = 1;
         switch ((OrderMessageCommand)message.Data[0])
         {
         case OrderMessageCommand.SESSIONID_UPDATE:
             string viaKeys        = SerializingHelper.DecodingString(message.Data, ref pos);
             string customerID     = SerializingHelper.DecodingString(message.Data, ref pos);
             string sessionAccount = SerializingHelper.DecodingString(message.Data, ref pos);
             byte[] sessionData    = SerializingHelper.DecodingByteArray(message.Data, ref pos, 16);
             if (viaKeys.Contains("ATD"))
             {
                 if (!m_clientSessionDict.ContainsKey(customerID))
                 {
                     m_clientSessionDict.TryAdd(customerID, new ConcurrentDictionary <string, byte[]>());
                 }
                 if (!m_clientSessionDict[customerID].ContainsKey(sessionAccount))
                 {
                     m_clientSessionDict[customerID].TryAdd(sessionAccount, sessionData);
                 }
             }
             break;
         }
     }
 }