public void JoinLobbyAsServer() { chosenRole = Role.Server; WaitSpinnerService.Enable(this); OnlineService.SetTargetRole(OnlineRole.Server); // connect as server _requestTimeoutRemaining = _specificDefinition.onlineRolePickTimeout; }
public virtual void SetOnlineUser(ForumApp forum) { List <OnlineUser> results = new List <OnlineUser>(); List <OnlineUser> onlineUsers = OnlineService.GetAll();// Online.Instance.OnlineUsers; int memberCount = 0; foreach (OnlineUser info in onlineUsers) { if (this.isInCurrentForum(info, forum)) { results.Add(info); if (info.UserId > 0) { memberCount++; } } } if (results.Count > forum.OnlinePeakCount) { forum.OnlinePeakCount = results.Count; forum.OnlinePeakTime = DateTime.Now; db.update(forum, new string[] { "OnlinePeakCount", "OnlinePeakTime" }); } forum.OnlineUser = results; forum.OnlineMemberCount = memberCount; }
public bool DoOperationFlash(ICoreObject target, out int errorCode, out int errorServiceID, IDiagFlashJob job) { bool flag = false; errorCode = 0; errorServiceID = 0; if (target != null) { IOnlineItemAccess onlineItemProxy = OnlineService.FindOnlineItemProxy(target); if (onlineItemProxy != null) { try { onlineItemProxy.DoOperation("Flash", job); flag = true; } catch (OnlineException ex) { errorCode = ex.ErrorCode; errorServiceID = ex.ErrorServiceID; } catch (NotSupportedException ex) { errorCode = 0; errorServiceID = 241; } } } return(flag); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } // リバースプロキシ対応 app.UseForwardedHeaders(new ForwardedHeadersOptions { ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto }); app.UseStaticFiles(); // CORSを有効にする app.UseCors(builder => builder .WithOrigins("http://localhost:8080", "http://127.0.0.1:8080", "https://sangoku.kmycode.net", "https://sangokukmy-legacy.netlify.com") .AllowAnyMethod() .AllowAnyHeader() .WithExposedHeaders("WWW-Authenticate")); // データベースの初期化 using (var context = new MainContext()) { context.Database.Migrate(); } // 更新処理を開始する MlService.Logger = _logger; GameUpdater.BeginUpdate(_logger); OnlineService.BeginWatch(_logger); app.UseMvc(); }
public List <User> GetRecentToMakeFriends(int userId, int count, List <int> friendIds) { List <OnlineUser> all = OnlineService.GetAll(); String ids = ""; int icount = 1; foreach (OnlineUser info in all) { if (icount > count) { break; } if (info.UserId > 0 && info.UserId != userId && friendIds.Contains(info.UserId) == false) { ids += info.UserId + ","; count++; } } ids = ids.TrimEnd(','); if (strUtil.IsNullOrEmpty(ids)) { return(new List <User>()); } return(db.find <User>("Id in (" + ids + ")").list()); }
IEnumerator WaitForOnlineServiceInit() { // wait for authenticating, // always wait 1 frame do { yield return(null); } while (!OnlineService.IsAuthenicated); OnSignIn?.Invoke(OnlineService); // authenticated, now load inventory OnlineService.Load(); // wait for load do { yield return(null); } while (!OnlineService.IsLoaded); // load data to inventory DataSystem.LoadInventory(CurrentPlayer.Inventory, OnlineService.LoadedData, out lastLoadedInventoryData); OnGameInit?.Invoke(this); }
public void CheckOnlineService() { var settings = new MockSettings(); var service = new OnlineService(); object result = null; var connection = new OnlineServiceConnection(settings, () => { throw new ConnectionTimedOut(); }); connection.Connected += () => connection.Send(new LoginRequest(LoadApiKeyFromRegistry(), "LogoApp")); connection.DataReceived += message => result = message; service.Connect("CurrentUser", connection); Thread.Sleep(500); Console.WriteLine("User Name: " + service.UserName); CheckService(service, "LogoApp", result); Assert.IsFalse(service.IsDeveloper); bool hasProjectChanged = false; service.ProjectChanged += () => hasProjectChanged = true; service.ChangeProject("Asteroids"); Thread.Sleep(500); Assert.IsTrue(hasProjectChanged); CheckService(service, "Asteroids", result); Assert.IsFalse(service.IsDeveloper); }
public async Task <Result> DeleteGroup(int id) { IsBusy = true; var res = await OnlineService.DeleteGroupAsync(id); IsBusy = false; return(res); }
private void ThreadProc_OperatorCardActivation() { try { Thread.Sleep(100); // wait for progres bar if (_kiosk.Testing) // สำหรับทดสอบสร้างหน้าต่างเท่านั้น { using (DB_Manager.CardAndCarManagement opm = new DB_Manager.CardAndCarManagement()) { Thread.Sleep(1000); string carTag = string.Empty; if (!opm.GetCarTag(_kiosk.rfidReader.LastID.Replace(" ", ""), out carTag)) { Helper.ShowNewPage(_kiosk, this, PageName.Warning_OptCarTagInfoNotFound); } else { _kiosk.CurrentCarTag = carTag; using (DB_Manager.BO23TestManagement tm = new DB_Manager.BO23TestManagement()) { _kiosk.CurrentOnlineDSBO23 = tm.GetBO23(_kiosk.CurrentCarTag); } Helper.ShowNewPage(_kiosk, this, PageName.OptBO23); } } } else { using (DB_Manager.CardAndCarManagement opm = new DB_Manager.CardAndCarManagement()) { string carTag = string.Empty; if (!opm.GetCarTag(_kiosk.rfidReader.LastID.Replace(" ", ""), out carTag)) { Helper.ShowNewPage(_kiosk, this, PageName.Warning_OptCarTagInfoNotFound); } else { _kiosk.CurrentCarTag = carTag; ServiceReference1.SearchModel result; if (OnlineService.SearchBO23(_kiosk.OrgCode, _kiosk.CurrentCarTag, out result)) { _kiosk.CurrentOnlineDSBO23 = result.ds; Helper.ShowNewPage(_kiosk, this, PageName.OptBO23); } else { Helper.ShowNewPage(_kiosk, this, PageName.Warning_OptCarTagInfoNotFound); } } } } } catch (Exception ex) { _kiosk.log.AppendText(ex.Message); System.Diagnostics.Debug.WriteLine(ex.Message); Helper.ShowNewPage(_kiosk, this, PageName.Error_Systematic); } }
static IEnumerator StartServer(QuickStartSettings settings) { LoadingScreenUIController.DisplayedStatus = "Waiting for online services..."; OnlineService.SetTargetRole(OnlineRole.Server); while (OnlineService.IsChangingRole || OnlineService.CurrentRole != OnlineRole.Server || OnlineService.ServerInterface == null) { yield return(null); } if (string.IsNullOrEmpty(settings.serverName)) { LoadingScreenUIController.DisplayedStatus = "Loading..."; GameStateManager.TransitionToState(Assets.lobbyServer); } else { // Create session int success = -1; // -1 -> waiting for result 0 -> failure 1 -> success LoadingScreenUIController.DisplayedStatus = "Creating session ..."; OnlineService.ServerInterface.CreateSession(settings.serverName, (bool r, string message) => { if (r) { success = 1; } else { success = 0; } }); // wait for creation result while (success == -1) { yield return(null); } if (success == 0) { string message = "Failed server quickstart. Could not create session [" + settings.serverName + "]."; DebugScreenMessage.DisplayMessage(message); Log.Error(message); GameStateManager.TransitionToState(Assets.rootMenu); } else { // success! LoadingScreenUIController.DisplayedStatus = "Loading ..."; GameStateManager.TransitionToState(Assets.inGameServer, new GameStateParamLevelName(settings.level)); } } }
public ICoreObject GetOnlineObject( ICoreObject offlineObject, bool initializeState, OnlineCreateMode mode) { ICoreObject ico = OnlineService.GetOnlineObject(offlineObject, initializeState, mode); return(ico); }
public async Task <Result> AddNewUser() { IsBusy = true; var user = new User { Name = "new user", Role = User.UserRole.Student, ID = 111 }; var res = await OnlineService.CreateUserAsync(user); IsBusy = false; return(res); }
public void SolutionFilePathCanBeLoadedFromSettings() { var settings = new FileSettings(); var service = new OnlineService(); var connection = new OnlineServiceConnection(settings, () => { throw new ConnectionTimedOut(); }); service.Connect("CurrentUser", connection); service.ChangeProject("DeltaEngine.Tutorials"); Thread.Sleep(1000); Assert.AreEqual(TutorialsSolutionFilePath, service.CurrentContentProjectSolutionFilePath); }
public async Task <Result> GetTrainings(int userId = -1) { IsBusy = true; if (userId == -1) { userId = UserViewModel.Instance.User.ID; } var res = await OnlineService.GetTrainingsAsync(userId); IsBusy = false; return(res); }
static IEnumerator StartLocal(QuickStartSettings settings) { LoadingScreenUIController.DisplayedStatus = "Loading..."; OnlineService.SetTargetRole(OnlineRole.None); while (OnlineService.IsChangingRole || OnlineService.CurrentRole != OnlineRole.None) { yield return(null); } GameStateManager.TransitionToState(Assets.inGameLocal, new GameStateParamLevelName(settings.level)); }
public void AbsoluteSolutionFilePathDependsOnTheSelectedContentProject() { var settings = new MockSettings(); var service = new OnlineService(); var connection = new OnlineServiceConnection(settings, () => { throw new ConnectionTimedOut(); }); service.Connect("CurrentUser", connection); Assert.AreEqual("", service.CurrentContentProjectSolutionFilePath); service.ChangeProject("LogoApp"); Thread.Sleep(1000); AssertSolutionFilePath(GetSamplesSlnPath(), service); service.ChangeProject("DeltaEngine.Tutorials"); Thread.Sleep(1000); AssertSolutionFilePath(GetTutorialsSlnPath(), service); }
public async Task <Result> AddNewGroup(string name) { if (string.IsNullOrWhiteSpace(name)) { return(new Result(false, StringService.Instance.Error, StringService.Instance.NameIsRequired)); } IsBusy = true; var group = new Group { Name = name, TeacherID = user.ID }; var res = await OnlineService.AddGroupAsync(group); IsBusy = false; return(res); }
public void AbsoluteSolutionFilePathDependsOnTheSelectedContentProject() { var settings = new MockSettings(); var service = new OnlineService(); var connection = new OnlineServiceConnection(settings, () => { throw new ConnectionTimedOut(); }); service.Connect("CurrentUser", connection); Assert.AreEqual("", service.CurrentContentProjectSolutionFilePath); service.ChangeProject("LogoApp"); Thread.Sleep(1000); AssertSolutionFilePath(GetSamplesSlnPath(), service); service.ChangeProject("DeltaEngine.Tutorials"); Thread.Sleep(1000); AssertSolutionFilePath(GetTutorialsSlnPath(), service); }
public void SolutionFilePathIsStoredInSettingsFileWithProjectName() { var settings = new FileSettings(); var service = new OnlineService(); var connection = new OnlineServiceConnection(settings, () => { throw new ConnectionTimedOut(); }); service.Connect("CurrentUser", connection); service.ChangeProject("DeltaEngine.Tutorials"); Thread.Sleep(1000); service.CurrentContentProjectSolutionFilePath = TutorialsSolutionFilePath; var projects = Settings.Current.GetValue("ContentProjects", new Dictionary <string, string>()); Assert.GreaterOrEqual(projects.Count, 1); settings.Save(); }
public async Task SetStatusAsync( [FromRoute] string status = null) { var s = status == "active" ? OnlineStatus.Active : status == "inactive" ? OnlineStatus.Inactive : OnlineStatus.Offline; if (s == OnlineStatus.Offline) { ErrorCode.InvalidParameterError.Throw(); } using (var repo = MainRepository.WithRead()) { var chara = await repo.Character.GetByIdAsync(this.AuthData.CharacterId).GetOrErrorAsync(ErrorCode.CharacterNotFoundError); await OnlineService.SetAsync(chara, s); } }
public async Task <Result> AddFeedback(string feedbackValue) { if (string.IsNullOrWhiteSpace(feedbackValue)) { return(new Result(false, StringService.Instance.Error, StringService.Instance.NameIsRequired)); } IsBusy = true; var feedback = new Feedback { Date = DateTime.Today, Description = feedbackValue, StudentID = currentStudent.ID }; var res = await OnlineService.AddFeedbackAsync(feedback); IsBusy = false; return(res); }
void ProcessPlayerDeath(GameScore score) { State = GameState.Menu; OnScoreSet?.Invoke(score, Inventory.PlayerStats.Score_Best); // add money CurrentPlayer.Inventory.Money += score.Money; OnlineService?.ReportProgress(GPGSIds.leaderboard_score, score.ActualScorePoints); OnlineService?.ReportProgress(GPGSIds.leaderboard_cash, score.Money); UpdateScoreAchievements(); // scale down time StartCoroutine(WaitForGameEnd()); OnPlayerDeath?.Invoke(CurrentPlayer); }
public void OnlineAll() { ctx.Page.Title = "所有在线用户"; DataPage <OnlineUser> users = DataPage <OnlineUser> .GetPage(OnlineService.GetAll(), 70); // 已排序 set("onlineCount", users.RecordCount); IBlock block = getBlock("onlines"); foreach (OnlineUser user in users.Results) { bindUserSingle(block, user); block.Next(); } set("page", users.PageBar); }
public void OnlineUser() { ctx.Page.Title = lang("onlineUsers"); DataPage <OnlineUser> users = DataPage <OnlineUser> .GetPage(OnlineService.GetLoggerUser(), 70); bindOnlineInfos(users.Results); int userCount = users.RecordCount; int totalCount = OnlineService.GetAll().Count; int guestCount = totalCount - userCount; set("userCount", userCount); set("totalCount", totalCount); set("guestCount", guestCount); set("allOnlinLink", to(OnlineAll)); set("page", users.PageBar); }
public void OnlineAll() { WebUtils.pageTitle(this, "所有在线用户"); //DataPage<OnlineUser> users = cdb.findPage<OnlineUser>( 70 ); // 此处未排序 DataPage <OnlineUser> users = DataPage <OnlineUser> .GetPage(OnlineService.GetAll(), 70); // 已排序 set("onlineCount", users.RecordCount); IBlock block = getBlock("onlines"); foreach (OnlineUser user in users.Results) { String lblValue = "【" + lang("ipAddress") + "】" + user.Ip + "\n【" + lang("osInfo") + "】" + user.Agent + "\n【" + lang("startTime") + "】" + user.StartTime.ToString() + "\n【" + lang("lastActive") + "】" + user.LastActive.ToString() + "\n【" + lang("clocation") + "】" + user.Location; if (user.UserId > 0) { block.Set("u.Name", user.UserName); block.Set("u.Face", user.UserPicUrl); block.Set("u.Link", user.UserUrl); } else { block.Set("u.Name", UserFactory.Guest.Name); block.Set("u.Face", UserFactory.Guest.PicSmall); block.Set("u.Link", "javascript:;"); } block.Set("u.Info", lblValue); block.Next(); } set("page", users.PageBar); }
private void ThreadProc_CarTagChecking() { try { Thread.Sleep(100); // wait for progres bar ServiceReference1.SearchModel result; if (OnlineService.SearchBO23(_kiosk.OrgCode, _kiosk.CurrentCarTag, out result)) { _kiosk.CurrentOnlineDSBO23 = result.ds; Helper.ShowNewPage(_kiosk, this, PageName.OptBO23); } else { if (_kiosk.Testing) // สำหรับทดสอบสร้างหน้าต่างเท่านั้น { using (DB_Manager.BO23TestManagement tm = new DB_Manager.BO23TestManagement()) { _kiosk.CurrentOnlineDSBO23 = tm.GetBO23(_kiosk.CurrentCarTag); } Helper.ShowNewPage(_kiosk, this, PageName.OptBO23); return; } else { Helper.ShowNewPage(_kiosk, this, PageName.Warning_OptCarTagInfoNotFound); } } } catch (Exception ex) { if (_kiosk.Testing) // สำหรับทดสอบสร้างหน้าต่างเท่านั้น { using (DB_Manager.BO23TestManagement tm = new DB_Manager.BO23TestManagement()) { _kiosk.CurrentOnlineDSBO23 = tm.GetBO23(_kiosk.CurrentCarTag); } Helper.ShowNewPage(_kiosk, this, PageName.OptBO23); return; } _kiosk.log.AppendText(ex.Message); System.Diagnostics.Debug.WriteLine(ex.Message); Helper.ShowNewPage(_kiosk, this, PageName.Error_Systematic); } }
public void CheckOnlineService() { var settings = new MockSettings(); var service = new OnlineService(); object result = null; var connection = new OnlineServiceConnection(settings, () => { throw new ConnectionTimedOut(); }); connection.Connected += () => connection.Send(new LoginRequest(LoadApiKeyFromRegistry(), "LogoApp")); connection.DataReceived += message => result = message; service.Connect("CurrentUser", connection); Thread.Sleep(500); Console.WriteLine("User Name: " + service.UserName); CheckService(service, "LogoApp", result); Assert.IsFalse(service.IsDeveloper); bool hasProjectChanged = false; service.ProjectChanged += () => hasProjectChanged = true; service.ChangeProject("Asteroids"); Thread.Sleep(500); Assert.IsTrue(hasProjectChanged); CheckService(service, "Asteroids", result); Assert.IsFalse(service.IsDeveloper); }
void InitSystems() { SettingsInitializer.Init(SettingsSystem, Settings, audioManager, audioSettingsHandler, timeController); InitPlayer(); // inventory is loaded, init shop system Shop.Init(Inventory); // all systems initialized, sign up to events SignToEvents(); // at last, init object and particle pools InitPools(); if (OnlineService != null) { OnlineService.Activate(); OnlineService.SignIn(); StartCoroutine(WaitForOnlineServiceInit()); } }
private void btnSave_Click(object sender, RoutedEventArgs e) { try { if (OnlineService.SearchCarTag(txtCarTag.Text)) { using (DB_Manager.CardAndCarManagement ccm = new DB_Manager.CardAndCarManagement()) { DataTable dt; dt = DB_Manager.CardAndCarManagement.FormatDataTable(); DataRow dr = dt.NewRow(); dt.Rows.Add(dr); dt.Rows[0]["RFIDCode"] = txtRFID.Text; dt.Rows[0]["CarTag"] = txtCarTag.Text; dt.Rows[0]["CarDescription"] = "-"; try { dt.Rows[0]["ExpiryDate"] = dpExpireDate.SelectedDate; } catch { } dt.Rows[0]["IsActive"] = "ACTIVE"; dt.Rows[0]["Comment"] = "-"; int resCode; string resDesc; ccm.Insert(dt.Rows[0], out resCode, out resDesc); } } else { _kiosk.log.AppendText("SearchCarTag:" + txtCarTag.Text + " false."); System.Diagnostics.Debug.WriteLine("SearchCarTag:" + txtCarTag.Text + " false."); } } catch (Exception ex) { _kiosk.log.AppendText(ex.Message); System.Diagnostics.Debug.WriteLine(ex.Message); } }
public void SolutionFilePathCanBeLoadedFromSettings() { var settings = new FileSettings(); var service = new OnlineService(); var connection = new OnlineServiceConnection(settings, () => { throw new ConnectionTimedOut(); }); service.Connect("CurrentUser", connection); service.ChangeProject("DeltaEngine.Tutorials"); Thread.Sleep(1000); Assert.AreEqual(TutorialsSolutionFilePath, service.CurrentContentProjectSolutionFilePath); }
private static void CheckService(OnlineService service, string projectName, object message) { Assert.AreEqual(projectName, service.ProjectName); Assert.AreNotEqual(ProjectPermissions.None, service.Permissions); Assert.IsInstanceOf<SetProject>(message); }
private static void CheckService(OnlineService service, string projectName, object message) { Assert.AreEqual(projectName, service.ProjectName); Assert.AreNotEqual(ProjectPermissions.None, service.Permissions); Assert.IsInstanceOf <SetProject>(message); }
public void SolutionFilePathIsStoredInSettingsFileWithProjectName() { var settings = new FileSettings(); var service = new OnlineService(); var connection = new OnlineServiceConnection(settings, () => { throw new ConnectionTimedOut(); }); service.Connect("CurrentUser", connection); service.ChangeProject("DeltaEngine.Tutorials"); Thread.Sleep(1000); service.CurrentContentProjectSolutionFilePath = TutorialsSolutionFilePath; var projects = Settings.Current.GetValue("ContentProjects", new Dictionary<string, string>()); Assert.GreaterOrEqual(projects.Count, 1); settings.Save(); }
private void Shop_OnAmmoBuy(AmmunitionType index, int price) { OnlineService?.ReportProgress(GPGSIds.achievement_first_purchase, 100); }
void UpdateScoreAchievements() { OnlineService?.ReportProgress(GPGSIds.achievement_ten_thoudsand, Inventory.PlayerStats.Combat_TotalShots); }