public void DeleteLeadTabelData() { timer4Sync.Stop(); foreach (ClsLead cd in objLeadCollection) { clsDataService.UpdateLeadStatus(cd.ID, cd.Status); } timer4Sync_Elapsed(null, null); clsDataService.DeleteLeadTableData(); LeadCollection.Clear(); }
public IActionResult PostHandler([FromBody] IEnumerable <LeadRequest> leads) { if (!_telegramService.IsConnected || !_telegramService.IsAuthorized) { return(new JsonResult(new TelegramSettingsMissingJsonResult(TelegramSettings))); } //TODO: use other services var leadsCollection = new LeadCollection(leads.ToList()); if (leadsCollection.Leads.Count == 0) { return(new JsonResult(new LeadDataMissingJsonResult())); } _telegramService.VerifyNumbers(leadsCollection); //TODO: use other services return(new JsonResult(leadsCollection.GetLeadsList())); }
public void FncRemoveDialLead(int channelID) { lock (this) { if (channelID == 0) { foreach (ClsLead cl in LeadCollection) { for (int i = 0; i < _DiallerChannel.Count; i++) { if (long.Parse(cl.ID.ToString()) == _DiallerChannel[i].LeadID) { LeadCollection.Remove(cl); } } } } else { foreach (ClsLead cl in LeadCollection) { if (long.Parse(cl.ID.ToString()) == _DiallerChannel[channelID - 1].LeadID) { LeadCollection.Remove(cl); _DiallerChannel[channelID - 1].CallResult = ClsChannel.CallStatus.NotInCall; break; } } } if (LeadCollection.Count == 0) { // GetNextLeadList(); GetNextLeadList(true); } } }
private static void Process(string username, string password, string folderName) { Console.WriteLine(" > Opening file..."); var path = Directory.GetCurrentDirectory() + @"\Leebl.csv"; var leads = new LeadCollection(path); var binding = new ExchangeServiceBinding { Url = "https://amxprd0510.outlook.com/ews/exchange.asmx", Credentials = new NetworkCredential(username, password), RequestServerVersionValue = new RequestServerVersion { Version = ExchangeVersionType.Exchange2010 } }; #region Get folder Console.WriteLine(" > Retrieving folder..."); var folderRequest = new FindFolderType { Traversal = FolderQueryTraversalType.Deep, FolderShape = new FolderResponseShapeType { BaseShape = DefaultShapeNamesType.IdOnly }, ParentFolderIds = new BaseFolderIdType[] { new DistinguishedFolderIdType { Id = DistinguishedFolderIdNameType.root } }, Restriction = new RestrictionType { Item = new ContainsExpressionType { ContainmentMode = ContainmentModeType.Substring, ContainmentModeSpecified = true, ContainmentComparison = ContainmentComparisonType.IgnoreCase, ContainmentComparisonSpecified = true, Item = new PathToUnindexedFieldType { FieldURI = UnindexedFieldURIType.folderDisplayName }, Constant = new ConstantValueType { Value = folderName } } } }; var folderResponse = binding.FindFolder(folderRequest); var folderIds = new List <BaseFolderIdType>(); foreach (var folder in folderResponse.ResponseMessages.Items .Select(x => (x as FindFolderResponseMessageType)) .Where(x => x != null)) { folderIds.AddRange(folder.RootFolder.Folders.Select(y => y.FolderId)); } #endregion #region Get items Console.WriteLine(" > Retrieving items..."); var itemRequest = new FindItemType { Traversal = ItemQueryTraversalType.Shallow, ItemShape = new ItemResponseShapeType { BaseShape = DefaultShapeNamesType.Default }, ParentFolderIds = folderIds.ToArray() }; var itemResponse = binding.FindItem(itemRequest); var itemIds = new List <BaseItemIdType>(); foreach (var item in itemResponse.ResponseMessages.Items .Select(x => (x as FindItemResponseMessageType)) .Where(x => x != null) .Where(x => x.RootFolder != null && x.RootFolder.TotalItemsInView > 0)) { itemIds.AddRange(((ArrayOfRealItemsType)item.RootFolder.Item).Items.Select(y => y.ItemId)); } #endregion #region Get bodies Console.WriteLine(" > Parsing " + itemIds.Count + " messages..."); var messageRequest = new GetItemType { ItemShape = new ItemResponseShapeType { BaseShape = DefaultShapeNamesType.AllProperties }, ItemIds = itemIds.ToArray() }; var messageResponse = binding.GetItem(messageRequest); foreach (var message in messageResponse.ResponseMessages.Items .Select(x => (x as ItemInfoResponseMessageType)) .Where(x => x != null) .Select(x => x.Items.Items[0]) .Where(x => x != null)) { leads.Add(message.Body.Value, message.DateTimeSent); } #endregion Console.WriteLine(" > Saving to file..."); leads.Save(path); }