public void LogEvent <TEventData>(RDataEvent <TEventData> evt, bool immediately = false)
            where TEventData : class, new()
        {
            if (!CheckAuthorized("log event " + evt.Name))
            {
                return;
            }

            var request = new Requests.Events.LogEventRequest <TEventData>(evt);

            CoroutineManager.StartCoroutine(Send <Requests.Events.LogEventRequest <TEventData>, BooleanResponse>(request, immediately));
        }
 public LogEventRequest(RDataEvent <TEventData> evt) : base()
 {
     Params = new Parameters()
     {
         Id               = evt.Id,
         Name             = evt.Name,
         ContextId        = evt.ContextId,
         Time             = Tools.Time.DateTimeToUnixTimeMilliseconds(evt.Time),
         Data             = evt.Data,
         EventDataVersion = evt.EventDataVersion
     };
 }