public async Task <bool> SetConnectionInfoAsync(int slot, string serviceHostname, string deviceId) { ServiceUrlParts serviceUrlParts = new ServiceUrlParts(); serviceUrlParts.HostName = serviceHostname; serviceUrlParts.DeviceId = deviceId; bool isSuccess = await SetServiceUrlParts(slot, serviceUrlParts); return(isSuccess); }
public async Task <string> GetConnectionStringAsync(int slot = -1, uint validity = 3600) { ServiceUrlParts serviceUrlParts = await GetServiceUrlParts(slot); string sasToken = await GetSASTokenAsync(slot, validity); string connectionString = ""; if ((serviceUrlParts.HostName.Length > 0) && (serviceUrlParts.DeviceId.Length > 0) && (sasToken.Length > 0)) { connectionString = "HostName=" + serviceUrlParts.HostName + ";DeviceId=" + serviceUrlParts.DeviceId + ";SharedAccessSignature=" + sasToken; } return(connectionString); }
private async Task <bool> SetServiceUrlParts(int slot, ServiceUrlParts serviceUrlParts) { bool isSuccess = false; String serviceUrl = serviceUrlParts.HostName + "/" + serviceUrlParts.DeviceId; var result = await this._systemConfiguratorProxy.SendCommandAsync(new Message.TpmSetServiceUrlRequest(slot, serviceUrl)); var status = (result as Message.StatusCodeResponse).Status; if (status != Message.ResponseStatus.Success) { throw new Exception("Unable to set service Url in TPM"); } isSuccess = true; return(isSuccess); }
private async Task <ServiceUrlParts> GetServiceUrlParts(int slot = -1) { var result = await this._systemConfiguratorProxy.SendCommandAsync(new Message.TpmGetServiceUrlRequest(slot)); var serviceUrl = (result as Message.StringResponse).Response; var parts = serviceUrl.Split('/'); if (parts.Length != 2) { throw new Exception("Unable to parse service Url in TPM"); } ServiceUrlParts serviceUrlParts = new ServiceUrlParts(); serviceUrlParts.HostName = parts[0]; serviceUrlParts.DeviceId = parts[1]; return(serviceUrlParts); }