  We apply the Web of Things (WoT) communication pattern, i.e., the semantic
description of metadata and interaction affordances, to Internet of Things
(IoT) devices that rely on non-IP-based protocols, using Bluetooth Low Energy
(LE) as an example. The reference implementation of the WoT Scripting API,
node-wot, currently supports only IP-based application layer protocols such as
HTTP and MQTT. However, a significant number of IoT devices do not communicate
over IP, but via other network layer protocols, e.g. L2CAP used by Bluetooth
LE. To leverage the WoT abstraction in Bluetooth Low Energy communication, we
specified two ontologies to describe the capabilities of Bluetooth LE devices
and transmitted binary data, considered the different interaction possibilities
with the Linux Bluetooth stack BlueZ, and due to better documentation, used the
D-Bus API to implement Bluetooth LE bindings in JavaScript. Finally, we
evaluated the latencies of the bindings in comparison to the BlueZ tool
bluetoothctl, showing that the Bluetooth LE bindings are on average about 16
percent slower than the comparison program during connection establishment and
about 6 percent slower when disconnecting, but have almost the same performance
during reading (about 3 percent slower).
