public void To(uint prefix, string dst, string number) { if (_State == FunctionState.Idle) { FunctionState st = FunctionState.Error; if (prefix == Cd40Cfg.INT_DST) { _To = new TlfIaPosition(prefix, dst); _To.Listen(); if (_To.State == TlfState.Out) { _To.TlfPosStateChanged += OnToMonitoringCallStateChanged; st = FunctionState.Executing; Top.WorkingThread.Enqueue("SetSnmp", delegate() { string snmpString = Top.Cfg.PositionId + "_" + "LISTEN" + "_" + _To.Number; General.SafeLaunchEvent(SetSnmpString, this, new SnmpStringMsg <string, string>(Settings.Default.TlfFacilityOid, snmpString)); }); } } State = st; } }
public void To(int id) { if (_State == FunctionState.Idle) { Debug.Assert(id < Tlf.NumDestinations); TlfPosition to = Top.Tlf[id]; FunctionState st = FunctionState.Error; if (to.IsTop) { _To = new TlfIaPosition(to); _To.Listen(); if (_To.State == TlfState.Out) { _To.TlfPosStateChanged += OnToMonitoringCallStateChanged; st = FunctionState.Executing; Top.WorkingThread.Enqueue("SetSnmp", delegate() { string snmpString = Top.Cfg.PositionId + "_" + "LISTEN" + "_" + _To.Literal; General.SafeLaunchEvent(SetSnmpString, this, new SnmpStringMsg <string, string>(Settings.Default.TlfFacilityOid, snmpString)); }); } } State = st; } }