示例#1
0
        public INvr GetNvr(string NvrAddress)
        {
            var NvrHost = NvrAddress;
            var NvrPort = 38880;

            if (NvrAddress.Contains(":"))
            {
                var spltd = NvrAddress.Split(':');
                NvrHost = spltd[0];
                NvrPort = int.Parse(spltd[1]);
            }

            var nvr = SharedAcc.Nvrs.Where(p => p.Hostname == NvrHost && p.Port == NvrPort).DefaultIfEmpty(null).FirstOrDefault();

            if (nvr == null)
            {
                nvr = addNvr(NvrHost, NvrPort);
            }

            if (nvr != null && !nvr.Authenticated)
            {
                AvigilonDotNet.LoginResult loginResult = nvr.Login("administrator", "c0t0n3t3");

                if (loginResult != AvigilonDotNet.LoginResult.Successful)
                {
                    Console.WriteLine(("An error occurred while logging in to the NVR: " + loginResult.ToString()));
                }
                System.Threading.Thread.Sleep(200);
            }

            return(nvr);
        }
示例#2
0
        public INvr addNvr(string host, int port = 38880)
        {
            System.Net.IPAddress address;


            if (!System.Net.IPAddress.TryParse(host, out address))
            {
                Console.WriteLine("Invalid ADDRESS!");
                return(null);
            }

            Console.WriteLine(("connecting " + host + ":" + port.ToString() + "..."));
            AvigilonDotNet.AvgError result = m_sharedAcc.AddNvr(host, port);

            if (AvigilonDotNet.ErrorHelper.IsError(result))
            {
                Console.WriteLine("An error occurred while adding the NVR.");
                return(null);
            }

            System.Threading.Thread.Sleep(500);

            var nvr = m_sharedAcc.GetNvr(address);

            while (nvr == null)
            {
                System.Threading.Thread.Sleep(500);
                nvr = m_sharedAcc.GetNvr(address);
            }

            System.Threading.Thread.Sleep(200);


            return(nvr);
        }