public static void ShowCallInformation(MobileAccount sender, MobileAccount receiver) { listConnection.Add(new MobileConnection { Receiver = receiver, Sender = sender, Type = ConnectionType.Call }); if (sender.PhoneNumber != receiver.PhoneNumber) { Console.Write(String.Format("Call information: number of receiver - {0}, time of event - {1} , number of sender - {2} ", receiver.PhoneNumber, DateTime.Now, sender.PhoneNumber)); if (receiver.IsBookContainsNumber(sender)) { Console.WriteLine("name of sender = " + sender.Name); } else { Console.WriteLine("unknown number"); } } else { WarningCall(); } Console.WriteLine(); }
public void MakeSms(MobileAccount receiverNumber) { if (SmsEvent != null) { SmsEvent(this, receiverNumber); } }
public static void ShowSmsInformation(MobileAccount sender, MobileAccount receiver) { if (sender.PhoneNumber != receiver.PhoneNumber) { Console.Write(String.Format("Sms information: number of receiver - {0}, time of event - {1} , number of sender - {2} ", receiver.PhoneNumber, DateTime.Now, sender.PhoneNumber)); if (receiver.IsBookContainsNumber(sender)) { Console.WriteLine("name of sender = " + sender.Name); } else { Console.WriteLine("unknown number"); } } else { WarningSms(); } Console.WriteLine(); }
public void MakeCall(MobileAccount receiverNumber) { if (CallEvent != null) { CallEvent(this, receiverNumber); } }
public bool IsExsist(MobileAccount user) { if (addressBook.Any(u => u.Phone == user.Phone)) { return(true); } return(false); }
/*----------------------Methods------------------------*/ public void SendSMS(MobileAccount recipient, string sms) { if (SMSConversationStarded != null) { SMSConversationStarded.Invoke(this, recipient); } Console.WriteLine("You have received a letter"); }
public void MakeCall(MobileAccount recipient) { if (ConversationStarted != null) { ConversationStarted.Invoke(this, recipient); } Console.WriteLine("Conversation"); }
public void Call(MobileAccount sender, MobileAccount reciever) { if (InitClients(sender, reciever)) { OperatorMsg?.Invoke(reciever.CallIn(sender)); _journalOfActions[sender.GetNumber()].CallOut++; _journalOfActions[reciever.GetNumber()].CallIn++; } }
public bool IsBookContainsNumber(MobileAccount inputNumber) { foreach (var contact in Contacts) { if (contact.PhoneNumber.Equals(inputNumber.PhoneNumber)) { return(true); } } return(false); }
public void ShowSenderName(MobileAccount senderAccount) { if (addressBook.IsExsist(senderAccount)) { Console.WriteLine("Sender: " + addressBook.GetName(senderAccount)); } else { Console.WriteLine("Sender: " + senderAccount.Phone); } }
public void ShowCallingName(MobileAccount incomingAccount) { if (addressBook.IsExsist(incomingAccount)) { Console.WriteLine("Incoming: " + addressBook.GetName(incomingAccount)); } else { Console.WriteLine("Incoming: " + incomingAccount.Phone); } }
private void Call(MobileAccount sender, MobileAccount receiver) { OperatorMsg?.Invoke(receiver.CallIn(sender)); _journalOfActions.Add(id++, new JournalActionItem() { Time = DateTime.Now, InvokerNumber = sender.MobileNumber, ReceiverNumber = receiver.MobileNumber, ActionType = MobileAccountActionType.Call }); }
public void Add(MobileAccount mobileAccount) { if (!IsExsist(mobileAccount)) { accounts.Add(mobileAccount); mobileAccount.ConversationStarted += OnConversationStarted; mobileAccount.SMSConversationStarded += OnSmsConversationStarted; } else { Console.WriteLine("This phone number already exsist! ({0})", mobileAccount.Phone); } }
public string MessageIn(MobileAccount messageFrom) { if (_contactsOfAccount.ContainsKey(messageFrom.GetNumber())) { return(string.Format("{0} recieve message from {1}", _mobileNumber, _contactsOfAccount[messageFrom.GetNumber()])); } else { Console.WriteLine("Enter the name for number {0} in dictionary of {1}", messageFrom.GetNumber(), _mobileNumber); _contactsOfAccount.Add(messageFrom.GetNumber(), Console.ReadLine()); return(string.Format("{0} recieve message from {1}", _mobileNumber, messageFrom.GetNumber())); } }
public void AddClient(MobileAccount account) { if (!VerificationNumber(account.MobileNumber)) { _dictOfClients.Add(account.MobileNumber, account); account.MakeCall += Call; account.MakeMessage += Message; } else { OperatorMsg?.Invoke("Account is already exists"); } }
public MobileAccount RegisterAccount() { var number = AvailableNumbers.GetAvailableNumber(); var account = new MobileAccount(number); account.Calling += MonitorEvents; account.SendingMessage += MonitorEvents; account.Calling += RouteCall; account.SendingMessage += RouteMessage; RegisteredAccounts.Add(account); if (Registered != null) { Registered(string.Format("New account with number {0} has been registered.", account.Number)); } return(account); }
private string ActionIn(MobileAccount income, string msg) { var info = string.Format("{0} {1} ", MobileNumber, msg); var existContact = _contactsDictionary.Any(u => u.Key == income.MobileNumber); if (existContact) { info += string.Format("{0}", _contactsDictionary[(int)income.MobileNumber]); } else { AddContactToDictionary(income); info += string.Format("{0}", income.MobileNumber); } return(info); }
private string ActionIn(MobileAccount income, string msg) { var info = string.Format("{0} {1} ", _mobileNumber, msg); var existContact = _contactsBook.Any(u => u.Key == income.GetNumber()); if (existContact) { info += string.Format("{0}", _contactsBook[income.GetNumber()]); } else { AddContact(income); info += string.Format("{0}", income.GetNumber()); } return(info); }
private bool IsRealNumbers(int sender, int reciever) { instSender = InitClient(sender); if (instSender is null) { Messaging.Invoke($"Wrong number of sender {sender}"); return(false); } else { instReciever = InitClient(reciever); if (instReciever is null) { Messaging.Invoke($"Wrong number of reciever {reciever}"); return(false); } } return(true); }
static void Main(string[] args) { MobileOperator Djuice = new MobileOperator(); MobileAccount Vadym = new MobileAccount("+380968590222", "Vadym"); MobileAccount Roger = new MobileAccount("+380968589111", "Roger"); MobileAccount George = new MobileAccount("+380966120653", "George"); Djuice.Add(Vadym); Djuice.Add(Roger); Djuice.Add(George); Vadym.AddContact("+380968589111", "Roger - Developer"); Vadym.AddContact("+380966120653", "Brother"); Roger.MakeCall(Vadym); George.SendSMS(Vadym, "Hello"); Console.ReadLine(); }
static void Main(string[] args) { MobileAccount account1 = new MobileAccount("Bolt"); MobileAccount account2 = new MobileAccount("Messi"); MobileAccount account3 = new MobileAccount("Ronaldo"); MobileAccount account4 = new MobileAccount("Phelps"); account1.AddToContacts(account2); account1.AddToContacts(account3); account1.MakeSms(account3); account1.MakeCall(account1); account2.MakeSms(account2); account2.MakeCall(account4); account2.MakeSms(account1); account3.MakeCall(account1); account4.MakeSms(account1); Console.ReadKey(); }
public void AddToContacts(MobileAccount inputNumber) { Contacts.Add(inputNumber.PhoneNumber); }
public string MessageOut(MobileAccount messageTo) { return(String.Format("{0} is messaging to {1}", _mobileNumber, messageTo.GetNumber())); }
public string CallOut(MobileAccount callingTo) { return(string.Format("{0} is calling to {1}", _mobileNumber, callingTo.GetNumber())); }
public void AddClient(MobileAccount account) { _dictOfClients.Add(account.GetNumber(), account); _journalOfActions.Add(account.GetNumber(), new JournalOfActions()); }
public bool IsExsist(MobileAccount mobileAccount) { return(accounts.Any(a => a.Phone == mobileAccount.Phone)); }
private void OnSmsConversationStarted(MobileAccount first, MobileAccount second) { Console.Write("{0} sent sms to {1}; --- ", first.Name, second.Name); second.ShowSenderName(first); }
private void OnConversationStarted(MobileAccount first, MobileAccount second) { Console.Write("{0} began to talk with {1}; --- ", first.Name, second.Name); second.ShowCallingName(first); }
static public void AddToDatabase(MobileAccount account) { listExistingNumbers.Add(account); }
public void MessageOut(MobileAccount messageTo) { Console.WriteLine(ActionOut(messageTo, "is messaging to")); MakeMessage?.Invoke(this, messageTo); }