Exemple #1
0
        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;
            }
        }
Exemple #2
0
        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;
            }
        }