Docker run

Get License

运行下面的命令,然后进入 docker log 中查看 生成的 license

  1. docker run -d --name emitter -p 8080:8080 --restart=unless-stopped emitter/server

注意这一个容器会无限循环重启,因为没有指定环境变量 —— License

查看日志

  1. docker logs -f ed83e946958f8c261b9e40fa2df3b6509ce49e7f56e89c9d9040c7b9036de21f

image.png
注意 secret keylicense 是配套的

Re-Run

重新运行以下命令

  1. docker run -d --name emitter -p 8080:8080 -e EMITTER_LICENSE=uppD0PFIcNK6VY-7PTo7uWH8EobaOGgRAAAAAAAAAAI --restart=unless-stopped emitter/server

获得指定通信频道的 key

上述命令的配套 secretJUoOxjoXLc4muSxXynOpTc60nWtwUI3o
⚠️:使用文档里提供的 licensesecret 并不安全
image.png
注意,在这里可以先勾选前两个 access ,因为多个 access 时需要使用 link 来进行 private 的访问。

开始使用

JS

使用 node emitter.js 运行以下文件即可看到 hello world

  1. // emitter.js
  2. var client = require('emitter-io').connect({host:"127.0.0.1", port:"8080"});
  3. // use on NodeJS
  4. var emitterKey = "DhfPNWDeeBkLI1ym0VN8NP7GufF58rUE";
  5. var channel = "timeout";
  6. // once we're connected, subscribe to the 'chat' channel
  7. client.subscribe({
  8. key: emitterKey,
  9. channel: channel
  10. });
  11. // on every message, print it out
  12. client.on('message', function(msg){
  13. console.log( msg.asString());
  14. });
  15. // publish a message to the chat channel
  16. client.publish({
  17. key: emitterKey,
  18. channel: channel,
  19. message: "hello world"
  20. })

效果

image.png

高权限的 Key 需要 private link

  1. client.publishWithLink({
  2. link: "linkname",
  3. message: "hello world through link"
  4. })
  5. client.link({
  6. key: key,
  7. channel: channel,
  8. name: shortcut,
  9. private: true,
  10. subscribe: true
  11. })