private void Server_ClientSayEvent(string msg, ChatUser from, ChatUser to) { verifyList(); /*if (IsChatClientsConnected(from, to) == false) * { * return; * }*/ ChatDetails chatItem = new ChatDetails() { dateAdd = DateTime.Now, FromNumOved = from.NumOved, FromUserAd = from.UserAd, FromUserHeb = from.UserHeb, odaa = msg, ReadOdaa = false, ToNumOved = to.NumOved, ToUserAd = to.UserAd, ToUserHeb = to.UserHeb }; int id = DAL.insert <ChatDetails>("ChatDetail", chatItem); chatItem.id = id; if (IsChatClientsConnected(from, to) == true) { myClients[to.UserAd].client.RecieveFromClient(msg, from); } ChatDAL.UpdateUserChatDetailsToRead(from, to); }
public async Task <IActionResult> Get( [FromRoute] Guid chatId, [FromQuery][DefaultValue("1")] int?page, [DefaultValue("25")] int?size, CancellationToken cancellationToken) { ChatDetails chat = await _chatsData.GetByIdAsync(chatId, cancellationToken); if (chat == null) { return(this.BadRequest(new ProblemDetails() { Detail = $"Chat with id {chatId} not found." })); } int pageValue = page ?? 1; int sizeValue = size ?? 25; PagedList <ChatMessage> messages = await _messagesData .GetMessagesAsync( chatId, pageValue, sizeValue, cancellationToken); return(this.Ok(messages)); }
private async void InboxList_SelectionChanged(object sender, SelectionChangedEventArgs e) { var ClickedItem = InboxList.SelectedItem as InboxViewModel; var Chats = await Api.InstaApi.GetDirectInboxThreadAsync(ClickedItem.TTag); ChatDetails.Items.Clear(); foreach (var chat in Chats.Value.Items.OrderBy(x => x.TimeStamp).ToList()) { if (chat.UserId == Api.Userid) { ChatDetails.Items.Add(new ChatViewModel() { Fill = "#e3e3e3", StrokeThickness = "0", ItemId = chat.ItemId, Date = chat.TimeStamp.ToShortDateString(), Text = chat.Text, Dir = FlowDirection.RightToLeft }); } else { ChatDetails.Items.Add(new ChatViewModel() { Fill = "#fff", StrokeThickness = "1", ItemId = chat.ItemId, Date = chat.TimeStamp.ToShortDateString(), Text = chat.Text, Dir = FlowDirection.LeftToRight }); } } ChatDetails.SelectedIndex = ChatDetails.Items.Count - 1; ChatDetails.ScrollIntoView(ChatDetails.SelectedItem); }
private async void DispatcherTimer_Tick(object sender, object e) { try { var inbox = await Api.InstaApi.GetDirectInboxAsync(); foreach (var innerinbox in InboxList.Items) { var element = innerinbox as InboxViewModel; var newelement = inbox.Value.Inbox.Threads.Where(x => x.ThreadId == element.TTag).First(); try { if (newelement.Items[0].TimeStamp != element.LMDate) { //element.LastMessage = inbox.Value.Inbox.Threads.Where(x => x.ThreadId == element.TTag).First().Items[0].Text ?? ""; //element.Notify = Visibility.Visible; (InboxList.Items.Where(x => (x as InboxViewModel).TTag == element.TTag).First() as InboxViewModel).LastMessage = newelement.Items[0].Text; (InboxList.Items.Where(x => (x as InboxViewModel).TTag == element.TTag).First() as InboxViewModel).Notify = Visibility.Visible; } } catch { } } if (ChatDetails.Items.Count > 0) { var ClickedItem = InboxList.SelectedItem as InboxViewModel; var Chats = await Api.InstaApi.GetDirectInboxThreadAsync(ClickedItem.TTag); ChatDetails.Items.Clear(); foreach (var chat in Chats.Value.Items.OrderBy(x => x.TimeStamp).ToList()) { if (chat.UserId == Api.Userid) { ChatDetails.Items.Add(new ChatViewModel() { Fill = "#e3e3e3", StrokeThickness = "0", ItemId = chat.ItemId, Date = chat.TimeStamp.ToShortDateString(), Text = chat.Text, Dir = FlowDirection.RightToLeft }); } else { ChatDetails.Items.Add(new ChatViewModel() { Fill = "#fff", StrokeThickness = "1", ItemId = chat.ItemId, Date = chat.TimeStamp.ToShortDateString(), Text = chat.Text, Dir = FlowDirection.LeftToRight }); } } ChatDetails.SelectedIndex = ChatDetails.Items.Count - 1; ChatDetails.ScrollIntoView(ChatDetails.SelectedItem); } } catch { } }
public IActionResult Update(string id, ChatDetails eventsIn) { var events = _eventService.Get(id); if (events == null) { return(NotFound()); } _eventService.Update(id, eventsIn); return(NoContent()); }
public async Task <IActionResult> Post([FromBody] SendMessageCommand command, CancellationToken cancellationToken) { ChatDetails chat = await _chatsData.GetByIdAsync(command.ChatId, cancellationToken); if (chat == null) { return(this.NotFound(new ProblemDetails() { Detail = $"Chat with id {command.ChatId} not found." })); } await _messagesData.AddAsync(command, cancellationToken); return(this.Ok()); }
public async Task <IActionResult> Delete([FromRoute] Guid chatId, CancellationToken cancellationToken) { ChatDetails chat = await _chatsData.GetByIdAsync(chatId, cancellationToken); if (chat == null) { return(this.NotFound(new ProblemDetails() { Detail = $"Chat with id {chatId} not found." })); } await _chatsData.RemoveAsync(chatId, cancellationToken); return(this.Ok()); }
public void Update_ExistingPassed_ReturnsOkResult() { // Arrange var existingGuid = "1234567"; ChatDetails cd = new ChatDetails() { Uname = "Abhishek", Message = "create a new repo", Client = true, Date = "1234" }; // Act var okResponse = _controller.Update(existingGuid, cd); // Assert Assert.IsType <OkObjectResult>(okResponse); }
/// <summary> /// Method to LoadData /// </summary> private void AddDetails() { if (!string.IsNullOrEmpty(Message)) { // Save details in database _dataService.AddDetails(CurrentUserId, SelectedUserId, Message); if (ChatDetails.Count > 0) { ChatDetails.Clear(); } // Refresh items ChatDetails = _dataService.GetChatDetails(CurrentUserId, SelectedUserId); // Clear message Message = string.Empty; } }
public static ChatDetails ToChatDetails(this ChatData chatData) { if (chatData == null) { return(null); } var target = new ChatDetails { Id = chatData.Id, Member = new ChatDetailsMember { Id = chatData.Member.Id }, Name = chatData.Name }; return(target); }
//改成Dto public async Task SendMessageToGroup(ChatDetailDto dto) { // 聊天後就存入資料庫 ChatDetails details = new ChatDetails() { Id = Guid.NewGuid(), RoomId = dto.RoomId, UserName = dto.UserName, Text = dto.Text, DateTime = DateTime.UtcNow, }; _details.Create(details); _details.SaveContext(); await Clients.Group(dto.RoomId).ReceiveGroupMessage(dto.RoomId, dto.UserName, dto.Text, TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, TimeZoneInfo.Local)); }
private async void SendBtn_Click(object sender, RoutedEventArgs e) { if (!string.IsNullOrWhiteSpace(TextToSend.Text)) { SendBtn.IsEnabled = false; //Stopwatch stopwatch = new Stopwatch(); //stopwatch.Start(); var result = await Api.InstaApi.SendDirectMessage((InboxList.SelectedItem as InboxViewModel).UTag, (InboxList.SelectedItem as InboxViewModel).TTag, TextToSend.Text); if (result.Succeeded) { var ClickedItem = InboxList.SelectedItem as InboxViewModel; var Chats = await Api.InstaApi.GetDirectInboxThreadAsync(ClickedItem.TTag); ChatDetails.Items.Clear(); foreach (var chat in Chats.Value.Items.OrderBy(x => x.TimeStamp).ToList()) { if (chat.UserId == Api.Userid) { ChatDetails.Items.Add(new ChatViewModel() { Fill = "#e3e3e3", StrokeThickness = "0", ItemId = chat.ItemId, Date = chat.TimeStamp.ToShortDateString() + " " + chat.TimeStamp.ToShortTimeString(), Text = chat.Text, Dir = FlowDirection.RightToLeft }); } else { ChatDetails.Items.Add(new ChatViewModel() { Fill = "#fff", StrokeThickness = "1", ItemId = chat.ItemId, Date = chat.TimeStamp.ToShortDateString() + " " + chat.TimeStamp.ToShortTimeString(), Text = chat.Text, Dir = FlowDirection.LeftToRight }); } } } //stopwatch.Stop(); ChatDetails.SelectedIndex = ChatDetails.Items.Count - 1; ChatDetails.ScrollIntoView(ChatDetails.SelectedItem); TextToSend.Text = ""; SendBtn.IsEnabled = true; } }
protected override void OnInitialize() { if (Chat == null) { return; } ChatDetails.CurrentItem = Chat; var notifySettings = Chat.NotifySettings as TLPeerNotifySettings; if (notifySettings != null) { var sound = _stateService.Sounds.FirstOrDefault(x => string.Equals(x, notifySettings.Sound.Value, StringComparison.OrdinalIgnoreCase)); ChatDetails.SetSelectedSound(sound ?? _stateService.Sounds[0]); } NotifyOfPropertyChange(() => Chat); Items.Add(ChatDetails); ActivateItem(ChatDetails); base.OnInitialize(); }
public void Update(string id, ChatDetails bookIn) { }
public ChatDetails Create(ChatDetails newItem) { newItem.Id = "134527282"; _chatdetails.Add(newItem); return(newItem); }
public ActionResult <string> Create(ChatDetails Uname) { _eventService.Create(Uname); //var userdetail = _eventService.GetByName(Uname); Console.WriteLine(Uname.Message); var messageStr = Uname.Message; string[] words = messageStr.Split(" "); string issue = null; string repoName = null; string uname = null; foreach (string word in words) { if (word.Contains("_repo")) { repoName = word.Substring(0, word.Length - 5); Console.WriteLine(repoName); } if (word.Contains("_issue")) { issue = word.Substring(0, word.Length - 6); Console.WriteLine(issue); } if (word.Contains("_uname")) { uname = word.Substring(0, word.Length - 6); Console.WriteLine(uname); } } string url = "https://api.wit.ai/message?q=" + messageStr; // sample url string a = "Bearer " + "UKIVKGFEGVMQPK7PD7ZX64AHJRX266LB"; using (HttpClient client = new HttpClient()) { client.DefaultRequestHeaders.Add("Authorization", a); var b = client.GetStringAsync(url).Result; dynamic json = JsonConvert.DeserializeObject(b); var str = JsonConvert.SerializeObject(json.entities); var p = str.Split(new string[] { "\"" }, StringSplitOptions.None); foreach (string i in p) { Console.WriteLine(i); } //Console.WriteLine(p[1]); if (p.Length <= 1) { return("Noooooooo"); } else { switch (p[1]) { case "create_repo": var client_ = new RestClient("https://api.github.com/user/repos"); var request = new RestRequest(Method.POST); request.AddHeader("cache-control", "no-cache"); request.AddHeader("Connection", "keep-alive"); request.AddHeader("Accept-Encoding", "gzip, deflate"); request.AddHeader("Host", "api.github.com"); request.AddHeader("Postman-Token", "d3056e59-d436-44b2-b04b-1bc8105d3cf2,8c6331ee-79d0-419d-a960-e69fcfe0814a"); request.AddHeader("Cache-Control", "no-cache"); request.AddHeader("Accept", "/application/vnd.github.shadow-cat-preview+json"); request.AddHeader("User-Agent", "PostmanRuntime/7.17.1"); request.AddHeader("Authorization", "Bearer d66d3a2996dae3b8230e2fe8a5ce10e0605756a8"); request.AddJsonBody(new { name = repoName }); IRestResponse response = client_.Execute(request); return(response.Content); break; case "create_issue": Console.WriteLine("from Issue "); var clientss = new RestClient("https://api.github.com/repos/" + uname + "/" + repoName + "/issues"); var requestss = new RestRequest(Method.POST); requestss.AddHeader("cache-control", "no-cache"); requestss.AddHeader("Connection", "keep-alive"); requestss.AddHeader("Accept-Encoding", "gzip, deflate"); requestss.AddHeader("Host", "api.github.com"); requestss.AddHeader("Postman-Token", "d3056e59-d436-44b2-b04b-1bc8105d3cf2,8c6331ee-79d0-419d-a960-e69fcfe0814a"); requestss.AddHeader("Cache-Control", "no-cache"); requestss.AddHeader("Accept", "/application/vnd.github.shadow-cat-preview+json"); requestss.AddHeader("User-Agent", "PostmanRuntime/7.17.1"); requestss.AddHeader("Authorization", "Bearer d66d3a2996dae3b8230e2fe8a5ce10e0605756a8"); //requestss.AddJsonBody(new { name = "BotExample" }); requestss.AddJsonBody(new { title = issue }); //for issue it is required. IRestResponse responsess = clientss.Execute(requestss); return(responsess.Content); break; case "fork": Console.WriteLine("forkkkkkkk"); var clients = new RestClient("https://api.github.com/repos/" + uname + "/" + repoName + "/forks"); var requests = new RestRequest(Method.POST); requests.AddHeader("cache-control", "no-cache"); requests.AddHeader("Connection", "keep-alive"); requests.AddHeader("Accept-Encoding", "gzip, deflate"); requests.AddHeader("Host", "api.github.com"); requests.AddHeader("Postman-Token", "d3056e59-d436-44b2-b04b-1bc8105d3cf2,8c6331ee-79d0-419d-a960-e69fcfe0814a"); requests.AddHeader("Cache-Control", "no-cache"); requests.AddHeader("Accept", "/application/vnd.github.shadow-cat-preview+json"); requests.AddHeader("User-Agent", "PostmanRuntime/7.17.1"); requests.AddHeader("Authorization", "Bearer d66d3a2996dae3b8230e2fe8a5ce10e0605756a8"); IRestResponse responses = clients.Execute(requests); return(responses.Content); break; default: Console.WriteLine("No oooooooooooooooooooooooo"); break; } } } return(CreatedAtRoute("GetEventsByApi", new { id = Uname.Id.ToString() }, Uname)); }
public ChatDetails Create(ChatDetails book) { _books.InsertOne(book); return(book); }
public void Remove(ChatDetails bookIn) => _apiValue.DeleteOne(book => book.Id == bookIn.Id);
protected override void OnActivate() { if (_stateService != null && _stateService.Participant != null) { var participant = _stateService.Participant; _stateService.Participant = null; var forwardingMessagesCount = _stateService.ForwardingMessagesCount; _stateService.ForwardingMessagesCount = 0; var broadcastChat = Chat as TLBroadcastChat; if (broadcastChat != null) { var serviceMessage = new TLMessageService17(); serviceMessage.ToId = new TLPeerBroadcast { Id = Chat.Id }; serviceMessage.FromId = new TLInt(_stateService.CurrentUserId); serviceMessage.Out = new TLBool(true); serviceMessage.SetUnread(new TLBool(false)); serviceMessage.Date = TLUtils.DateToUniversalTimeTLInt(_mtProtoService.ClientTicksDelta, DateTime.Now); serviceMessage.Action = new TLMessageActionChatAddUser { UserId = participant.Id }; broadcastChat.ParticipantIds.Add(participant.Id); _cacheService.SyncBroadcast(broadcastChat, result => { _eventAggregator.Publish(serviceMessage); }); //ChatDetails.UpdateTitles(); } else { _mtProtoService.AddChatUserAsync(Chat.Id, participant.ToInputUser(), new TLInt(forwardingMessagesCount), statedMessage => { var updates = statedMessage as TLUpdates; if (updates != null) { var updateNewMessage = updates.Updates.FirstOrDefault(x => x is TLUpdateNewMessage) as TLUpdateNewMessage; if (updateNewMessage != null) { _eventAggregator.Publish(updateNewMessage.Message); } } ChatDetails.UpdateTitles(); }, error => Execute.BeginOnUIThread(() => { if (error.TypeEquals(ErrorType.PEER_FLOOD)) { MessageBox.Show(AppResources.PeerFloodAddContact, AppResources.Error, MessageBoxButton.OK); } Telegram.Api.Helpers.Execute.ShowDebugMessage("messages.addChatUser error " + error); })); } } if (_stateService != null && _stateService.SelectedTimerSpan != null) { ChatDetails.SelectedSpan = _stateService.SelectedTimerSpan; _stateService.SelectedTimerSpan = null; } ChatDetails.StartTimer(); base.OnActivate(); }
public void ForwardInAnimationComplete() { ChatDetails.ForwardInAnimationComplete(); }
protected override void OnDeactivate(bool close) { ChatDetails.StopTimer(); base.OnDeactivate(close); }
public ChatDetails Create(ChatDetails book) { _apiValue.InsertOne(book); return(book); }
public async Task <IActionResult> Get(Guid chatId, CancellationToken cancellationToken) { ChatDetails chat = await _chatsData.GetByIdAsync(chatId, cancellationToken); return(this.Ok(chat)); }
public ActionResult <ChatDetails> Create(ChatDetails events) { _eventService.Create(events); return(CreatedAtRoute("GetEvents", new { id = events.Id.ToString() }, events)); }
public void AddParticipant() { ChatDetails.AddParticipant(); }
public void Update(string id, ChatDetails bookIn) => _apiValue.ReplaceOne(book => book.Id == id, bookIn);