public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } StreamerInfo streamerUser = streamerinfomanager.Find(x => x.Owner.id == id.Value); return(View(streamerUser)); }
public StreamerInfo GetStreamerInfo(string broadcasterId) { var streamer = gameData.GetUserByTwitchId(broadcasterId); var result = new StreamerInfo(); if (streamer != null) { result.StreamerUserId = broadcasterId; result.StreamerUserName = streamer.UserName; var gameSession = gameData.GetOwnedSessionByUserId(streamer.UserId); result.IsRavenfallRunning = gameSession != null; result.StreamerSessionId = gameSession?.Id; if (gameSession != null) { result.Started = gameSession.Started; var state = gameData.GetSessionState(gameSession.Id); if (state != null) { result.ClientVersion = state.ClientVersion; } var charactersInSession = gameData.GetSessionCharacters(gameSession); if (charactersInSession != null) { var session = this.HttpContext.GetSessionId(); if (sessionInfoProvider.TryGet(session, out var sessionInfo)) { var u = gameData.GetUser(sessionInfo.AccountId); if (u != null) { var c = charactersInSession.FirstOrDefault(x => x.UserId == u.Id); if (c != null) { result.JoinedCharacterId = c.Id; } } } result.PlayerCount = charactersInSession.Count; } } } return(result); }
public async Task GetStreamerInfo(string accountID = null) { this.EnsureIsAuthenticated(); var url = "/apps/100/StreamerInfo?source=" + Uri.EscapeDataString(this.key) + (accountID == null ? string.Empty : "&accountid=" + Uri.EscapeDataString(accountID)); var text = await this.http.GetStringAsync(url); var xml = XDocument.Parse(text); if (xml.Root.Element("result").Value == "OK") { using (var reader = xml.Root.Element("streamer-info").CreateReader()) { this.streamerInfo = (StreamerInfo) new XmlSerializer(typeof(StreamerInfo)).Deserialize(reader); } } }
public ActionResult Edit(StreamerInfo streamerUser) { ModelState.Remove("CreatedOn"); ModelState.Remove("ModifyDate"); ModelState.Remove("Owner.ModifiedUser"); ModelState.Remove("Owner.Username"); ModelState.Remove("Owner.Email"); ModelState.Remove("Owner.Password"); streamerUser.Owner = kodlatvusermanager.Find(x => x.id == CurrentSession.User.id); if (streamerUser.Owner == null) { BusinessLayerResult <Channel> layerResult = new BusinessLayerResult <Channel>(); layerResult.AddError(ErrorMessageCode.PaymentNotFound, "Kullanıcı adı Bulunamadı."); ErrorViewModel errorNotifyObj = new ErrorViewModel() { Items = layerResult.Errors, Title = "Kullanıcı Bulunamadı.", RedirectingUrl = "/Channel/UserChannel/" + streamerUser.Owner.id }; return(View("Error", errorNotifyObj)); } else { streamerUser.Owner.ModifiedUser = CurrentSession.User.Username; if (ModelState.IsValid) { StreamerInfo streamer = streamerinfomanager.Find(x => x.Owner.id == CurrentSession.User.id); streamer.Experince = streamerUser.Experince; streamer.Hobby = streamerUser.Hobby; streamer.Usingos = streamerUser.Usingos; streamer.Interest = streamerUser.Interest; streamer.Name = streamer.Name; streamer.Surname = streamer.Surname; streamerinfomanager.Uptade(streamer); return(Redirect("/Userchannel/" + CurrentSession.User.id)); } return(View(streamerUser)); } }
public void EndSession(DataModels.GameSession session) { var characters = gameData.GetSessionCharacters(session); var owner = gameData.GetUser(session.UserId); var data = new StreamerInfo(); data.StreamerUserId = owner.UserId; data.StreamerUserName = owner.UserName; data.IsRavenfallRunning = false; data.StreamerSessionId = null; data.Started = null; var state = gameData.GetSessionState(session.Id); if (state != null) { data.ClientVersion = state.ClientVersion; } if (extWsConnectionProvider.TryGetAllByStreamer(session.UserId, out var allConnections)) { foreach (var connection in allConnections) { connection.SendAsync(data); } } foreach (var character in characters) { character.UserIdLock = null; } session.Status = (int)SessionStatus.Inactive; session.Stopped = DateTime.UtcNow; gameData.ClearAllCharacterSessionStates(session.UserId); //gameData.ClearCharacterSessionStates(session.Id); #if DEBUG logger.LogDebug(owner.UserName + " game session ended. " + characters.Count + " characters cleared."); #endif }
public IrcBot(StreamerInfo streamer) { _streamer = streamer; var credentials = new ConnectionCredentials("he305bot", _token); _client = new TwitchClient(protocol: ClientProtocol.TCP); _client.Initialize(credentials, streamer.Name); _client.OnLog += Client_OnLog; _client.OnJoinedChannel += Client_OnJoinedChannel; _client.OnMessageReceived += Client_OnMessageReceived; _client.OnWhisperReceived += Client_OnWhisperReceived; _client.OnNewSubscriber += Client_OnNewSubscriber; _client.OnConnected += Client_OnConnected; _client.OnDisconnected += Client_OnDisconnected; _client.OnError += Client_OnError; _client.OnConnectionError += Client_OnConnectionError; _client.OnMessageThrottled += Client_OnMessageThrottled; _emotes = new List <string>(); }
public ActionResult Create(StreamerInfo streameruser) { ModelState.Remove("CreatedOn"); ModelState.Remove("ModifyDate"); ModelState.Remove("Owner.ModifiedUser"); ModelState.Remove("Owner.Username"); ModelState.Remove("Owner.Email"); ModelState.Remove("Owner.Password"); if (ModelState.IsValid) { StreamerInfo streamer = streameruser; streamer.Owner = CurrentSession.User; streamerinfomanager.Insert(streamer); streamerinfomanager.Save(); return(Redirect("/Userchannel/" + CurrentSession.User.id)); } return(View(streameruser)); }