1.0.5 • Published 5 years ago

ts-dde v1.0.5

Weekly downloads
2
License
GPL-3.0
Repository
github
Last release
5 years ago

Build status

ts-dde

Dynamic Data Exchange (DDE) 动态数据交换模块

此模块基于node-dde, 将原有 edge 依赖更新至edge-js 12.3.1,并使用 typescript 重构。

安装

npm install ts-dde --save

例子

Client

异步监听 advise 获取 service-topic-item 三级命名结构数据。

  • 单个主题:
import { DdeClient } from 'ts-dde';

const client = new DdeClient({
  services: {
    myapp: {
      mytopic1: ['myitem1', 'myitem2'],
    },
  },
});

client.on('advise', (data) => {
  console.log('Service: ' + data.service + ', Topic: ' + data.topic + ', Item: ' + data.item + ', Text: ' + data.text);
});

client.connect();

client.startAdvise();
  • 多个主题:
import { DdeClient } from 'ts-dde';

const client = new DdeClient({
  services: {
    myapp: {
      mytopic1: ['myitem1', 'myitem2'],
      mytopic2: ['myitem1', 'まいあいてむ2'],
    },
  },
});

client.on('advise', (data) => {
  console.log('Service: ' + data.service + ', Topic: ' + data.topic + ', Item: ' + data.item + ', Text: ' + data.text);
});

client.connect();

client.startAdvise();

Server

异步推送 advise 数据至客户端:

import { DdeServer } from 'ts-dde';

const server = new DdeServer('myapp');

server.on('disconnect', function(service, topic) {
  console.log('OnDisconnect: ' + 'Service: ' + service + ', Topic: ' + topic);
});

server.on('advise', function(topic, item, format) {
  console.log('OnAdvise: ' + 'Topic: ' + topic + ', Item: ' + item + ', Format: ' + format);
});

let i = 0;
server.onAdvise = function() {
  return 'advise-' + i++;
};

setInterval(function() {
  server.advise('*', '*');
}, 1000);

server.register();

方法

DdeClient

方法名说明使用例
connect连接服务器client.connect()
disconnect断开与服务器的连接client.disconnect()
pause暂停服务client.pause()
resume恢复服务client.resume()
execute通过指定的 DDE 通道,向应用程序发送一条或一组命令client.execute(command, timeout)
poke向应用程序发送数据client.poke(item, data, timeout)
request向接收应用程序查询信息,并以字符串方式返回该信息client.request(item, format, timeout)
startAdvise循环获取数据client.startAdvise(item, format, hot, timeout)
stopAdvise停止接收数据client.stopAdvise(item, timeout)
beginExecute开始发送命令client.beginExecute(command, oncomplete)
beginPoke开始发送数据client.beginPoke(item, data, format, oncomplete)
beginRequest开始请求数据client.beginRequest(item, format, oncomplete)
beginStartAdvise开始监听数据client.beginStartAdvise(item, format, hot, oncomplete)
beginStopAdvise开始停止监听client.beginStopAdvise(item, oncomplete)
dispose释放资源client.dispose()
service获取服务名client.service()
topic获取主题client.topic()
isConnected是否已连接client.isConnected()
isPaused是否已暂停client.isPaused()

DdeServer

方法名说明使用例
register注册服务server.register()
unregister注销服务server.unregister()
advise建立数据传输接口server.advise(topic, item)
disconnect断开连接server.disconnect()
pause暂停服务server.pause()
resume恢复服务server.resume()
dispose释放资源server.dispose()
service获取服务名server.service()
isRegistered是否已注册server.isRegistered()
1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago

0.1.8

7 years ago

0.1.6

7 years ago

0.1.5

7 years ago

0.1.4

7 years ago

0.1.3

7 years ago

0.1.2

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago