Upgrade to Pro — share decks privately, control downloads, hide ads and more …

apidays Paris 2024 - Generic and Extensible Web...

apidays
December 22, 2024

apidays Paris 2024 - Generic and Extensible Web of Things Manager Using JSON Schema & AI, Andreas Eberhart, Dashjoin

Generic and Extensible Web of Things Manager Using JSON Schema & AI
Andreas Eberhart, Co-Founder and CEO at Dashjoin GmbH

apidays Paris 2024 - The Future API Stack for Mass Innovation
December 3 - 5, 2024

------

Check out our conferences at https://www.apidays.global/

Do you want to sponsor or talk at one of our conferences?
https://apidays.typeform.com/to/ILJeAaV8

Learn more on APIscene, the global media made by the community for the community:
https://www.apiscene.io

Explore the API ecosystem with the API Landscape:
https://apilandscape.apiscene.io/

apidays

December 22, 2024
Tweet

More Decks by apidays

Other Decks in Programming

Transcript

  1. Generic and Extensible Web of Things Manager Using JSON Schema

    & AI Andreas Eberhart dashjoin.com Ege Korkan siemens.com
  2. Internet of Things • Estimated 18 Billion devices connected •

    390 Billion market, expected to double by 2030 • (statista.com) https://websites.fraunhofer.de/Lab-IoT/?p=676
  3. W3C Web of Things (WoT) • Counter the fragmentation of

    IoT o Use standardized Web technologies o Provide device metadata
  4. Thing Description • Example: Coffee Machine o http://plugfest.thingweb.io/http- advanced-coffee-machine •

    JSON-LD Context o Describes the device using agreed- upon terminology • Security Metadata • OpenAPI & more • Basic auth, OpenID, …
  5. Thing Description • Data of devices • Represented with JSON

    Schema • Properties o Device configuration & sensors • Actions o Device operations to call • Events o Async device events
  6. WoT Manager • Design Goals o Generic: Manage any device

    o Extensible: Allow apps for specific use cases • Value Add o Manage: securely connect devices o Control: call device actions o Automate: react to device events o Analyze: provide overview & dashboards
  7. Discovery & Role Based Access Control Postgres Discover & Save

    to DB Associate device to OpenID claim and device credentials Row-Level Security Access devices using credentials on behalf of the user Device credentials Identity Management
  8. Generic Properties & Actions • On every device page o

    Gather the sensors o Display a JSON Schema driven form $c := $read("wot", "thing", value.thing).credentials; $curl("GET", value.href, {}, $c ? {"Authorization": $c} : {})
  9. Background Knowledge • Integrate additional information to be able to

    answer more questions • Asset DB o Where is the device installed? • Datasheets o Additional information about the device Postgres
  10. Semantic Data Harmonization • JSON LD allows grouping similar devices

    • Not all things within the group might report data in the same format • Leverage JSONata to translate into a common format • Allows dashboarding via SQL watt ? watt : power.amount * (power.unit = 'kW' ? 1000 : 1) { "watt": 45 } "power": { "unit": "W", "amount": 45
  11. Natural Language Commands { "drinkId": "coffee", "size": "l", "quantity": 1

    } • Information extraction from text using LLMs and JSON Schema
  12. WoT Agents • Expose device actions to the LLM via

    tools • User can formulate a higher-level question or goal • LLM tries to solve the request by leveraging its background knowledge and the provided WoT tools Example: Turn off all lights in unused office spaces
  13. Summary • Standardization is important o WoT thing description (TD)

    represents any device in a uniform way o JSON Schema + TD describes how to interact with devices o JSON-LD allows categorizing devices • Allows developing generic software o Works with any kind of device • Lightweight Low Code Approach o Minimal code required o Easy to extend (custom actions, dashboards)