private static void SendGazeData() { if (string.IsNullOrEmpty(Core.TrackingSceneId)) { Util.logDebug("Cognitive GazeCore.SendData could not find scene settings for scene! do not upload gaze to sceneexplorer"); return; } gazebuilder.Append("],"); gazeCount = 0; //header JsonUtil.SetString("userid", Core.UniqueID, gazebuilder); gazebuilder.Append(","); if (!string.IsNullOrEmpty(CognitiveVR_Preferences.LobbyId)) { JsonUtil.SetString("lobbyId", CognitiveVR_Preferences.LobbyId, gazebuilder); gazebuilder.Append(","); } JsonUtil.SetDouble("timestamp", (int)Core.SessionTimeStamp, gazebuilder); gazebuilder.Append(","); JsonUtil.SetString("sessionid", Core.SessionID, gazebuilder); gazebuilder.Append(","); JsonUtil.SetInt("part", jsonPart, gazebuilder); jsonPart++; gazebuilder.Append(","); JsonUtil.SetString("hmdtype", HMDName, gazebuilder); gazebuilder.Append(","); JsonUtil.SetFloat("interval", CognitiveVR.CognitiveVR_Preferences.Instance.SnapshotInterval, gazebuilder); gazebuilder.Append(","); JsonUtil.SetString("formatversion", "1.0", gazebuilder); if (Core.GetNewSessionProperties(false).Count > 0) { gazebuilder.Append(","); gazebuilder.Append("\"properties\":{"); foreach (var kvp in Core.GetNewSessionProperties(true)) { if (kvp.Value.GetType() == typeof(string)) { JsonUtil.SetString(kvp.Key, (string)kvp.Value, gazebuilder); } else { JsonUtil.SetObject(kvp.Key, kvp.Value, gazebuilder); } gazebuilder.Append(","); } gazebuilder.Remove(gazebuilder.Length - 1, 1); //remove comma gazebuilder.Append("}"); } gazebuilder.Append("}"); var sceneSettings = Core.TrackingScene; string url = Constants.POSTGAZEDATA(sceneSettings.SceneId, sceneSettings.VersionNumber); CognitiveVR.NetworkManager.Post(url, gazebuilder.ToString()); //gazebuilder = new StringBuilder(70 * CognitiveVR_Preferences.Instance.GazeSnapshotCount + 200); gazebuilder.Length = 9; //gazebuilder.Append("{\"data\":["); }