public object Get(Sessions request) { using (var db = _connectionFactory.Open()) { var sessions = db.Select<Session>().Where(x => x.JournalId == request.JournalId); return sessions; } }
protected override void OnMessage(MessageEventArgs e) { Sessions.Broadcast(String.Format("{0}: {1}", _name, e.Data)); }
private void OnRobberyRequest([FromSource] Player source, string location) { var playerSession = Sessions.GetPlayer(source); if (playerSession == null || playerSession.GetServerData("Character.CanDoRobbery", false)) { return; } var robberyModel = GetRobberyModel(location); var copsOnDuty = Server.Get <JobHandler>().GetPlayersOnJob(JobType.Police); Log.Verbose($"{source.Name} is requesting to rob {location} vault"); if (!robberyModel.IsBeingRobbed && robberyModel.IsRobbable && copsOnDuty.Count >= robberyModel.RequiredPolice) { playerSession.SetServerData("Character.CanDoRobbery", true); robberyModel.IsBeingRobbed = true; source.TriggerEvent("Robbery.StartRobbery", true); StartGlobalCooldown(robberyModel); var nameSplit = robberyModel.LocationName.AddSpacesToCamelCase().Split(' ').ToList(); nameSplit.Remove(nameSplit.Last()); Server.Instances.Jobs.SendJobAlert(JobType.Police | JobType.EMS, "[Dispatch]", $"Silent Alarm | {string.Join(" ", nameSplit)} general store vault", ConstantColours.Dispatch); Task.Factory.StartNew(async() => { playerSession.SetServerData("Character.CanDoRobbery", true); await BaseScript.Delay(1200000); playerSession.SetServerData("Character.CanDoRobbery", false); }); Task.Factory.StartNew(async() => { var vaultLocation = source.Character.Position; while (robberyModel.IsBeingRobbed) { await BaseScript.Delay(60000); var playerNearLocaiton = false; var currentPlayers = Sessions.PlayerList; foreach (var player in currentPlayers) { if (playerNearLocaiton) { continue; } if (player.GetPlayerPosition().DistanceToSquared(vaultLocation) <= 20.0f) { playerNearLocaiton = true; } } if (!playerNearLocaiton) { Log.Verbose($"No player was found near the vault {robberyModel.LocationName} setting IsBeingRobbed to false"); robberyModel.IsBeingRobbed = false; return; } } }); } else { source.TriggerEvent("Robbery.StartRobbery", false); Log.ToClient("[Robbery]", "This vault is unable to be robbed at this time", ConstantColours.Blue, source); } }
/// <summary> /// Creates and adds a few ItemViewModel objects into the Items collection. /// </summary> public async Task LoadData() { var manager = new ConferenceManager(); //bool networkAvailable = false;// App.NetworkMonitor.IsAvailable(); int nextVersion = -1; if (NetworkInterface.GetIsNetworkAvailable()) { nextVersion = await manager.GetLatestVersion(); if (nextVersion != -1 && (App.CurrentSessionVersion < nextVersion && App.DefaultSessionVersion < nextVersion)) { var newData = await manager.GetLatestData(); var res = await manager.GetData(newData, true); if (res && manager.GetSessions().Any() && manager.GetSpeakers().Any()) { App.CurrentSessionData = newData; AppStorageHelper.SaveCurrentSessionData(App.CurrentSessionData); AppStorageHelper.SaveCurrentVersionNumber(nextVersion.ToString()); Insights.Track("New Session Data", new Dictionary <string, string> { { "New Version", nextVersion.ToString() }, { "Old Version", App.CurrentSessionVersion.ToString() }, { "Sessions Count", manager.GetSessions().Count.ToString() }, { "Speakers Count", manager.GetSpeakers().Count.ToString() } }); App.CurrentSessionVersion = nextVersion; } } } //nextVersion = -1; if (String.IsNullOrEmpty(App.CurrentSessionData)) { var sessionData = Utils.ReadFile(Wac2015.Helpers.Settings.StaticData); App.CurrentSessionData = sessionData; var res = await manager.GetData(sessionData, true); } else { await manager.GetData(App.CurrentSessionData, true); } //var res = await manager.GetData(Settings.ConferenceDataUri); //Service.GetData(); Sessions = manager.GetSessions(); Speakers = manager.GetSpeakers(); Speakers = Speakers.OrderBy(s => s.Name).ToObservableCollection(); if (!String.IsNullOrEmpty(App.SessionId)) { App.CurrentSession = (from s in Sessions where s.Id.ToLower().Equals(App.SessionId.ToLower()) select s).FirstOrDefault(); } if (!String.IsNullOrEmpty(App.SpeakerId)) { App.CurrentSpeaker = (from s in Speakers where s.Id.ToLower().Equals(App.SpeakerId.ToLower()) select s).FirstOrDefault(); } if (App.SavedSessionIds == null) { App.SavedSessionIds = new List <string>(); } else if (App.SavedSessionIds != null && App.SavedSessionIds.Count > 0) { App.SavedSessions = new ObservableCollection <Session>(); foreach (var sessionId in App.SavedSessionIds) { string id = sessionId; var session = Sessions.FirstOrDefault(s => s.Id == id); if (session != null) { App.SavedSessions.Add(session); } } } //if (Service.SessionsAreNotOnlineYet) // DiscoveredThatSessionsAreNotOnlineYet = true; //needs to get it from iso if available... App.Sessions = Sessions; App.Speakers = Speakers; if (App.SavedSessions == null) { App.SavedSessions = new ObservableCollection <Session>(); } //SavedSessions = App.SavedSessions; Sessions = Sessions.OrderBy(s => s.Begins).ToObservableCollection(); SavedSessions = (from s in Sessions join sid in App.SavedSessionIds on s.Id equals sid select s).ToObservableCollection(); var date = "2015-03-18T09:30:00.0000000+05:30"; var dt = DateTime.Parse(date); DayOneSessions = (from s in Sessions where s.Begins.Date == dt.Date select s).ToObservableCollection(); DayOneCollection = SessionKeyGroup <Session> .CreateDateGroups(DayOneSessions, CultureInfo.CurrentCulture, (Session s) => s.Begins, true); dt = dt.AddDays(1); DayTwoSessions = (from s in Sessions where s.Begins.Date == dt.Date select s).ToObservableCollection(); DayTwoCollection = SessionKeyGroup <Session> .CreateDateGroups(DayTwoSessions, CultureInfo.CurrentCulture, (Session s) => s.Begins, true); TimeBasedCollection = SessionKeyGroup <Session> .CreateDateGroups(Sessions, CultureInfo.CurrentCulture, (Session s) => s.Begins, true); TrackBasedCollection = SessionKeyGroup <Session> .CreateTrackGroups(Sessions, CultureInfo.CurrentCulture, (Session s) => s.TrackName, false); TimeBasedMyAgendaCollection = SessionKeyGroup <Session> .CreateDateGroups(SavedSessions, CultureInfo.CurrentCulture, (Session s) => s.Begins, true); this.IsDataLoaded = true; //await LoadTwitterFeeds(); //if (result != null) // TwitterFeeds = result; await Task.Factory.StartNew(async() => { await LoadNews(); }); }
private void BroadcastMessage(string message) => Task.Factory.StartNew(() => Sessions.Broadcast(message));
public void Broadcast(string s) { Sessions.Broadcast(s); }
/// <summary> /// 咨询商品 /// </summary> public ActionResult ConsultProduct() { //不允许游客访问 if (WorkContext.Uid < 1) { return(AjaxResult("nologin", "请先登录")); } //验证验证码 if (CommonHelper.IsInArray(WorkContext.PageKey, WorkContext.MallConfig.VerifyPages)) { string verifyCode = WebHelper.GetFormString("verifyCode");//验证码 if (string.IsNullOrWhiteSpace(verifyCode)) { return(AjaxResult("emptyverifycode", "验证码不能为空"));; } else if (verifyCode.ToLower() != Sessions.GetValueString(WorkContext.Sid, "verifyCode")) { return(AjaxResult("wrongverifycode", "验证码错误"));; } } int pid = WebHelper.GetFormInt("pid"); int consultTypeId = WebHelper.GetFormInt("consultTypeId"); string consultMessage = WebHelper.GetFormString("consultMessage"); PartProductInfo partProductInfo = Products.GetPartProductById(pid); if (partProductInfo == null) { return(AjaxResult("noproduct", "请选择商品")); } StoreInfo storeInfo = Stores.GetStoreById(partProductInfo.StoreId); if (storeInfo.State != (int)StoreState.Open) { return(AjaxResult("noproduct", "请选择商品")); } if (consultTypeId < 1 || ProductConsults.GetProductConsultTypeById(consultTypeId) == null) { return(AjaxResult("noproductconsulttype", "请选择咨询类型")); } ; if (string.IsNullOrWhiteSpace(consultMessage)) { return(AjaxResult("noconsultmessage", "请填写咨询内容")); } ; if (consultMessage.Length > 100) { return(AjaxResult("muchconsultmessage", "咨询内容内容太长")); } ; if (!SecureHelper.IsSafeSqlString(consultMessage)) { return(AjaxResult("dangerconsultmessage", "咨询内中包含非法字符")); } ; ProductConsults.ConsultProduct(pid, consultTypeId, WorkContext.Uid, partProductInfo.StoreId, DateTime.Now, WebHelper.HtmlEncode(consultMessage), WorkContext.NickName, partProductInfo.Name, partProductInfo.ShowImg, WorkContext.IP); return(AjaxResult("success", Url.Action("product", new RouteValueDictionary { { "pid", pid } })));; }
public static void AddSession(RemoteDesktopSessionInfo session) { Sessions.Add(session); }
public static void RemoveSession(RemoteDesktopSessionInfo session) { Sessions.Remove(session); }
public override string ToString() { return("ID = " + Id + " ,Name = " + Name + " " + Sessions.Select(c => c.ToString())); }
protected override void OnMessage(MessageEventArgs e) { Status test = ConvertTos.ConvertToStatus(4); string msg = e.Data; Packet messageJSON = JsonConvert.DeserializeObject <Packet>(e.Data); int test2 = ConvertTos.ConvertToInt(messageJSON.GetStatus); // Sessions.Broadcast(messageJSON.Message); //int type = switch (messageJSON.GetStatus) { case Status.loginValidate: { //An authentication rquest is request Authentication(messageJSON); break; } case Status.messageSend: { //Send message to a specific client SendMessage(messageJSON); break; } case Status.contactListRequest: { SendContactList(messageJSON); break; } case Status.connectionSuccess: //Authentication(messageJSON); MessageBox.Show("Incorrect =("); break; case Status.requestChatRoom: { //Makes a new Chatroom for the user ValidateOnline(messageJSON); break; } case Status.loginTrue: { MessageBox.Show("This is correct. =)"); break; } case Status.onlineValidate: { break; } case Status.addContact: { AddContact(messageJSON); break; } case Status.removeContactRequest: { RemoveContact(messageJSON); break; } case Status.logout: { LogoutSession(messageJSON); break; } case Status.addContactChatRequest: { AddUserToChatRoom(messageJSON); break; } default: //Unknown request Packet s = new Packet(Status.undefined); Sessions.SendTo(JsonConvert.SerializeObject(s), messageJSON.GetID); break; } }
protected override void OnMessage(MessageEventArgs e) { Sessions.Broadcast(e.Data + _suffix); }
protected override void Initialize(RequestContext requestContext) { base.Initialize(requestContext); this.ValidateRequest = false; WorkContext.IsHttpAjax = WebHelper.IsAjax(); WorkContext.IP = WebHelper.GetIP(); WorkContext.RegionInfo = Regions.GetRegionByIP(WorkContext.IP); WorkContext.RegionId = WorkContext.RegionInfo.RegionId; WorkContext.Url = WebHelper.GetUrl(); WorkContext.UrlReferrer = WebHelper.GetUrlReferrer(); //获得用户唯一标示符sid WorkContext.Sid = ShopUtils.GetSidCookie(); if (WorkContext.Sid.Length == 0) { //生成sid WorkContext.Sid = Sessions.GenerateSid(); //将sid保存到cookie中 ShopUtils.SetSidCookie(WorkContext.Sid); } PartUserInfo partUserInfo; //获得用户id int uid = ShopUtils.GetUidCookie(); if (uid < 1)//当用户为游客时 { //创建游客 partUserInfo = Users.CreatePartGuest(); } else//当用户为会员时 { //获得保存在cookie中的密码 string encryptPwd = ShopUtils.GetCookiePassword(); //防止用户密码被篡改为危险字符 if (encryptPwd.Length == 0 || !SecureHelper.IsBase64String(encryptPwd)) { //创建游客 partUserInfo = Users.CreatePartGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } else { partUserInfo = Users.GetPartUserByUidAndPwd(uid, ShopUtils.DecryptCookiePassword(encryptPwd)); if (partUserInfo != null) { //发放登录积分 Credits.SendLoginCredits(ref partUserInfo, DateTime.Now); } else//当会员的账号或密码不正确时,将用户置为游客 { partUserInfo = Users.CreatePartGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } } WorkContext.EncryptPwd = encryptPwd; } //设置用户等级 if (UserRanks.IsBanUserRank(partUserInfo.UserRid) && partUserInfo.LiftBanTime <= DateTime.Now) { UserRankInfo userRankInfo = UserRanks.GetUserRankByCredits(partUserInfo.PayCredits); Users.UpdateUserRankByUid(partUserInfo.Uid, userRankInfo.UserRid); partUserInfo.UserRid = userRankInfo.UserRid; } //当用户被禁止访问时重置用户为游客 if (partUserInfo.UserRid == 1) { partUserInfo = Users.CreatePartGuest(); WorkContext.EncryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } WorkContext.PartUserInfo = partUserInfo; WorkContext.Uid = partUserInfo.Uid; WorkContext.UserName = partUserInfo.UserName; WorkContext.UserEmail = partUserInfo.Email; WorkContext.UserMobile = partUserInfo.Mobile; WorkContext.Password = partUserInfo.Password; WorkContext.NickName = partUserInfo.NickName; WorkContext.Avatar = partUserInfo.Avatar; WorkContext.PayCreditName = Credits.PayCreditName; WorkContext.PayCreditCount = partUserInfo.PayCredits; WorkContext.RankCreditName = Credits.RankCreditName; WorkContext.RankCreditCount = partUserInfo.RankCredits; WorkContext.UserRid = partUserInfo.UserRid; WorkContext.UserRankInfo = UserRanks.GetUserRankById(partUserInfo.UserRid); WorkContext.UserRTitle = WorkContext.UserRankInfo.Title; //设置用户管理员组 WorkContext.AdminGid = partUserInfo.AdminGid; WorkContext.AdminGroupInfo = AdminGroups.GetAdminGroupById(partUserInfo.AdminGid); WorkContext.AdminGTitle = WorkContext.AdminGroupInfo.Title; //设置当前控制器类名 WorkContext.Controller = RouteData.Values["controller"].ToString().ToLower(); //设置当前动作方法名 WorkContext.Action = RouteData.Values["action"].ToString().ToLower(); WorkContext.PageKey = string.Format("/{0}/{1}", WorkContext.Controller, WorkContext.Action); //当前商城主题 WorkContext.Theme = WorkContext.ShopConfig.MobileTheme; //设置图片cdn WorkContext.ImageCDN = WorkContext.ShopConfig.ImageCDN; //设置csscdn WorkContext.CSSCDN = WorkContext.ShopConfig.CSSCDN; //设置脚本cdn WorkContext.ScriptCDN = WorkContext.ShopConfig.ScriptCDN; //在线总人数 WorkContext.OnlineUserCount = OnlineUsers.GetOnlineUserCount(); //在线游客数 WorkContext.OnlineGuestCount = OnlineUsers.GetOnlineGuestCount(); //在线会员数 WorkContext.OnlineMemberCount = WorkContext.OnlineUserCount - WorkContext.OnlineGuestCount; //搜索词 WorkContext.SearchWord = string.Empty; //购物车中商品数量 WorkContext.CartProductCount = Carts.GetCartProductCountCookie(); }
public static void RegisterSession(string SessionName, Type ISession, Type Session) { Sessions.Add(ISession, Session); SessionsByName.Add(SessionName, Session); }
public static string Start(string etlPath, IEnumerable<ProviderInfo> providerInfo, int bufferSizeMB = 64) { EnsureUnloadHandlerRegistered(); var userSessionName = "xunit.performance.logger." + Guid.NewGuid().ToString(); Sessions sessions = new Sessions(); sessions.UserFileName = Path.ChangeExtension(etlPath, ".user.etl"); sessions.KernelFileName = Path.ChangeExtension(etlPath, ".kernel.etl"); sessions.MergedFileName = etlPath; var mergedProviderInfo = ProviderInfo.Merge(providerInfo); try { sessions.UserSession = new TraceEventSession(userSessionName, sessions.UserFileName); sessions.UserSession.BufferSizeMB = bufferSizeMB; var availableCpuCounters = TraceEventProfileSources.GetInfo(); var cpuCounterIds = new List<int>(); var cpuCounterIntervals = new List<int>(); foreach (var cpuInfo in mergedProviderInfo.OfType<CpuCounterInfo>()) { ProfileSourceInfo profInfo; if (availableCpuCounters.TryGetValue(cpuInfo.CounterName, out profInfo)) { cpuCounterIds.Add(profInfo.ID); cpuCounterIntervals.Add(Math.Min(profInfo.MaxInterval, Math.Max(profInfo.MinInterval, cpuInfo.Interval))); } } if (cpuCounterIds.Count > 0) TraceEventProfileSources.Set(cpuCounterIds.ToArray(), cpuCounterIntervals.ToArray()); var kernelInfo = mergedProviderInfo.OfType<KernelProviderInfo>().FirstOrDefault(); if (kernelInfo != null && NeedSeparateKernelSession(kernelInfo.Keywords)) { sessions.KernelSession = new TraceEventSession(KernelTraceEventParser.KernelSessionName, sessions.KernelFileName); sessions.KernelSession.BufferSizeMB = bufferSizeMB; } else { sessions.KernelFileName = sessions.UserFileName; sessions.KernelSession = sessions.UserSession; } if (kernelInfo != null) { var kernelKeywords = (KernelTraceEventParser.Keywords)kernelInfo.Keywords; var kernelStackKeywords = (KernelTraceEventParser.Keywords)kernelInfo.StackKeywords; sessions.KernelSession.EnableKernelProvider(kernelKeywords, kernelStackKeywords); } foreach (var userInfo in mergedProviderInfo.OfType<UserProviderInfo>()) sessions.UserSession.EnableProvider(userInfo.ProviderGuid, userInfo.Level, userInfo.Keywords); s_sessions[userSessionName] = sessions; } catch { sessions.Close(); throw; } return userSessionName; }
/// <summary> /// Uploads sessions queue to Countly server /// </summary> /// <returns></returns> private static async Task <bool> UploadSessions() { lock (sync) { if (uploadInProgress) { return(true); } uploadInProgress = true; } SessionEvent sessionEvent = null; lock (sync) { if (Sessions.Count > 0) { sessionEvent = Sessions[0]; } } if (sessionEvent != null) { ResultResponse resultResponse = await Api.SendSession(ServerUrl, sessionEvent, (UserDetails.isChanged)?UserDetails : null); if (resultResponse != null && resultResponse.IsSuccess) { UserDetails.isChanged = false; SaveUserDetails(); lock (sync) { uploadInProgress = false; try { Sessions.RemoveAt(0); } catch { } Storage.SaveToFile(sessionsFilename, Sessions); } if (Sessions.Count > 0) { return(await UploadSessions()); } else { return(true); } } else { uploadInProgress = false; return(false); } } else { uploadInProgress = false; return(true); } }
public void SendTo(string message, string id) { Sessions.SendTo(message, id); }
public bool IsMemberOfGroup(long entityId) => Sessions?.Any(s => s?.Character != null && (s.Character.CharacterId == entityId || s.Character.Mates.Any(m => m.IsTeamMember && m.MateTransportId == entityId))) == true;
private static DataSet ResultContents(EnumerableRowCollection <DataRow> dataRows) { var statements = new List <SqlStatement>(); if (dataRows.Any(o => o["ReferenceType"].ToString() == "Sites")) { statements.Add(Rds.SelectSites( dataTableName: "Sites", column: Rds.SitesColumn() .ParentId(_as: "SiteId") .SiteId(_as: "Id") .Title() .Body(), where : Rds.SitesWhere() .TenantId(Sessions.TenantId()) .SiteId_In(dataRows .Where(o => o["ReferenceType"].ToString() == "Sites") .Select(o => o["ReferenceId"].ToLong())))); } if (dataRows.Any(o => o["ReferenceType"].ToString() == "Issues")) { statements.Add(Rds.SelectIssues( dataTableName: "Issues", column: Rds.IssuesColumn() .SiteId() .IssueId(_as: "Id") .Title() .Body(), where : Rds.IssuesWhere() .IssueId_In(dataRows .Where(o => o["ReferenceType"].ToString() == "Issues") .Select(o => o["ReferenceId"].ToLong())))); } if (dataRows.Any(o => o["ReferenceType"].ToString() == "Results")) { statements.Add(Rds.SelectResults( dataTableName: "Results", column: Rds.ResultsColumn() .SiteId() .ResultId(_as: "Id") .Title() .Body(), where : Rds.ResultsWhere() .ResultId_In(dataRows .Where(o => o["ReferenceType"].ToString() == "Results") .Select(o => o["ReferenceId"].ToLong())))); } if (dataRows.Any(o => o["ReferenceType"].ToString() == "Wikis")) { statements.Add(Rds.SelectWikis( dataTableName: "Wikis", column: Rds.WikisColumn() .SiteId() .WikiId(_as: "Id") .Title() .Body(), where : Rds.WikisWhere() .WikiId_In(dataRows .Where(o => o["ReferenceType"].ToString() == "Wikis") .Select(o => o["ReferenceId"].ToLong())))); } return(Rds.ExecuteDataSet(statements: statements.ToArray())); }
public bool IsMemberOfGroup(ClientSession session) => Sessions?.Any(s => s?.Character?.CharacterId == session.Character.CharacterId) == true;
public string MoveTargets() { SetSite(); return(new ResponseCollection().Html("#MoveTargets", new HtmlBuilder() .OptionCollection( optionCollection: MoveTargets( Rds.ExecuteTable(statements: new SqlStatement( commandText: Def.Sql.MoveTarget, param: Rds.SitesParam() .TenantId(Sessions.TenantId()) .ReferenceType(Site.ReferenceType) .SiteId(Site.SiteId) .Permissions_PermissionType( Permissions.Types.Update.ToInt().ToString()))) .AsEnumerable()))).ToJson()); }
public void LeaveGroup(ClientSession session) { session.Character.Group = null; if (Sessions.Find(c => c.Character.IsCoupleOfCharacter(session.Character.CharacterId)) is ClientSession couple) { session.Character.RemoveBuff(319, true); couple.Character.RemoveBuff(319, true); } Sessions.RemoveAll(s => s?.Character.CharacterId == session.Character.CharacterId); if (IsLeader(session) && GroupType != GroupType.Group && Sessions.Count > 1) { Sessions.ForEach(s => s.SendPacket(UserInterfaceHelper.GenerateMsg(string.Format(Language.Instance.GetMessageFromKey("TEAM_LEADER_CHANGE"), Sessions.ElementAt(0).Character?.Name), 0))); } }
public void Broadcast(string message) { Sessions.Broadcast("Broadcasted " + message); }
public bool Handle(IRequestMessage msg) { try { Type msgType = msg.GetType(); if (typeof(IRequestMessage).IsAssignableFrom(msgType)) { if (typeof(ModifyCancelOrder) == msgType) { Counters.IncrementCounter(CountersConstants.ClientsReplaceOrderReqs); ModifyCancelOrder modifyOrder = (ModifyCancelOrder)msg; SingleOrder order = OrdersManager.GetOrder(modifyOrder.RequesterOrderID); #region order existanse validation if (order == null) { Sessions.Push(Sessions.GetUsername(modifyOrder.ClientKey), new IResponseMessage[] { new Fix_OrderReplaceRefusedByService() { ClientKey = modifyOrder.ClientKey, RefuseReason = "Order Not Found!", RequesterOrderID = modifyOrder.RequesterOrderID } }); SystemLogger.LogEventAsync(string.Format("Order Not Found RequesterID {0} ", modifyOrder.RequesterOrderID)); return(true); } #endregion order existanse validation lock (order) { #region check order activation // check ispending before isactive becoz a pendingnew order might be not isactive but ispending bool isPending, isMcsdPending = false; isPending = Convert.ToBoolean(order[SingleOrderProperties.IsPending]); isMcsdPending = Convert.ToBoolean(order[SingleOrderProperties.IsPendingMcsd]); if (isPending || isMcsdPending) { Sessions.Push(Sessions.GetUsername(modifyOrder.ClientKey), new IResponseMessage[] { new Fix_OrderReplaceRefusedByService() { ClientKey = modifyOrder.ClientKey, RefuseReason = !isMcsdPending ? "Order is in pending request" : "Awaiting for allocation response", RequesterOrderID = modifyOrder.RequesterOrderID } }); return(true); } bool isActive = false; isActive = Convert.ToBoolean(order[SingleOrderProperties.IsActive]); if (!isActive) { Sessions.Push(Sessions.GetUsername(modifyOrder.ClientKey), new IResponseMessage[] { new Fix_OrderReplaceRefusedByService() { ClientKey = modifyOrder.ClientKey, RefuseReason = "Order not active any more", RequesterOrderID = modifyOrder.RequesterOrderID } }); return(true); } #endregion check order activation #region order validation // ValidateOrder string validation = ValidateOrder(modifyOrder, order); if (validation != "valid") { Sessions.Push(Sessions.GetUsername(modifyOrder.ClientKey), new IResponseMessage[] { new Fix_OrderReplaceRefusedByService() { ClientKey = modifyOrder.ClientKey, RefuseReason = validation, RequesterOrderID = modifyOrder.RequesterOrderID } }); return(true); } #endregion order validation // handle ClOrderID and OrigClOrdID OrdersManager.HandleModifyOrder(Sessions.GetUsername(modifyOrder.ClientKey), modifyOrder.ClientKey, modifyOrder.RequesterOrderID, (long)order[SingleOrderProperties.OrderID], modifyOrder.Quantity, Math.Round(modifyOrder.Price, m_orderPriceDigitsRounding), modifyOrder.OrderType, modifyOrder.TimeInForce, modifyOrder.OptionalParam); return(true); } } } return(false); } catch (Exception ex) { Counters.IncrementCounter(CountersConstants.ExceptionMessages); SystemLogger.LogErrorAsync("ModifyCancelOrderHandler Error: " + ex.Message); return(true); } }
private static string Title() { if (Sessions.LoggedIn() && Parameters.Service.ShowTenantTitle) { var title = Rds.ExecuteScalar_string(statements: Rds.SelectTenants( column: Rds.TenantsColumn().Title(), where : Rds.TenantsWhere().TenantId(Sessions.TenantId()))); return(!title.IsNullOrEmpty() ? title : Displays.ProductName()); } else { return(Displays.ProductName()); } }
public void TryCreate() { Sessions.TryCreate(); }
protected override void OnClose(CloseEventArgs e) { Sessions.Broadcast(String.Format("{0} got logged off...", _name)); }
public void TryClose() { Sessions.TryClose(); }
public void RegisterSession(ClientSession clientSession) { Sessions.TryAdd(clientSession.SessionId, clientSession); }
protected override void OnMessage(MessageEventArgs e) { ProperMessage recmsg = JsonConvert.DeserializeObject <ProperMessage>(e.Data); Console.WriteLine($"Message received: {e.Data}"); if (recmsg.messageType == MessageType.Join) { Console.WriteLine("Player joined"); Console.WriteLine($"Data: {recmsg.messageData}"); List <Player> _players = _game.getPlayers(); if (_players.Count < 2) { Player player = JsonConvert.DeserializeObject <Player>(recmsg.messageData); player.sessionId = ID; //_players.Add(player); _game.AddPlayer(player); Console.WriteLine(_game.getPlayers().Count); Console.WriteLine(JsonConvert.SerializeObject(_game.getPlayers())); ProperMessage response = new ProperMessage { messageType = MessageType.JoinAccept, messageData = JsonConvert.SerializeObject(player) }; SendTest(JsonConvert.SerializeObject(response)); //response = new ProperMessage { messageType = MessageType.OpponentInfo, messageData = JsonConvert.SerializeObject(_players[0])}; //Send(JsonConvert.SerializeObject(response)); if (_players.Count == 2) { //response = new ProperMessage { messageType = MessageType.OpponentInfo, messageData = JsonConvert.SerializeObject(player)}; //Sessions.SendTo(JsonConvert.SerializeObject(response), _players[0].sessionId); } } else { ProperMessage response = new ProperMessage { messageType = MessageType.JoinDeny, messageData = null }; SendTest(JsonConvert.SerializeObject(response)); } } if (recmsg.messageType == MessageType.RoundPlay) { List <Player> _players = _game.getPlayers(); Player player = JsonConvert.DeserializeObject <Player>(recmsg.messageData); if (VerifyRoundPlay(player)) { player.lockedIn = true; var thisPlayerIndex = _players.IndexOf(_players.Find(p => p.sessionId == ID)); Console.WriteLine($"Index: {thisPlayerIndex}"); player.sessionId = ID; _players[thisPlayerIndex] = player; Console.WriteLine("Accepted Player Move"); Console.WriteLine($"Data: {e.Data}"); ProperMessage response = new ProperMessage { messageType = MessageType.RoundPlayAccept, messageData = null }; SendTest(JsonConvert.SerializeObject(response)); } else { Console.WriteLine("Denied Player Move"); Console.WriteLine($"Data: {e.Data}"); ProperMessage response = new ProperMessage { messageType = MessageType.RoundPlayDeny, messageData = null }; SendTest(JsonConvert.SerializeObject(response)); } if (_players.Count == 2 && (_players[0].lockedIn && _players[1].lockedIn)) { var gameRound = DetermineRound(_players[0], _players[1]); Console.WriteLine(JsonConvert.SerializeObject(gameRound)); ProperMessage response = new ProperMessage { messageType = MessageType.RoundResult, messageData = JsonConvert.SerializeObject(gameRound) }; Sessions.Broadcast(JsonConvert.SerializeObject(response)); ResetRound(); } } }
public void RefreshSegmentDetails(Sessions.Player.Objects.Segment segment, long audioFileLength) { }
public void SendMessage(RemoteMessage message) => Sessions.Broadcast(message.ToJSON());
public Sessions GetSessions() { Sessions colSessions = new Sessions(); try { oWTSSessions = oWTSCOM.WTSEnumerateSessions((int)ServerHandle); long SessionID; string SessionUser; long SessionState; string SessionName; foreach (WTSSession oWTSSession in oWTSSessions) { SessionID = oWTSSession.SessionId; SessionUser = oWTSCOM.WTSQuerySessionInformation((int)ServerHandle, oWTSSession.SessionId, 5); //WFUsername = 5 SessionState = oWTSSession.State; SessionName = oWTSSession.WinStationName + "\r\n"; if (SessionUser != "") { if (SessionState == 0) { colSessions.Add(SessionID, Language.strActive, SessionUser, SessionName); } else { colSessions.Add(SessionID, Language.strInactive, SessionUser, SessionName); } } } } catch (Exception ex) { Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, Language.strRdpGetSessionsFailed + Constants.vbNewLine + ex.Message, true); } return colSessions; }
public void Braodcast(string message) { Sessions.Broadcast(message); }