Example #1
0
        public AstTray()
        {
            InitializeComponent();

            // Add context menu item
            var click2CallMenuItem = new ToolStripClick2Call();
            click2CallMenuItem.Call += click2CallMenuItem_Call;
            contextMenuStrip1.Items.Insert(0, click2CallMenuItem);
            // this.toolStrip1.Items.Add(click2CallMenuItem);

            if (ConfigurationManager.AppSettings["astHost"] == null)
            {
                MessageBox.Show("Unable to read configuration file. Maybe you need to rename App.config.example to App.config and add your own details to it?");
                Environment.Exit(0);
            }

            try
            {
                astCon = new ManagerConnection(ConfigurationManager.AppSettings["astHost"], int.Parse(ConfigurationManager.AppSettings["astPort"]),
                    ConfigurationManager.AppSettings["astUser"], ConfigurationManager.AppSettings["astPass"]);

                astCon.NewState +=astCon_NewState;
                astCon.Link += astCon_Link;         // added to support AMI 1.0 (Asterisk 1.4)
                astCon.ConnectionState += astCon_ConnectionState;
                astCon.Login();

                // Load Directories
                if(ConfigurationManager.AppSettings["sharedDirectoryType"] !=null)
                    switch (ConfigurationManager.AppSettings["sharedDirectoryType"].ToUpper())
                    {
                        case "CISCODIRECTORY":
                            sharedDiretory = CiscoDirectoryHelper.GetCiscoDirectory(ConfigurationManager.AppSettings["sharedDirectoryPath"]);
                            break;
                    }

                // Load into views
                if(sharedDiretory!=null)
                    foreach (var item in sharedDiretory)
                    {
                        this.sharedDirectoryListView.Items.Add(new ListViewItem(new string[] { item.Name, item.Number }));
                    }

                astTrayNotify.ShowBalloonTip(3000, "Connected", "Connected to Asterisk", ToolTipIcon.Info);
            }
            catch (Exception ex)
            {
                MessageBox.Show(string.Format("Error connecting to {0}. Error: {1}",
                    ConfigurationManager.AppSettings["astHost"],
                    ex.Message));

                // Terminate Application
                Application.Exit();
            }
        }
Example #2
0
        public AstTray()
        {
            InitializeComponent();

            // Add context menu item
            var click2CallMenuItem = new ToolStripClick2Call();

            click2CallMenuItem.Call += click2CallMenuItem_Call;
            // contextMenuStrip1.Items.Insert(0, click2CallMenuItem);
            this.toolStrip3.Items.Add(click2CallMenuItem);

            if (ConfigurationManager.AppSettings["astHost"] == null)
            {
                MessageBox.Show(
                    "Unable to read configuration file. Maybe you need to rename App.config.example to App.config and add your own details to it?");
                Environment.Exit(0);
            }

            try
            {
                AstCon = new ManagerConnection(ConfigurationManager.AppSettings["astHost"],
                                               int.Parse(ConfigurationManager.AppSettings["astPort"]),
                                               ConfigurationManager.AppSettings["astUser"], ConfigurationManager.AppSettings["astPass"]);

                AstCon.NewState        += astCon_NewState;
                AstCon.Link            += astCon_Link; // added to support AMI 1.0 (Asterisk 1.4)
                AstCon.ConnectionState += astCon_ConnectionState;
                AstCon.Login();

                // Load Directories
                if (ConfigurationManager.AppSettings["sharedDirectoryType"] != null)
                {
                    switch (ConfigurationManager.AppSettings["sharedDirectoryType"].ToUpper())
                    {
                    case "CISCODIRECTORY":
                        SharedDiretory =
                            CiscoDirectoryHelper.GetCiscoDirectory(
                                ConfigurationManager.AppSettings["sharedDirectoryPath"]);
                        break;
                    }
                }

                // Load into views
                if (SharedDiretory != null)
                {
                    foreach (var item in SharedDiretory)
                    {
                        sharedDirectoryListView.Items.Add(new ListViewItem(new[] { item.Name, item.Number }));
                    }
                }

                astTrayNotify.ShowBalloonTip(3000, "Connected", "Connected to Asterisk", ToolTipIcon.Info);
            }
            catch (Exception ex)
            {
                MessageBox.Show(
                    $"Error connecting to {ConfigurationManager.AppSettings["astHost"]}. Error: {ex.Message}");

                // Terminate Application
                Application.Exit();
            }
        }