Ejemplo n.º 1
0
 protected override void UpdateAddress()
 {
     if (_eventControlClient != null)
     {
         string address = SMC.SmcData.Context.Instance.General.EventControlServiceAddress;
         if (address != _eventControlClient.Endpoint.Address.Uri.AbsoluteUri)
         {
             _eventControlClient = null;
         }
     }
     if (_pacsClient != null)
     {
         string address = SMC.SmcData.Context.Instance.General.PACSServiceAddress;
         if (address != _pacsClient.Endpoint.Address.Uri.AbsoluteUri)
         {
             _pacsClient = null;
         }
     }
     if (_doorControlClient != null)
     {
         string address = SMC.SmcData.Context.Instance.General.ManagementServiceAddress;
         if (address != _doorControlClient.Endpoint.Address.Uri.AbsoluteUri)
         {
             _doorControlClient = null;
         }
     }
     if (_schedulePortControlClient != null)
     {
         string address = SMC.SmcData.Context.Instance.General.ScheduleServiceAddress;
         if (address != _schedulePortControlClient.Endpoint.Address.Uri.AbsoluteUri)
         {
             _schedulePortControlClient = null;
         }
     }
 }
        /*
        protected UserServiceCapabilities GetUserServiceCapabilities()
        {
            UserPortClient client = UserPortClient;
            UserServiceCapabilities capabilities = null;
            RunStep(() => { capabilities = client.GetServiceCapabilities(); }, "Get Service Capabilities");
            return capabilities;
        }
        */

        protected AccessControlServiceCapabilities GetAccessControlCapabilities()
        {
            PACSPortClient client = PACSPortClient;
            AccessControlServiceCapabilities capabilities = null;
            RunStep(() => { capabilities = client.GetServiceCapabilities(); }, "Get Service Capabilities");
            return capabilities;
        }
        protected AccessPointInfo[] GetAccessPointInfo(string[] tokensList, string stepName)
        {
            PACSPortClient client = PACSPortClient;

            AccessPointInfo[] info = null;
            RunStep(() => { info = client.GetAccessPointInfo(tokensList); }, stepName);
            DoRequestDelay();
            return(info);
        }
        protected void DisableAccessPoint(string token)
        {
            PACSPortClient client = PACSPortClient;

            RunStep(
                () => { client.DisableAccessPoint(token); },
                string.Format("Disable AccessPoint [token='{0}']", token));
            DoRequestDelay();
        }
Ejemplo n.º 5
0
        public void AccessControlServiceCapabilitiesTest()
        {
            RunTest(() =>
            {
                // Initialize client
                PACSPortClient client = PACSPortClient;

                AccessControlServiceCapabilities capabilities = GetAccessControlCapabilities();
            });
        }
        void ExternalAuthorization(string accessPointToken, string credentialToken, string reason, Decision decision)
        {
            PACSPortClient client = PACSPortClient;

            RunStep(
                () =>
                { PACSPortClient.ExternalAuthorization(accessPointToken, credentialToken, reason, decision); },
                "External Authorizaton");
            DoRequestDelay();
        }
Ejemplo n.º 7
0
        protected string GetAreaInfoList(int?limit, string offset, out AreaInfo[] list, string stepName)
        {
            PACSPortClient client        = AccessControlClient;
            string         nextReference = null;

            AreaInfo[] infos = null;
            RunStep(() => { nextReference = client.GetAreaInfoList(limit, offset, out infos); }, stepName);
            DoRequestDelay();
            list = infos;
            return(nextReference);
        }
Ejemplo n.º 8
0
 protected void CheckClientValid()
 {
     if (_pacsClient != null)
     {
         string address = SMC.SmcData.Context.Instance.General.PACSServiceAddress;
         if (address != _pacsClient.Endpoint.Address.Uri.AbsoluteUri)
         {
             _pacsClient = null;
         }
     }
 }
        protected AccessPointState GetAccessPointState(string token)
        {
            PACSPortClient client = PACSPortClient;

            AccessPointState state = null;

            RunStep(
                () => { state = client.GetAccessPointState(token); },
                string.Format("Get AccessPoint state [token='{0}']", token));
            DoRequestDelay();
            return(state);
        }
        public void ExternalAuthorizationInvalidTokenTest()
        {
            RunTest(() =>
            {
                PACSPortClient client = PACSPortClient;

                string token = Guid.NewGuid().ToString().Substring(0, 8);
                RunStep(
                    () => { PACSPortClient.ExternalAuthorization(token, null, "Test Access Granted", Decision.Granted); },
                    "External Authorization with invalid token",
                    OnvifFaults.NotFound,
                    true);
            });
        }
Ejemplo n.º 11
0
        public void AccessControlServiceCapabilitiesConsistencyTest()
        {
            RunTest(() =>
            {
                PACSPortClient client = PACSPortClient;

                XmlElement capabilitiesElement = GetServiceCapabilities(OnvifService.ACCESSCONTROL, "Access Control");

                AccessControlServiceCapabilities capabilities = GetAccessControlCapabilities();

                AccessControlServiceCapabilities serviceCapabilities = ParseAccessControlCapabilities(capabilitiesElement);

                CompareCapabilities(serviceCapabilities, capabilities);
            });
        }
        public void ExternalAuthorizationCommandNotSupportedTest()
        {
            RunTest(() =>
            {
                List <AccessPointInfo> accessPointInfos = GetAccessPointInfoList();

                List <AccessPointInfo> filtered =
                    accessPointInfos.Where(API =>
                                           API.Capabilities != null &&
                                           !(API.Capabilities.ExternalAuthorizationSpecified &&
                                             API.Capabilities.ExternalAuthorization)).ToList();

                foreach (AccessPointInfo info in filtered)
                {
                    RunStep(
                        () => { PACSPortClient.ExternalAuthorization(info.token, null, "Test Access Granted", Decision.Granted); },
                        "External Authorization", "Receiver/ActionNotSupported/NotSupported", true);
                }
            });
        }
        protected List <AccessPointInfo> GetAccessPointInfoList()
        {
            PACSPortClient client = PACSPortClient;

            PACS.GetListMethod <AccessPointInfo> getList =
                new PACS.GetListMethod <AccessPointInfo>(
                    (int?limit, string offset, out AccessPointInfo[] list) =>
            {
                string newOffset        = null;
                AccessPointInfo[] infos = null;
                RunStep(() => { newOffset = client.GetAccessPointInfoList(limit, offset, out infos); }, "Get AccessPointInfo list");
                list = infos;
                return(newOffset);
            });

            List <AccessPointInfo> fullList = PACS.Extensions.GetFullList(getList, null, "AccessPointInfo", Assert);

            Assert(fullList.Count > 0,
                   "No AccessPointInfos returned",
                   "Check that the list of AccessPointInfos is not empty");

            return(fullList);
        }