/// <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; }
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; } }
internal DeviceVcs(DeviceAgent agent, EltraDevice deviceNode) { Timeout = DefaultTimeout; if (deviceNode != null) { _deviceNode = deviceNode; if (agent != null) { Agent = agent; Agent.ParameterValueChanged += OnParameterValueChanged; _deviceNode.CloudConnector = Agent; } } }
/// <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)); }