public static string TryConvertToE164PhoneNumber(IPhoneNumber phoneNumber, out ValidationResult errorType) { Exception error; string e164PhoneNumber = getE164PhoneNumber(phoneNumber, out errorType, out error); return(e164PhoneNumber ?? phoneNumber.Number); }
public void GetCall(IPhoneNumber from) { if (Port != null) { OnIncomingCall(this, from); } }
public static bool NumbersAreEquivalent(IPhoneNumber number1, IPhoneNumber number2) { string number1Stripped = Strip(number1); string number2Stripped = Strip(number2); return(number1Stripped.Equals(number2Stripped)); }
private void OnOutgoingCall(object sender, IPhoneNumber phone) { var answerer = _terminalService.FindTerminalByNumber(phone); var caller = sender as Terminal; if (answerer != null && caller != null) { caller.RememberConnection(caller.Number, phone); _portService.ChangeState(caller.Port, PortState.Busy); CallInfo info = new CallInfo { From = caller.Number, To = phone, DateTimeStart = DateTime.Now, Duration = TimeSpan.Zero }; _callService.AddCall(info); if (answerer.Port.State != PortState.Busy) { answerer.GetCall(caller.Number); } else { Console.WriteLine($"Terminal is busy"); caller.RejectCall(); } } else { Console.WriteLine($"Phone not binded to terminal"); caller.RejectCall(); } }
public static bool IsValidOoredooNumber(this IPhoneNumber phoneNumber) { return(phoneNumber .WithMask("002135########") .WithMask("+2135########") .IsValid()); }
public static bool IsValidDjezzyNumber(this IPhoneNumber phoneNumber) { return(phoneNumber .WithMask("002137########") .WithMask("+2137########") .IsValid()); }
public CallerId(string name, IPhoneNumber number) { if (name == null) throw new ArgumentNullException("name"); if (number == null) throw new ArgumentNullException("number"); _name = name; _number = number; }
public PhoneNumberModel(IPhoneNumber data) { this.Id = data.PhoneNumberId; this.Uid = data.PhoneNumberUid; this.Number = data.Number; this.Type = data.Type; }
private void OnIncomingCall(object sender, IPhoneNumber phone) { var answerer = sender as Terminal; _portService.ChangeState(answerer.Port, PortState.Busy); answerer.RememberConnection(phone, answerer.Number); }
public static bool IsValidMobilisNumber(this IPhoneNumber phoneNumber) { return(phoneNumber .WithMask("002136########") .WithMask("+2136########") .IsValid()); }
public static bool NumbersAreEquivalent(IPhoneNumber number1, IPhoneNumber number2) { string number1Stripped = Strip(number1); string number2Stripped = Strip(number2); return number1Stripped.Equals(number2Stripped); }
public PhoneNumber(IPhoneNumber data) { PhoneNumberId = data.PhoneNumberId; PhoneNumberUid = data.PhoneNumberUid; Number = data.Number; Type = data.Type; }
public void Call(IPhoneNumber to) { if (Port != null) { OnOnutgoingCall(this, to); } }
static IPhoneNumber GetPhoneNumber(IContact contact, IObjectHelper objectHelper) { IPhoneNumber phoneNumber = objectHelper.CreatePhoneNumber(contact); phoneNumber.Number = "+0 000 111 222 333"; phoneNumber.PhoneType = "Work"; return(phoneNumber); }
//################################################################################ #region Constructor public Client(CountryCode countryCode) { this.m_Factory = FactoryProvider.CreateFactory(countryCode); this.m_Address = this.m_Factory.CreateAddressFormat(); this.m_PhoneNumber = this.m_Factory.CreatePhoneNumberFormat(); this.m_LicencePlate = this.m_Factory.CreateLicencePlateFormat(); }
public static string TryConvertToRegionE164PhoneNumber( IPhoneNumber phoneNumber, out ValidationResult errorType) { Exception error; return(InternalConvertToRegionE164PhoneNumber(phoneNumber, out errorType, out error)); }
public void RememberConnection(IPhoneNumber from, IPhoneNumber to) { Connection = new Connection() { From = from, To = to }; }
public static PhoneDestinationType GetPhoneDestinationType(this IPhoneNumber phoneNumberObject, int?defCountryCode) { if (!phoneNumberObject.CountryCode.HasValue || phoneNumberObject.CountryCode.Value == defCountryCode) { return(PhoneDestinationType.Domestic); } return(PhoneDestinationType.International); }
public async Task SendSMS(IPhoneNumber receiver) { TwilioClient.Init(Account_SID, AUTH_TOKEN); var message = await MessageResource.CreateAsync( body : "Your student's grade has dropped below a 70.", from : new Twilio.Types.PhoneNumber(TwilioPhoneNumber), to : new Twilio.Types.PhoneNumber($"1{receiver.PhoneNumber}") ); }
/// <summary> /// Get toll free phone number assigned to the applcation by name (or reserve it if need) /// </summary> /// <param name="phoneNumber">IPhoneNumber instance</param> /// <param name="availableNumber">IAvailableNumber instance</param> /// <param name="applicationId">Application Id</param> /// <param name="name">Name of allocated phone number</param> /// <param name="cancellationToken">Cancellation token</param> /// <returns>Phone number</returns> public static async Task <string> GetOrCreateTollFreeAsync(this IPhoneNumber phoneNumber, IAvailableNumber availableNumber, string applicationId, string name = null, CancellationToken?cancellationToken = null) { var existingNumber = phoneNumber.GetByName(applicationId, name); if (existingNumber != null) { return(existingNumber.Number); } return(await phoneNumber.CreateTollFreeAsync(availableNumber, applicationId, name, cancellationToken)); }
public static string ToParsableString(IPhoneNumber phoneNumber) { try { return(ToRegionE164PhoneNumber(phoneNumber)); } catch { return(phoneNumber.Number ?? string.Empty); } }
public static string GetFullNumber(this IPhoneNumber phoneNumberObject) { if (!phoneNumberObject.CountryCode.HasValue || string.IsNullOrWhiteSpace(phoneNumberObject.LocalNumberWithAreaCode)) { return(phoneNumberObject.LocalNumberWithAreaCode); } var localNumber = GetLocalNumberInDigits(phoneNumberObject); return(phoneNumberObject.CountryCode.Value + localNumber); }
public static PhoneNumber CreatePhoneNumber(IPhoneNumber data) { var phoneNumber = new PhoneNumber { Number = data.Number, PhoneNumberUid = data.PhoneNumberUid, Type = (int)data.Type }; return(phoneNumber); }
/// <summary> /// Inserts a new phone number into the DAL. /// </summary> /// <param name="data">DTO to create from</param> /// <returns>An PhoneNumber DAL object</returns> /// <exception cref="System.ArgumentException">Errors in data will result in an exception being thrown</exception> public IPhoneNumber InsertPhoneNumber(IPhoneNumber data) { var db = new Context(); var pn = PhoneNumber.CreatePhoneNumber(data); db.PhoneNumbers.Add(pn); db.SaveChanges(); return(pn); }
public static string ToRegionE164PhoneNumber(IPhoneNumber phoneNumber) { ValidationResult errorType; Exception error; string result = InternalConvertToRegionE164PhoneNumber(phoneNumber, out errorType, out error); if (errorType != ValidationResult.Success) { throw error; } return(result); }
public CallerId(string name, IPhoneNumber number) { if (name == null) { throw new ArgumentNullException("name"); } if (number == null) { throw new ArgumentNullException("number"); } _name = name; _number = number; }
/// <summary> /// Allocate local phone number and assign it to the application /// </summary> /// <param name="phoneNumber">IPhoneNumber instance</param> /// <param name="availableNumber">IAvailableNumber instance</param> /// <param name="applicationId">Application Id</param> /// <param name="query">Optioons to allocate number</param> /// <param name="name">Name of allocated phone number</param> /// <param name="cancellationToken">Cancellation token</param> /// <returns>Created phone number</returns> public static async Task <string> CreateLocalAsync(this IPhoneNumber phoneNumber, IAvailableNumber availableNumber, string applicationId, LocalNumberQueryForOrder query = null, string name = null, CancellationToken?cancellationToken = null) { query = query ?? new LocalNumberQueryForOrder(); query.Quantity = 1; var result = (await availableNumber.SearchAndOrderLocalAsync(query, cancellationToken)).First(); await phoneNumber.UpdateAsync(result.Id, new UpdatePhoneNumberData { ApplicationId = applicationId, Name = name }, cancellationToken); return(result.Number); }
public void ShouldSetContactProfile([Frozen] IContactProfileProvider contactProfileProvider, string key, IPhoneNumber phoneNumber, string firstName, string lastName, IContactPersonalInfo personalInfo, Sitecore.Analytics.Tracking.Contact contact) { contactProfileProvider.Contact.Returns(contact); var contactProfileService = new ContactProfileService(contactProfileProvider); contactProfileProvider.PersonalInfo.Returns(personalInfo); var profile = new EditProfile(); profile.FirstName = firstName; profile.LastName = lastName; profile.PhoneNumber = phoneNumber.Number; contactProfileService.SetProfile(profile); contactProfileProvider.PersonalInfo.FirstName.ShouldBeEquivalentTo(profile.FirstName); contactProfileProvider.PersonalInfo.Surname.ShouldBeEquivalentTo(profile.LastName); contactProfileProvider.PhoneNumbers.Entries[contactProfileProvider.PhoneNumbers.Preferred].Number.ShouldBeEquivalentTo(profile.PhoneNumber); }
static string InternalConvertToRegionE164PhoneNumber( IPhoneNumber phoneNumber, out ValidationResult errorType, out Exception error) { string e164PhoneNumber = getE164PhoneNumber(phoneNumber, out errorType, out error); if (string.IsNullOrEmpty(e164PhoneNumber)) { return(e164PhoneNumber); } return(phoneNumber.CountryCode + "|" + e164PhoneNumber); }
/// <summary> /// Allocate toll free number and assign it to the application /// </summary> /// <param name="phoneNumber">IPhoneNumber instance</param> /// <param name="availableNumber">IAvailableNumber instance</param> /// <param name="applicationId">Application Id</param> /// <param name="name">Name of allocated phone number</param> /// <param name="cancellationToken">Cancellation token</param> /// <returns>Created phone number</returns> public static async Task <string> CreateTollFreeAsync(this IPhoneNumber phoneNumber, IAvailableNumber availableNumber, string applicationId, string name = null, CancellationToken?cancellationToken = null) { var query = new TollFreeNumberQuery { Quantity = 1 }; var result = (await availableNumber.SearchAndOrderTollFreeAsync(query, cancellationToken)).First(); await phoneNumber.UpdateAsync(result.Id, new UpdatePhoneNumberData { ApplicationId = applicationId, Name = name }, cancellationToken); return(result.Number); }
public PhoneNumberDTO(IPhoneNumber phoneNumber) { if (phoneNumber.Id < 0) { throw new ArgumentOutOfRangeException($"{nameof(phoneNumber.Id)} cannot be less than 0."); } ValidateInParameters(phoneNumber.Value, phoneNumber.Type); Id = phoneNumber.Id; Value = phoneNumber.Value; Type = phoneNumber.Type; Active = phoneNumber.Active; sa_Info = phoneNumber.sa_Info; }
public static string Strip(IPhoneNumber number) { if (number.Number == null) { return(null); } string strippedNumber; strippedNumber = number.Number; strippedNumber = CharStripRegex.Replace(strippedNumber, ""); try { if (!string.IsNullOrEmpty(number.Country)) { string countryCallingCode = CountryCallingCodeFinder.GetCountryCallingCode(number.Country); Regex countryCodeRegex = new Regex(@"^\+?" + countryCallingCode); strippedNumber = countryCodeRegex.Replace(strippedNumber, ""); } } catch { ; } strippedNumber = StripLeadingZeroes(strippedNumber, number.Country); // // Strip any remaining +'s // strippedNumber = strippedNumber.Replace("+", ""); // // In an 11 digit US/Canadian number with a leading 1, strip the leading 1. // if ((number.Country == CountryCallingCodeFinder.CountryAbbreviationUnitedStates) || (number.Country == CountryCallingCodeFinder.CountryAbbreviationCanada) || string.IsNullOrEmpty(number.Country)) { if ((strippedNumber.Length == 11) && (strippedNumber.StartsWith("1"))) { strippedNumber = strippedNumber.Substring(1); } } return(strippedNumber); }
public static string Strip(IPhoneNumber number) { if (number.Number == null) { return null; } string strippedNumber; strippedNumber = number.Number; strippedNumber = CharStripRegex.Replace(strippedNumber, ""); try { if (!string.IsNullOrEmpty(number.Country)) { string countryCallingCode = CountryCallingCodeFinder.GetCountryCallingCode(number.Country); Regex countryCodeRegex = new Regex(@"^\+?" + countryCallingCode); strippedNumber = countryCodeRegex.Replace(strippedNumber, ""); } } catch { ; } strippedNumber = StripLeadingZeroes(strippedNumber, number.Country); // // Strip any remaining +'s // strippedNumber = strippedNumber.Replace("+", ""); // // In an 11 digit US/Canadian number with a leading 1, strip the leading 1. // if ((number.Country == CountryCallingCodeFinder.CountryAbbreviationUnitedStates) || (number.Country == CountryCallingCodeFinder.CountryAbbreviationCanada) || string.IsNullOrEmpty(number.Country)) { if ((strippedNumber.Length == 11) && (strippedNumber.StartsWith("1"))) { strippedNumber = strippedNumber.Substring(1); } } return strippedNumber; }
protected void AddPhoneNumber(IPhoneNumber phoneNumberToAdd) { // // If the number is already in the phone number list, ignore it. // foreach (IPhoneNumber phoneNumber in PhoneNumbers) { if (PhoneNumber.NumbersAreEquivalent(phoneNumber, phoneNumberToAdd)) { return; } } this.PhoneNumbers.Add(phoneNumberToAdd); }
public static string FormatNumberWithDashes(IPhoneNumber phoneNumber) { string phoneNumberStripped = PhoneNumber.Strip(phoneNumber); if (_onlyNumbersRegex.IsMatch(phoneNumberStripped) && (string.IsNullOrEmpty(phoneNumber.Country) || CountryUsesAmericanStylePhoneFormat(phoneNumber.Country))) { return string.Format("{0}-{1}-{2}", phoneNumberStripped.Substring(0, 3), phoneNumberStripped.Substring(3, 3), phoneNumberStripped.Substring(6, 4)); } else { return string.Format("{0}", phoneNumberStripped); } }
private string FormatPhone(IPhoneNumber phoneNumber) { var formattedPhone = ""; if (!string.IsNullOrEmpty(phoneNumber.CountryCode)) { formattedPhone += $"+{phoneNumber.CountryCode}"; } formattedPhone = string.Join(" ", formattedPhone, phoneNumber.Number).Trim(); if (!string.IsNullOrEmpty(phoneNumber.Extension)) { formattedPhone = string.Join("x", formattedPhone, phoneNumber.Extension).Trim(); } return(formattedPhone); }
public MockContact(string firstName, string lastName, IPhoneNumber phoneNumber) : this(firstName, null, lastName, phoneNumber) { ; }
public MockContact(string firstName, string middleName, string lastName, IPhoneNumber phoneNumber) : base(MockContactId, firstName, middleName, lastName, phoneNumber) { ; }
public bool IsEquivalentTo(IPhoneNumber number) { return NumbersAreEquivalent(this, number); }
private string FormatPhone(IPhoneNumber phoneNumber) { var formattedPhone = ""; if (!string.IsNullOrEmpty(phoneNumber.CountryCode)) { formattedPhone += $"+{phoneNumber.CountryCode}"; } formattedPhone = string.Join(" ", formattedPhone, phoneNumber.Number).Trim(); if (!string.IsNullOrEmpty(phoneNumber.Extension)) { formattedPhone = string.Join("x", formattedPhone, phoneNumber.Extension).Trim(); } return formattedPhone; }
public static string FormatForContactList(IPhoneNumber phoneNumber) { return FormatNumberWithDashes(phoneNumber); }