Ejemplo n.º 1
0
        /// <summary>
        /// Erstellt ein Photo und läd es auf den webserver hoch.
        /// </summary>
        private string TakeAndUpload(Dictionary<string, string> parameter)
        {
            string response;                // Beinhaltet später den response des Servers.

            // Überprüft ob der Parameter uploadurl vom Server mitgeteilt wurde.
            if (!parameter.ContainsKey("uploadurl"))
            {
                _browser.Navigate(new Uri("javascript:Krypsis.Device.Photo.Error.takeandupload({code : 5})"));
                // MessageBox.Show("Device.TakeAndUpload > [Parameter uploadurl nicht vorhanden]");
                return "";
            }
            // Überprüft ob der Parameter parametername vom Server mitgeteilt wurde.
            if (!parameter.ContainsKey("parametername"))
            {
                _browser.Navigate(new Uri("javascript:Krypsis.Device.Photo.Error.takeandupload({code : 5})"));
                // MessageBox.Show("Device.TakeAndUpload > [Parameter parametername nicht vorhanden]");
                return "";
            }
            // Überprüft ob der Parameter filename vom Server mitgeteilt wurde und wenn ja, dann wid dieser
            // als Name für das Bild verwendet.
            if (parameter.ContainsKey("filename"))
            {
                // Wenn der "filename" Parameter übergeben wurde wird dieser alls Photoname benutzt
                DeviceAgent dataAgent = new DeviceAgent();
                string path = dataAgent.MakePhoto(parameter["filename"]);
                response = NetCom.UploadFileToRemoteUrl(path, parameter["uploadurl"], parameter["parametername"]);
                //   MessageBox.Show("Device.TakeAndUpload > Bilderpfad: ["+path+"]");
                return "";

            }
            // Wurde der Parameter filename nicht mitgeteilt wird ein Name aus Pic_ und dem Datum für das Bild erstelt.
            else
            {
                // Wenn kein "filename" Paramter übergeben wurde wird ein Name aus "Pic" und einem Zeitstempel ergeugt.
                SecurityProvider securityProvider = new SecurityProvider();

                DeviceAgent dataAgent = new DeviceAgent();
                string path = dataAgent.MakePhoto("Pic_" + securityProvider.Timestamp());
                response = NetCom.UploadFileToRemoteUrl(path, parameter["uploadurl"], parameter["parametername"]);
                //  MessageBox.Show("Device.TakeAndUpload > Bilderpfad: [" + path + "]");
                return "";
            }

            if (response != null && response != "")
            {
                _browser.Navigate(new Uri("javascript:Krypsis.Device.Photo.Success.takeandupload({response : '" + response + "'})"));
                //  MessageBox.Show("Device.TakeAndUpload > [Bild wurde hoch geladen!]");
                return "";
            }
            else
            {
                _browser.Navigate(new Uri("javascript:Krypsis.Device.Photo.Error.takeandupload({code : 5})"));
                return "";
            }
        }
 protected DeviceAgent GetDeviceAgent(IList<ICallCopyEntity> callCopyEntities, string userId)
 {
     userId = userId ?? string.Empty;
     DeviceAgent deviceAgent = callCopyEntities.OfType<DeviceAgent>()
         .FirstOrDefault(x => userId.Trim().Equals(x.DeviceAgentNumber));
     if (deviceAgent == null)
     {
         Device device = GetDevice(callCopyEntities);
         deviceAgent = new DeviceAgent {Device = device, DeviceAgentNumber = userId.Trim()};
         callCopyEntities.Add(deviceAgent);
     }
     return deviceAgent;
 }
Ejemplo n.º 3
0
        internal DeviceVcs(SyncCloudAgent masterAgent, EltraDevice deviceNode, uint updateInterval, uint timeout)
        {
            if (deviceNode != null)
            {
                _deviceNode = deviceNode;

                Timeout = DefaultTimeout;

                Agent = new DeviceAgent(masterAgent, deviceNode, updateInterval, timeout);

                Agent.ParameterValueChanged += OnParameterValueChanged;

                _deviceNode.CloudConnector = Agent;
            }
        }
Ejemplo n.º 4
0
        internal DeviceVcs(DeviceAgent agent, EltraDevice deviceNode)
        {
            Timeout = DefaultTimeout;

            if (deviceNode != null)
            {
                _deviceNode = deviceNode;

                if (agent != null)
                {
                    Agent = agent;

                    Agent.ParameterValueChanged += OnParameterValueChanged;

                    _deviceNode.CloudConnector = Agent;
                }
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// DeviceVcs
        /// </summary>
        /// <param name="url"></param>
        /// <param name="uuid"></param>
        /// <param name="identity"></param>
        /// <param name="updateInterval"></param>
        /// <param name="timeout"></param>
        public DeviceVcs(string url, string uuid, UserIdentity identity, uint updateInterval, uint timeout)
        {
            if (identity != null)
            {
                _deviceNode = new EltraDevice()
                {
                    ChannelId = uuid
                };

                Timeout = DefaultTimeout;

                Agent = new DeviceAgent(url, uuid, identity, updateInterval, timeout);

                Agent.ParameterValueChanged += OnParameterValueChanged;

                _deviceNode.CloudConnector = Agent;
            }
        }
        public void RetrievesDeviceAgentFromLookupContextWithUserId()
        {
            string userId = "user";
            var expectedDeviceAgent = new DeviceAgent {DeviceAgentNumber = userId};

            _callCopyEntities.Add(expectedDeviceAgent);
            _agentBuckets.Add(AgentBucket(new DateTime(1970, 1, 1, 0, 0, 0), userId));

            ACDAgentSplitDatum acdAgentSplitDatum = _translator.Translate(_agentBuckets, _callCopyEntities).First();

            Assert.That(acdAgentSplitDatum.DeviceAgent, Is.SameAs(expectedDeviceAgent));
        }