eclipse-thingweb / eclipse-thingweb/node-wot
Suggestion about adding new protocol bindings/consumers
- Dominant language
- TypeScript
- Stars
- 192
- Forks
- 100
- Avg merge
- 4d 4h
- Merged PRs (30d)
- 8
Description
Hi everyone,
I am currently writing my master thesis, which is about interoperability of protocols/systems with wot.
Till now, I made [Mozilla webthings](https://github.com/erkann-sen/wot-mozilla) and [openHAB](https://github.com/erkann-sen/wot-openhab/) consumable with node-wot with different methods.
What I wish is to somehow bring this functionality to node-wot library.
But I know that, adding a binding or helper for every platform makes the main library fatter and harder to maintain and also creates an illusion that for every platform there is another binding needed, which makes node-wot library seem hard to use and there is a discussion about what to make with Oracle and Fujitsu bindings.
When I am working with openHAB, I found their solution to this system, can be also useful for node-wot.
They have two different but connecting repos. A core repo, which has the main functionality of the system and ana add-ons repo which has several bindings or helpers for other systems.
I suggest we should have a main node-wot library, which has only the main bindings like MQTT, HTTP etc.
In another repo, we can have vendor specific bindings and helpers, all has their own readme file, which explains how to use. In this way it is also encouraged to write people more bindings to make other protocols work easily.
Advantages that I can think of are:
1. Easily readable and less complex main code
2. Easily maintainable main repo.
3. Adding another bindings are easier because it does not mess up with the main repo, which can increase the adoption of the system
4. The discussion about what to do with vendor specific bindings will end
Contributor guide
Assessment
This issue has not been assessed yet.