code: protected static void sendPulseEvent(String name) {
      if (RaygunSettings.RUM_EVENT_SESSION_START.equals(name)) {
        RaygunClient.sessionId = UUID.randomUUID().toString();
      }
  
      RaygunPulseMessage message = new RaygunPulseMessage();
      RaygunPulseDataMessage pulseData = new RaygunPulseDataMessage();
  
      SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
      df.setTimeZone(TimeZone.getTimeZone("UTC"));
      Calendar c = Calendar.getInstance();
  
      if (RaygunSettings.RUM_EVENT_SESSION_END.equals(name)) {
        c.add(Calendar.SECOND, 2);
      }
  
      String timestamp = df.format(c.getTime());
      pulseData.setTimestamp(timestamp);
      pulseData.setVersion(RaygunClient.version);
      pulseData.setOS("Android");
      pulseData.setOSVersion(Build.VERSION.RELEASE);
      pulseData.setPlatform(String.format("%s %s", Build.MANUFACTURER, Build.MODEL));
  
      RaygunUserContext userContext;
  
      if (RaygunClient.userInfo == null) {
        userContext = new RaygunUserContext(new RaygunUserInfo(null, null, null, null, null, true), RaygunClient.context);
      } else {
        userContext = new RaygunUserContext(RaygunClient.userInfo, RaygunClient.context);
      }
  
      pulseData.setUser(userContext);
  
      pulseData.setSessionId(RaygunClient.sessionId);
      pulseData.setType(name);
  
      message.setEventData(new RaygunPulseDataMessage[]{ pulseData });
  
      enqueueWorkForRUMService(RaygunClient.apiKey, new Gson().toJson(message));
    }
docs: ---------------------------------------------------------------------------------------