public static void StartSession(string mapName, string playerMap, SimulationManager.UpdateMode mode, SimulationMetaData ngs) { try { if (Mod.IsEnabled && Helper.HasTelemFlag(Mod.config.TelemetryLevel, Helper.TelemOption.DisableAll) || Helper.HasTelemFlag(Mod.config.TelemetryLevel, Helper.TelemOption.DisableStartSession)) { if (Mod.DEBUG_LOG_ON) { Helper.dbgLog("Start Session telemetry disabled."); } return; } TelemetryKH telemetry = new TelemetryKH(); telemetry.AddEvent("start_session", new Telemetry.Pair[] { new Telemetry.Pair("type", playerMap), new Telemetry.Pair("start_flag", mode.ToString()), new Telemetry.Pair("map_name", Path.GetFileName(mapName)) }); if (ngs != null) { telemetry.AddEvent("start_session", new Telemetry.Pair[] { new Telemetry.Pair("environment", ngs.m_environment), new Telemetry.Pair("invert_traffic", ngs.m_invertTraffic), new Telemetry.Pair("guid", ngs.m_gameInstanceIdentifier) }); } telemetry.Push(); } catch (Exception ex) { CODebugBase<LogChannel>.Warn(LogChannel.HTTP, ex.GetType() + ": Telemetry event failed " + ex.Message); } }