internal DialedNumberTester(Extension origin,string dialedNumber,string pin,DateTime? currentTime) { _origin = origin; _context = origin.Context.Name; _domain = origin.Domain.Name; _dialedNumber = dialedNumber; _pin = pin; _results = new StringBuilder(); _hungUp = false; if (currentTime == null) _currentTime = DateTime.Now; else _currentTime = currentTime.Value; }
public static DialedNumberTester TestDialNumber(Extension originatingCall, string dialNumber, string pin, DateTime? currentTime) { DialedNumberTester tester = new DialedNumberTester(originatingCall, dialNumber, pin, currentTime); ADialPlan[] plans = new ADialPlan[0]; lock (_plans) { plans = _plans.ToArray(); } bool exit=false; while(!exit){ bool startFromTop=false; foreach (ADialPlan plan in plans) { //build code here to test dialplans //plan.RunDialPlanWithConditions(tester, out exit, out startFromTop); if (exit || startFromTop) break; } } return tester; }
internal static CDR Create(string domainName,string callerIDName,string callerIDNumber,string DestinationNumber, DateTime callStart,DateTime? answerTime,DateTime endTime,long duration,long billableSecs, Context context,string uniqueID,string coreUUID,string hangupCause,Extension internalExtension,string pin) { CDR ret = new CDR(); ret.OwningDomain = Domain.Load(domainName); ret.CallerIDName = callerIDName; ret.CallerIDNumber = callerIDNumber; ret.DestinationNumber = DestinationNumber; ret.CallStart = callStart; ret.CallAnswerTime = answerTime; ret.CallEndTime = endTime; ret.Duration = duration; ret.BillableDuration = billableSecs; ret.CallContext = context; ret.UniqueID = uniqueID; ret.CoreUUID = coreUUID; ret.InternalExtension = internalExtension; ret.HangupCause = hangupCause; ret.Pin = pin; Connection conn = ConnectionPoolManager.GetConnection(typeof(CDR)); ret = (CDR)conn.Save(ret); conn.Commit(); conn.CloseConnection(); return ret; }
private Pin(PinSet owner, Extension number, string pin) { _owningSet = owner; _extension = number; _pinNumber = pin; }
public void ChangeOrigin(Extension newOrigin) { _origin = newOrigin; _results.AppendLine("Switch origin number to " + newOrigin.Number); }
public sDeployedExtension(Extension ext) { _domainName = ext.Domain.Name; _number = ext.Number; _password = ext.Password; _vm = null; _context = ext.Context.Name; _internalCallerID = ext.InternalCallerID; _internalCallerIDName = ext.InternalCallerIDName; _externalCallerID = ext.ExternalCallerID; _externalCallerIDName = ext.ExternalCallerIDName; _voicemailTimeout = ext.VoicemailTimeout; if (ext.HasVoicemail) _vm = new sDeployedVoicemail(VoiceMail.Load(ext.Number,ext.Context), Number,DomainName); }
public static User Create(string username, string firstname, string lastname, string password,string email, Extension extension,UserRight[] rights) { Log.Trace("Creating new user with username " + username); if (LoadByUsername(username)!=null) throw new Exception("Unable to create user, one already exists with that username."); User ret = new User(); ret.UserName = username; ret.FirstName = firstname; ret.LastName = lastname; ret.SetPassword(password, Constants.HTTP_AUTH_REALM); ret.UserExtension = extension; ret.Rights = rights; ret.Email = email; Connection conn = ConnectionPoolManager.GetConnection(typeof(User)); ret = (User)conn.Save(ret); conn.CloseConnection(); return ret; }