protected virtual void OnMessageReceived(string data)
        {
            JObject body = JObject.Parse(data);

            if (body["msg"] == null)
            {
                return;
            }
            string msg = body["msg"].ToObject <string>();

            DdpMessage?.Invoke(this, new DdpMessage(msg, data));
        }
        private void OnMessageAdv(object sender, MessageEventArgs e)
        {
            JObject body = JObject.Parse(e.Data);

            if (body["msg"] == null)
            {
                return;
            }
            string msg = body["msg"].ToObject <string>();

            DdpMessage?.Invoke(this, new DdpMessage(msg, e.Data));
        }