Azure Digital Twins

Azure Digital Twins is a platform that provides organizations with the foundation they need to create the next generation of IoT solutions. With Azure Digital Twins, you can virtually replicate the physical world by modeling the relationships between people, places, and devices in a special intelligence graph. You can use predefined data schema that are aligned to a solution’s domain-specific needs and that can accelerate and simplify it’s creation. You can query data in the context of a space rather than from disparate sensors. And you can build solutions that scale and replicate across multiple tenants.

More details are available in the Azure Digital Twins documentation. If you have a technical issue, please open a post on the developer forums through Stack Overflow.

  1. Link arbitrary sensor data types to arbitrary data sub types/data unit types

    Currently, if you'd add a new sensor, for instance a 'Gas' sensor, we'd like to provide the following types:
    Type: Manufacturer
    Data type: Gas
    Data sub type: Delivery
    Data unit type: CubicMeterGas

    However, the Data sub type has to be named 'DeliveryGas'. Even though we'd also like an Energy sensor with:
    Type: Manufacturer
    Data type: Energy
    Data sub type: Delivery
    Data unit type: KilowattHourEnergy

    Now we have to define two separate sub types. If this is by design, let us know :)

    11 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  Feature Request  ·  Flag idea as inappropriate…  ·  Admin →
  2. Unable to push data for some sensor hardware ids

    I made a setup using the csharp ProvisionSample flow.

    Simplified the user defined function to just set the sensor value in the graph:

    function process(telemetry, executionContext) {

    try {
    
    // Log SensorId and Message
    log(`Sensor ID: ${telemetry.SensorId}. `);
    log(`Sensor value: ${JSON.stringify(telemetry.Message)}.`);

    // Get sensor metadata
    var sensor = getSensorMetadata(telemetry.SensorId);

    // Retrieve the sensor reading
    var parseReading = JSON.parse(telemetry.Message);

    // Set the sensor reading as the current value for the sensor.
    setSensorValue(telemetry.SensorId, sensor.DataType, parseReading.SensorValue);

    } catch (error) {
    log(`An error has occurred processing the UDF Error: ${error.name} Message ${error.message}.`);
    }

    }

    Created some spaces, with a device in one of them,…

    5 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  Bug  ·  Flag idea as inappropriate…  ·  Admin →
  3. Error 500.600.999.999

    After deleting my Digital Twins instance and deploying one with the same name a few minutes later I can't make any requests to the instance without the following error:

    {
    "error": {

    "code": "500.600.999.999",
    
    "message": "The underlying provider failed on Open.",
    "innererror": {
    "code": "500.600.999.999",
    "message": "Login failed for user 'ManagementApi'."
    }

    }
    }

    This occurs on a GET request to
    https://<instance-name>.westeurope.azuresmartspaces.net/management/api/v1.0/devices

    4 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Bug  ·  Flag idea as inappropriate…  ·  Admin →

    Thanks for the post! Please post bugs and questions in our question forums so that we can support you better:

    Microsoft Q&A – https://docs.microsoft.com/en-us/answers/topics/azure-digital-twins.html
    StackOverflow – https://stackoverflow.com/questions/tagged/azure-digital-twins

    Also, check out the latest version of Azure Digital Twins – https://docs.microsoft.com/en-us/azure/digital-twins/overview-differences

    Riley
    Azure Digital Twins team

  4. PUT /management/api/v1.0/endpoints/{id}

    Hello,

    I am trying to replace an already existing endpoint to make it point to a different Events Hub instance. Checking the swagger documentation for my Digital Twins, I saw the PUT /endpoints/{id} which should do just that.
    But, I am currently getting a surprising error:
    {

    &quot;error&quot;: {
    
    &quot;code&quot;: &quot;400.600.000.000&quot;,
    &quot;message&quot;: &quot;An eventhub endpoint with DeviceMessage eventType has already been created. Only one endpoint of this combination can be created.&quot;
    }

    }

    This is a similar body to the one that I am using:
    {
    "type": "EventHub",
    "eventTypes": [

    &quot;DeviceMessage&quot;
    

    ],
    "connectionString": "Endpoint=sb://my-namespace.servicebus.windows.net/;SharedAccessKeyName=full-permissions;SharedAccessKey=someKey;EntityPath=my-entity",
    "secondaryConnectionString": "Endpoint=sb://my-namespace.servicebus.windows.net/;SharedAccessKeyName=full-permissions;SharedAccessKey=someKey;EntityPath=my-instance",
    "path": "my-instance"
    }

    Is…

    4 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Bug  ·  Flag idea as inappropriate…  ·  Admin →

    Thanks for the post! Please post bugs and questions in our question forums so that we can support you better:

    Microsoft Q&A – https://docs.microsoft.com/en-us/answers/topics/azure-digital-twins.html
    StackOverflow – https://stackoverflow.com/questions/tagged/azure-digital-twins

    Also, check out the latest version of Azure Digital Twins – https://docs.microsoft.com/en-us/azure/digital-twins/overview-differences

    Riley
    Azure Digital Twins team

  5. Error when creating a property key of type 'DateTime' and min/max values

    When we specify a min and/or max value for creating a property key of type 'DateTime', we get an error stating that the min/max is invalid.

    According to the doc, ISO8601 datetimes should be used, but:
    - DateTime.ToString("o") gives a value that is too long (more than 20 chars, due to milliseconds);
    - A string like "2000-01-01T00:00:00Z" is not accepted for instance;
    - Tried with epoch notation, no luck either;

    Do you have an example of a proper value? Could the documentation be updated to show such example? Or if it is a bug, then...

    Thanks!

    4 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Bug  ·  Flag idea as inappropriate…  ·  Admin →
  6. Moving a device from a space to another does not automatically move the attached sensors

    Hello,

    I recently moved a device from one spaceId to another via API call from Postman. To my surprise, the sensors attached to that device were still assigned to the previous spaceId. But, in the Azure Digital Twins Graph Viewer, they were properly displayed. Is this a bug in the API or is it a desired behaviour?

    Kind regards,
    Tudor Mazilu

    3 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Bug  ·  Flag idea as inappropriate…  ·  Admin →

    Thanks for the post! Please post bugs and questions in our question forums so that we can support you better:

    Microsoft Q&A – https://docs.microsoft.com/en-us/answers/topics/azure-digital-twins.html
    StackOverflow – https://stackoverflow.com/questions/tagged/azure-digital-twins

    Also, check out the latest version of Azure Digital Twins – https://docs.microsoft.com/en-us/azure/digital-twins/overview-differences

    Riley
    Azure Digital Twins team

  7. Please fix the ErrorInformation metadata produced in the Open API spec for Digital Twins

    Here's what the API metadata says is produced for ErrorInformation when creating a new Device with a POST call:

    {
    "code": "string",
    "message": "string",
    "target": "string",
    "details": [

    null
    

    ],
    "exception": {}
    }

    Here's what's actually produced:

    {"error":{"code":"400.600.000.000","message":"Device already exists."}}

    The claimed ErrorInformation object is actually a child of what's produced in the "error" property, rather than being the root object. Please fix this as it is breaking our error handling strategies for Digital Twin.

    2 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Bug  ·  Flag idea as inappropriate…  ·  Admin →
  8. How do you deal with conflictig permissions in Role defintions?

    How do you deal with conflictig permissions in Role defintions?

    Is it a union of all permissions or intersection?

    2 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    Thanks for the post! Please post bugs and questions in our question forums so that we can support you better:

    Microsoft Q&A – https://docs.microsoft.com/en-us/answers/topics/azure-digital-twins.html
    StackOverflow – https://stackoverflow.com/questions/tagged/azure-digital-twins

    Also, check out the latest version of Azure Digital Twins – https://docs.microsoft.com/en-us/azure/digital-twins/overview-differences

    Riley
    Azure Digital Twins team

  9. Role assignment API - how do I obtain object ID for a service principal/user? Is there some API which retrieves object Id given upn or name?

    Role assignment API - how do I obtain object ID for a service principal/user? Is there some API which retrieves object Id given upn or name?

    2 votes
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    Thanks for the post! Please post bugs and questions in our question forums so that we can support you better:

    Microsoft Q&A – https://docs.microsoft.com/en-us/answers/topics/azure-digital-twins.html
    StackOverflow – https://stackoverflow.com/questions/tagged/azure-digital-twins

    Also, check out the latest version of Azure Digital Twins – https://docs.microsoft.com/en-us/azure/digital-twins/overview-differences

    Riley
    Azure Digital Twins team

  10. IOT Hub connection string - Azure Digital Twin

    I am doing some POC on Azure Digital Twin. So i am using some DT samples available on GitHub by azure. But those samples require IOT Hub connection string to enter. But i am not able to find the IOT hub connection string any where in Azure Digital Twin.

    for example, see this following line:

    IoT Hub connection string has to be set to system environment variable IOTHUBCONNECTIONSTRING

    How can i get this connection string, i can have device connection string but i can not have iot hub connection string.

    I want to ask is there any way…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  11. I get the following error related to IoT Hub resource creation: "error": "Cannot establish connection using the connectionString provided.

    I've run this example a couple of times and now I am trying to modify the spaces, devices and sensors. IoT Hub resource creation fails and I get the following error when I call GET resources API:
    "error": "Cannot establish connection using the connectionString provided. EndpointName:customer-eventhub, exceptionMessage:An error occurred during communication with 'N/A'. Check the connection information, then retry. If you contact a support representative please include this correlation identifier: nnnnnnnn, timestamp: 2020-01-03 21:51:45Z, errorcode: IH400116.".

    1 vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Bug  ·  Flag idea as inappropriate…  ·  Admin →
  12. IotHub Device Configuration should allow device twin path to be properties.tags

    it should be possible to create a device configuration with device twin properties containing certain tags

    1 vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Feature Request  ·  Flag idea as inappropriate…  ·  Admin →
  13. Please fix the paging for Devices

    The paging for Devices is broken: the pagination is applied BEFORE the query filter, so unless your desired results are in the "$top" X items, you won't get them.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Microsoft
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Bug  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Azure Digital Twins

Categories

Feedback and Knowledge Base