private void GetMailResult(ApiRequest.ApiResponse response, GetMailResultDelegate resultDelegate)
        {
            bool result = response.IsSuccess;
            string reason = "";
            List<CharacterMailMessage> messages = null;

            if (result)
            {
                try
                {
                    messages = response.ResponseObject["messages"].ToObject<List<CharacterMailMessage>>();
                }
                catch (Exception e)
                {
                    messages = null;
                    reason = e.Message;
                }
            }
            else
            {
                reason = response.StatusText;
            }

            if (resultDelegate != null)
                resultDelegate(messages, reason);
        }
        public void GetMailAsync(GetMailResultDelegate resultDelegate)
        {
            if (IsActive == false)
                return;

            ApiRequest apiReq = new ApiRequest(_settings.AuthorizationTokenId, _settings.AuthorizationToken)
            {
                RequestBody = "{}"
            };
            Task.Run(async () =>
            {
                ApiRequest.ApiResponse apiResp = await apiReq.StartRequestAsync("mail/get");
                GetMailResult(apiResp, resultDelegate);
            });
        }