Node.js Quick Start
来自Jack's Lab
(版本间的差异)
(→libcoap) |
(→MQTT) |
||
第84行: | 第84行: | ||
== MQTT == | == MQTT == | ||
+ | |||
+ | === Server === | ||
<source lang=bash> | <source lang=bash> | ||
$ npm install mosca bunyan -g | $ npm install mosca bunyan -g | ||
</source> | </source> | ||
+ | |||
+ | === Client === | ||
+ | |||
+ | <source lang=bash> | ||
+ | $ npm install MQTTClient | ||
+ | </source> | ||
+ | |||
+ | <pre> | ||
+ | var MQTTClient = require('MQTTClient').Client; | ||
+ | |||
+ | // if you don't assigned a client_id, will automatically assigns one | ||
+ | // 如果没有指定client_id,则程序会自动分配一个 | ||
+ | var options = { | ||
+ | client_id: 'you_client_id' | ||
+ | } | ||
+ | var client = new MQTTClient('localhost', 1883, options); | ||
+ | |||
+ | client.connect(function () { | ||
+ | // do something if connect success | ||
+ | // 在此处写连接成功后执行的代码 | ||
+ | }); | ||
+ | </pre> | ||
<br><br> | <br><br> |
2015年11月18日 (三) 14:31的版本
目录 |
1 Setup
下载安装包:http://nodejs.cn/download/
Linux x86_64 下 node-xx-linux-x64.tar.gz
comcat@jackslab:/work/nodejs$ sudo tar --strip-components 1 -zxf node-v0.12.7-linux-x64.tar.gz -C /usr/local/ comcat@jackslab:/work/nodejs$ node -v v0.12.7
2 Try
comcat@jackslab:/work/nodejs$ npm install coap-cli -g coap-cli@0.3.0 node_modules/coap-cli ├── commander@2.0.0 ├── through2@0.4.2 (xtend@2.1.2, readable-stream@1.0.33) └── coap@0.5.4 (lru-cache@2.5.2, coap-packet@0.1.12, backoff@2.3.0, bl@0.6.0) comcat@jackslab:/work/nodejs$ coap Usage: coap [command] [options] url Commands: get performs a GET request put performs a PUT request post performs a POST request delete performs a DELETE request Options: -h, --help output usage information -V, --version output the version number -o, --observe Observe the given resource -n, --no-new-line No new line at the end of the stream -p, --payload <payload> The payload for POST and PUT requests -q, --quiet Do not print status codes of received packets comcat@jackslab:/work/nodejs$ coap get coap://vs0.inf.ethz.ch/ (2.05) ************************************************************ CoA
3 libcoap
#$ git clone git://git.code.sf.net/p/libcoap/code libcoap-code $ git clone git://github.com/obgm/libcoap.git libcoap-code $ cd libcoap-code $ ./autogen.sh $ ./configure --disable-examples $ make $ sudo make install
Build in other platform:
- Contiki
If you have cloned the sources via git, you need to run ./autogen.sh to generate the build scripts. This step is optional when a source archive is used.
Next, say ./configure --with-contiki to prepare the Makefiles required to build libcoap as Contiki app. To make this work, libcoap usually is unpacked in the directory contiki/apps.
- LwIP
Using libcoap with LwIP requires a hand-crafted Makefile. Please refer to examples/lwip/Makefile to see how this is done.
- TinyOS
The usage of libcoap with TinyOS is documented in the TinyOS Wiki.
4 MQTT
4.1 Server
$ npm install mosca bunyan -g
4.2 Client
$ npm install MQTTClient
var MQTTClient = require('MQTTClient').Client; // if you don't assigned a client_id, will automatically assigns one // 如果没有指定client_id,则程序会自动分配一个 var options = { client_id: 'you_client_id' } var client = new MQTTClient('localhost', 1883, options); client.connect(function () { // do something if connect success // 在此处写连接成功后执行的代码 });