private RaygunPulseMessage BuildPulseMessage(RaygunPulseSessionEventType type)
        {
            var msg  = new RaygunPulseMessage();
            var data = new RaygunPulseDataMessage();

            data.Timestamp = DateTime.UtcNow;
            data.Version   = GetVersion();
            data.OS        = "Android";
            data.OSVersion = Android.OS.Build.VERSION.Release;
            data.Platform  = string.Format("{0} {1}", Android.OS.Build.Manufacturer, Android.OS.Build.Model);
            data.User      = UserInfo;

            msg.EventData = new[] { data };
            switch (type)
            {
            case RaygunPulseSessionEventType.SessionStart:
                data.Type = "session_start";
                break;

            case RaygunPulseSessionEventType.SessionEnd:
                data.Type = "session_end";
                break;
            }
            data.SessionId = _sessionId;

            return(msg);
        }
        private RaygunPulseMessage BuildPulseMessage(RaygunPulseSessionEventType type)
        {
            var msg  = new RaygunPulseMessage();
            var data = new RaygunPulseDataMessage();

            data.Timestamp = DateTime.UtcNow;
            data.Version   = GetVersion();
            data.OS        = UIDevice.CurrentDevice.SystemName;
            data.OSVersion = UIDevice.CurrentDevice.SystemVersion;
            data.Platform  = Mindscape.Raygun4Net.Builders.RaygunEnvironmentMessageBuilder.GetStringSysCtl("hw.machine");
            data.User      = UserInfo;

            msg.EventData = new[] { data };

            switch (type)
            {
            case RaygunPulseSessionEventType.SessionStart:
                data.Type = "session_start";
                break;

            case RaygunPulseSessionEventType.SessionEnd:
                data.Type = "session_end";
                break;
            }

            data.SessionId = _sessionId;

            return(msg);
        }
Exemple #3
0
        private void SendPulseSessionEventCore(RaygunPulseSessionEventType type)
        {
            RaygunPulseMessage     message = new RaygunPulseMessage();
            RaygunPulseDataMessage data    = new RaygunPulseDataMessage();

            data.Timestamp = DateTime.UtcNow;
            data.Version   = GetVersion();

            data.OS        = "Android";
            data.OSVersion = Android.OS.Build.VERSION.Release;
            data.Platform  = string.Format("{0} {1}", Android.OS.Build.Manufacturer, Android.OS.Build.Model);

            data.User         = UserInfo ?? (!String.IsNullOrEmpty(User) ? new RaygunIdentifierMessage(User) : BuildRaygunIdentifierMessage(null));
            message.EventData = new[] { data };
            switch (type)
            {
            case RaygunPulseSessionEventType.SessionStart:
                data.Type = "session_start";
                break;

            case RaygunPulseSessionEventType.SessionEnd:
                data.Type = "session_end";
                break;
            }
            data.SessionId = _sessionId;
            Send(message);
        }
Exemple #4
0
 /// <summary>
 /// Sends a Pulse session event to Raygun. The message is sent on a background thread.
 /// </summary>
 /// <param name="eventType">The type of session event that occurred.</param>
 internal void SendPulseSessionEvent(RaygunPulseSessionEventType type)
 {
     if (type == RaygunPulseSessionEventType.SessionStart)
     {
         _sessionId = Guid.NewGuid().ToString();
     }
     ThreadPool.QueueUserWorkItem(c => SendPulseSessionEventCore(type));
 }
Exemple #5
0
 internal void SendPulseSessionEventNow(RaygunPulseSessionEventType type)
 {
     if (type == RaygunPulseSessionEventType.SessionStart)
     {
         _sessionId = Guid.NewGuid().ToString();
     }
     SendPulseSessionEventCore(type);
 }
        /// <summary>
        /// Sends a Pulse session event to Raygun. The message is sent on a background thread.
        /// </summary>
        /// <param name="eventType">The type of session event that occurred.</param>
        internal void SendPulseSessionEvent(RaygunPulseSessionEventType type)
        {
            if (type == RaygunPulseSessionEventType.SessionStart)
            {
                _sessionId = GenerateNewSessionId();
            }

            var message = BuildPulseMessage(type);

            ThreadPool.QueueUserWorkItem(c => Send(message));

            if (type == RaygunPulseSessionEventType.SessionEnd)
            {
                _sessionId = null;
            }
        }
        internal void SendPulseSessionEventNow(RaygunPulseSessionEventType type)
        {
            if (type == RaygunPulseSessionEventType.SessionStart)
            {
                _sessionId = GenerateNewSessionId();
            }

            var message = BuildPulseMessage(type);

            Send(message);

            if (type == RaygunPulseSessionEventType.SessionEnd)
            {
                _sessionId = null;
            }
        }
Exemple #8
0
        private void SendPulseSessionEventCore(RaygunPulseSessionEventType eventType)
        {
            RaygunPulseMessage     message = new RaygunPulseMessage();
            RaygunPulseDataMessage data    = new RaygunPulseDataMessage();

            data.Timestamp = DateTime.UtcNow;
            data.Version   = GetVersion();

            data.OS        = UIDevice.CurrentDevice.SystemName;
            data.OSVersion = UIDevice.CurrentDevice.SystemVersion;
            data.Platform  = Mindscape.Raygun4Net.Builders.RaygunEnvironmentMessageBuilder.GetStringSysCtl("hw.machine");

            string machineName = null;

            try
            {
                machineName = UIDevice.CurrentDevice.Name;
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine("Exception getting device name {0}", e.Message);
            }
            data.User         = BuildRaygunIdentifierMessage(machineName);
            message.EventData = new [] { data };
            switch (eventType)
            {
            case RaygunPulseSessionEventType.SessionStart:
                data.Type = "session_start";
                break;

            case RaygunPulseSessionEventType.SessionEnd:
                data.Type = "session_end";
                break;
            }
            data.SessionId = _sessionId;
            Send(message);
        }
        private void SendPulseSessionEventCore(RaygunPulseSessionEventType eventType)
        {
            RaygunPulseMessage message = new RaygunPulseMessage();
              RaygunPulseDataMessage data = new RaygunPulseDataMessage();
              data.Timestamp = DateTime.UtcNow;
              data.Version = GetVersion();

              data.OS = UIDevice.CurrentDevice.SystemName;
              data.OSVersion = UIDevice.CurrentDevice.SystemVersion;
              data.Platform = Mindscape.Raygun4Net.Builders.RaygunEnvironmentMessageBuilder.GetStringSysCtl("hw.machine");

              string machineName = null;
              try
              {
            machineName = UIDevice.CurrentDevice.Name;
              }
              catch (Exception e)
              {
            System.Diagnostics.Debug.WriteLine("Exception getting device name {0}", e.Message);
              }
              data.User = BuildRaygunIdentifierMessage(machineName);
              message.EventData = new [] { data };
              switch(eventType) {
              case RaygunPulseSessionEventType.SessionStart:
            data.Type = "session_start";
            break;
              case RaygunPulseSessionEventType.SessionEnd:
            data.Type = "session_end";
            break;
              }
              data.SessionId = _sessionId;
              Send(message);
        }
 internal void SendPulseSessionEventNow(RaygunPulseSessionEventType eventType)
 {
     if (eventType == RaygunPulseSessionEventType.SessionStart)
       {
     _sessionId = Guid.NewGuid().ToString();
       }
       SendPulseSessionEventCore(eventType);
 }
 /// <summary>
 /// Sends a Pulse session event to Raygun. The message is sent on a background thread.
 /// </summary>
 /// <param name="eventType">The type of session event that occurred.</param>
 internal void SendPulseSessionEvent(RaygunPulseSessionEventType eventType)
 {
     if (eventType == RaygunPulseSessionEventType.SessionStart)
       {
     _sessionId = Guid.NewGuid().ToString();
       }
       ThreadPool.QueueUserWorkItem(c => SendPulseSessionEventCore(eventType));
 }
        private void SendPulseSessionEventCore(RaygunPulseSessionEventType type)
        {
            RaygunPulseMessage message = new RaygunPulseMessage();
              RaygunPulseDataMessage data = new RaygunPulseDataMessage();
              data.Timestamp = DateTime.UtcNow;
              data.Version = GetVersion();

              data.OS = "Android";
              data.OSVersion = Android.OS.Build.VERSION.Release;
              data.Platform = string.Format("{0} {1}", Android.OS.Build.Manufacturer, Android.OS.Build.Model);

              data.User = UserInfo ?? (!String.IsNullOrEmpty(User) ? new RaygunIdentifierMessage(User) : BuildRaygunIdentifierMessage(null));
              message.EventData = new[] { data };
              switch (type)
              {
            case RaygunPulseSessionEventType.SessionStart:
              data.Type = "session_start";
              break;
            case RaygunPulseSessionEventType.SessionEnd:
              data.Type = "session_end";
              break;
              }
              data.SessionId = _sessionId;
              Send(message);
        }