in DeviceBridgeE2E/src/utility/device.ts [13:40]
static async create(
deviceId: string,
scopeId: string,
deviceKey: string
): Promise<DeviceClient> {
const dpsClient = ProvisioningDeviceClient.create(
DPS_DOMAIN,
scopeId,
new Http(),
new SymmetricKeySecurityClient(deviceId, deviceKey)
);
const result = await util.promisify(
dpsClient.register.bind(dpsClient)
)();
const connectionString = `HostName=${result!.assignedHub};DeviceId=${
result!.deviceId
};SharedAccessKey=${deviceKey}`;
const client = Client.fromConnectionString(connectionString, Mqtt);
await util.promisify(client.open.bind(client))();
const twin = (await util.promisify(
client.getTwin.bind(client)
)()) as Twin;
return new DeviceClient(deviceId, client, twin);
}