Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/eclipse-leshan/leshan
Java Library for LWM2M
https://github.com/eclipse-leshan/leshan
bootstrap-server coap device-management eclipse eclipseiot internet-of-things iot java lwm2m lwm2m-client lwm2m-protocol lwm2m-server
Last synced: 4 days ago
JSON representation
Java Library for LWM2M
- Host: GitHub
- URL: https://github.com/eclipse-leshan/leshan
- Owner: eclipse-leshan
- License: bsd-3-clause
- Created: 2015-02-06T15:44:24.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2024-05-17T08:28:36.000Z (8 months ago)
- Last Synced: 2024-05-17T09:36:47.347Z (8 months ago)
- Topics: bootstrap-server, coap, device-management, eclipse, eclipseiot, internet-of-things, iot, java, lwm2m, lwm2m-client, lwm2m-protocol, lwm2m-server
- Language: Java
- Homepage: https://www.eclipse.org/leshan/
- Size: 11.5 MB
- Stars: 634
- Watchers: 70
- Forks: 402
- Open Issues: 90
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.BSD-3-Clause
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
![Leshan](https://eclipse.org/leshan/img/multicolor-leshan.png)
[Eclipse Leshan™](https://eclipse.org/leshan) is an OMA Lightweight M2M server and client Java implementation.
[What is OMA LWM2M ?](https://omaspecworks.org/what-is-oma-specworks/iot/lightweight-m2m-lwm2m/)
[LWM2M Specifications](https://github.com/eclipse/leshan/wiki/Lightweight-M2M-Specification).Leshan provides libraries which help people to develop their own Lightweight M2M server and client.
The project also provides a client, a server and a bootstrap server demonstration as an example of the Leshan API and for testing purpose.| LWM2M Version
Targeted | Leshan
Version | Minimal
Java Version | Development
State | Build Status | Standalone
Demos |
| - | - | - | - | - | - |
| [v1.0.x](https://github.com/eclipse/leshan/wiki/Lightweight-M2M-Specification#lightweight-m2m-v10x) | [v1.x](https://github.com/eclipse/leshan/tree/1.x)
[Supported features](https://github.com/eclipse/leshan/wiki/LWM2M-Supported-features) | Java 7 ([more details](https://github.com/eclipse-leshan/leshan/tree/1.x/documentation/Requirement.md)) | stable released | [jenkins-1.x](https://ci.eclipse.org/leshan/job/leshan-ci/job/1.x/) | [server-demo](https://ci.eclipse.org/leshan/job/leshan-ci/job/1.x/lastSuccessfulBuild/artifact/leshan-demo-server.jar)
[client-demo](https://ci.eclipse.org/leshan/job/leshan-ci/job/1.x/lastSuccessfulBuild/artifact/leshan-demo-client.jar)
[bsserver-demo](https://ci.eclipse.org/leshan/job/leshan-ci/job/1.x/lastSuccessfulBuild/artifact/leshan-demo-bsserver.jar) |
| [**v1.1.x**](https://github.com/eclipse/leshan/wiki/Lightweight-M2M-Specification#lightweight-m2m-v11x)| [**v2.x** (master)](https://github.com/eclipse/leshan/tree/master)
[Supported features](https://github.com/eclipse/leshan/wiki/LWM2M-1.1-supported-features) | Java 8 ([more details](./documentation/Requirement.md)) | **in development** |[jenkins-master](https://ci.eclipse.org/leshan/job/leshan-ci/job/master/) | [server-demo](https://ci.eclipse.org/leshan/job/leshan-ci/job/master/lastSuccessfulBuild/artifact/leshan-demo-server.jar)
[client-demo](https://ci.eclipse.org/leshan/job/leshan-ci/job/master/lastSuccessfulBuild/artifact/leshan-demo-client.jar)
[bsserver-demo](https://ci.eclipse.org/leshan/job/leshan-ci/job/master/lastSuccessfulBuild/artifact/leshan-demo-bsserver.jar) |Release (stable and milestones) are available on [maven central](https://search.maven.org/search?q=org.eclipse.leshan).
Nightly build (snapshot) are available on [eclipse repo](https://repo.eclipse.org/#view-repositories;leshan-snapshots~browsestorage). ([more details](https://github.com/eclipse/leshan/pull/885))The Leshan Documentation is available in our [wiki :blue_book:](https://github.com/eclipse/leshan/wiki).
Contact
-------Join the project mailing list : [subscribe](https://dev.eclipse.org/mailman/listinfo/leshan-dev).
Mail address: [email protected].
Access to [leshan-dev archives](https://dev.eclipse.org/mhonarc/lists/leshan-dev/).License
-------This work is dual-licensed under the Eclipse Public License v2.0 and Eclipse Distribution License v1.0
`SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause`
Test Server Sandbox
------------You can try live our servers demos instances:
* The **lwm2m server** at https://leshan.eclipseprojects.io/
_(coap://leshan.eclipseprojects.io:5683 and coaps://leshan.eclipseprojects.io:5684)_
* The **bootstrap server** at https://leshan.eclipseprojects.io/bs/
_(coap://leshan.eclipseprojects.io:5783 and coaps://leshan.eclipseprojects.io:5784)_(Automatic deployment of master branch)
![Leshan](https://www.eclipse.org/leshan/img/capture_for_github-v2.png)
Test Leshan Demos locally
-----------------------
Get and run the last binary of our demo **server** :
```
wget https://ci.eclipse.org/leshan/job/leshan-ci/job/master/lastSuccessfulBuild/artifact/leshan-demo-server.jar
java -jar ./leshan-demo-server.jar
```
Get and run the last binary of our demo **client** :
```
wget https://ci.eclipse.org/leshan/job/leshan-ci/job/master/lastSuccessfulBuild/artifact/leshan-demo-client.jar
java -jar ./leshan-demo-client.jar
```
Get and run the last binary of our **bootstrap** demo server :
```
wget https://ci.eclipse.org/leshan/job/leshan-ci/job/master/lastSuccessfulBuild/artifact/leshan-demo-bsserver.jar
java -jar ./leshan-demo-bsserver.jar
```
:information_source: : _All the demos have a `--help` option._Compile Leshan & Run Demos
-------------
Get sources :
```bash
#using ssh
git clone [email protected]:eclipse/leshan.git
```
or
```bash
#using https
git clone https://github.com/eclipse/leshan.git```
Compile it, by running in leshan root folder :
```
mvn clean install
```Run demo **server**:
```
java -jar leshan-demo-server/target/leshan-demo-server-*-SNAPSHOT-jar-with-dependencies.jar
```Connect on Leshan demo UI: http://localhost:8080
Leshan server Demo provides a very simple UI to get the list of connected clients and interact with clients resources.Now you can register a LWM2M client by running our **client** demo:
```
java -jar leshan-demo-client/target/leshan-demo-client-*-SNAPSHOT-jar-with-dependencies.jar
```
or trying the [Eclipse Wakaama](http://eclipse.org/wakaama) test client.You can also try our **bootstrap** demo server:
```
java -jar leshan-demo-bsserver/target/leshan-demo-bsserver-*-SNAPSHOT-jar-with-dependencies.jar
```Let's start to code !
---------------------
Now you played a bit with our demo, you should start to code your own server or client using our [Getting-started](https://github.com/eclipse/leshan/wiki/Getting-started) guide.