[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [wakaama-dev] Wakaama & Leshan bootstrap setup
|
Hi,
using the leshan bootstrap is a bit undocumented for the moment.
For adding bootstrap configuration you need to POST config using the JSON API.
I attached a example python script which does that.
# coding: utf-8
# # Populate bootstrap config with leshan public DM server
#
# With two security instances and one server instance (linked to one of th esecurity instances)
# In[10]:
import requests
import json
BASE_URL = "http://192.168.59.103:8080/"
url = BASE_URL + "api/bootstrap/testlwm2mclient"
data = {"servers": {"0": {"shortId": 123,
"lifetime": 20,
"defaultMinPeriod": 1,
"defaultMaxPeriod": None,
"disableTimeout": None,
"notifIfDisabled": True,
"binding": "U"}},
"security": {"0":{"uri": "coap://54.246.90.121:5683",
"bootstrapServer": False,
"securityMode": "NO_SEC",
"publicKeyOrId": [],
"serverPublicKeyOrId" : [],
"secretKey": [],
"smsSecurityMode": "NO_SEC",
"smsBindingKeyParam" : [],
"smsBindingKeySecret" : [],
"serverSmsNumber" : "+3343577464",
"serverId" : 123,
"clientOldOffTime" : 1},
"1":{"uri": "coap://172.17.42.1:5683",
"bootstrapServer": True,
"securityMode": "NO_SEC",
"publicKeyOrId": [],
"serverPublicKeyOrId" : [],
"secretKey": [],
"smsSecurityMode": "NO_SEC",
"smsBindingKeyParam" : [],
"smsBindingKeySecret" : [],
"serverSmsNumber" : "+3343577911",
"serverId" : 911,
"clientOldOffTime" : 20}}}
headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
r = requests.post(url, data=json.dumps(data), headers=headers)
print r.status_code
print r.content
# # Get bootstrap config
# In[12]:
import requests
import json
BASE_URL = "http://192.168.59.103:8080/"
endpoints_api_url = BASE_URL + "api/bootstrap"
response = requests.get(endpoints_api_url, verify=False)
print response.status_code
print response.headers
print response.content
# # Delete bootstrap config
# In[2]:
import requests
import json
BASE_URL = "http://192.168.59.103:8080/"
url = BASE_URL + "api/bootstrap/testlwm2mclient"
headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
r = requests.delete(url, data=json.dumps(data), headers=headers)
print r.status_code
print r.content
# # Bootstrap configuration with two DM servers
#
# With three security instances and two server instances
# In[7]:
import requests
import json
BASE_URL = "http://192.168.59.103:8080/"
url = BASE_URL + "api/bootstrap/testlwm2mclient"
data = {"servers": {"0": {"shortId": 123,
"lifetime": 300,
"defaultMinPeriod": 1,
"defaultMaxPeriod": None,
"disableTimeout": None,
"notifIfDisabled": True,
"binding": "U"},
"1": {"shortId": 456,
"lifetime": 30,
"defaultMinPeriod": 1,
"defaultMaxPeriod": None,
"disableTimeout": None,
"notifIfDisabled": True,
"binding": "U"}},
"security": {"0":{"uri": "coap://54.246.90.121:5683",
"bootstrapServer": False,
"securityMode": "NO_SEC",
"publicKeyOrId": [],
"serverPublicKeyOrId" : [],
"secretKey": [],
"smsSecurityMode": "NO_SEC",
"smsBindingKeyParam" : [],
"smsBindingKeySecret" : [],
"serverSmsNumber" : "+3343577464",
"serverId" : 123,
"clientOldOffTime" : 1},
"1":{"uri": "coap://172.17.42.1:5683",
"bootstrapServer": True,
"securityMode": "NO_SEC",
"publicKeyOrId": [],
"serverPublicKeyOrId" : [],
"secretKey": [],
"smsSecurityMode": "NO_SEC",
"smsBindingKeyParam" : [],
"smsBindingKeySecret" : [],
"serverSmsNumber" : "+3343577911",
"serverId" : 911,
"clientOldOffTime" : 20},
"2":{"uri": "coap://127.0.0.1:5683",
"bootstrapServer": False,
"securityMode": "NO_SEC",
"publicKeyOrId": [],
"serverPublicKeyOrId" : [],
"secretKey": [],
"smsSecurityMode": "NO_SEC",
"smsBindingKeyParam" : [],
"smsBindingKeySecret" : [],
"serverSmsNumber" : "+3343577464",
"serverId" : 456,
"clientOldOffTime" : 1}}}
headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
r = requests.post(url, data=json.dumps(data), headers=headers)
print r.status_code
print r.content
# # Bootstrap configuration with one DM server: wakaama server
# In[9]:
import requests
import json
BASE_URL = "http://192.168.59.103:8080/"
url = BASE_URL + "api/bootstrap/testlwm2mclient"
data = {"servers": {"0": {"shortId": 123,
"lifetime": 10,
"defaultMinPeriod": 1,
"defaultMaxPeriod": None,
"disableTimeout": None,
"notifIfDisabled": True,
"binding": "U"}},
"security": {"0":{"uri": "coap://127.0.0.1:5683",
"bootstrapServer": False,
"securityMode": "NO_SEC",
"publicKeyOrId": [],
"serverPublicKeyOrId" : [],
"secretKey": [],
"smsSecurityMode": "NO_SEC",
"smsBindingKeyParam" : [],
"smsBindingKeySecret" : [],
"serverSmsNumber" : "+3343577464",
"serverId" : 123,
"clientOldOffTime" : 1},
"1":{"uri": "coap://172.17.42.1:5683",
"bootstrapServer": True,
"securityMode": "NO_SEC",
"publicKeyOrId": [],
"serverPublicKeyOrId" : [],
"secretKey": [],
"smsSecurityMode": "NO_SEC",
"smsBindingKeyParam" : [],
"smsBindingKeySecret" : [],
"serverSmsNumber" : "+3343577911",
"serverId" : 911,
"clientOldOffTime" : 20}}}
headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
r = requests.post(url, data=json.dumps(data), headers=headers)
print r.status_code
print r.content
# In[8]:
import requests
import json
BASE_URL = "http://192.168.59.103:8080/"
url = BASE_URL + "api/bootstrap/testlwm2mclient"
data = {"servers": {"0": {"shortId": 123,
"lifetime": 10,
"defaultMinPeriod": 1,
"defaultMaxPeriod": None,
"disableTimeout": None,
"notifIfDisabled": True,
"binding": "U"}},
"security": {"0":{"uri": "coap://127.0.0.1:5683",
"bootstrapServer": False,
"securityMode": "NO_SEC",
"publicKeyOrId": [],
"serverPublicKeyOrId" : [],
"secretKey": [],
"smsSecurityMode": "NO_SEC",
"smsBindingKeyParam" : [],
"smsBindingKeySecret" : [],
"serverSmsNumber" : "+3343577464",
"serverId" : 123,
"clientOldOffTime" : 1}}}
headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
r = requests.post(url, data=json.dumps(data), headers=headers)
print r.status_code
print r.content