1.0.3 • Published 6 months ago
hw-socket-sdk v1.0.3
Live SDK
安装
npm install hw-socket-sdk
简单使用
import { SocketSDK } from 'hw-socket-sdk';
const client = SocketSDK.getInstance('ws://localhost:8081');
监听事件
client.on(MessageActionType.LISTEN_FORCE_STOP, (data) => {
console.log('监听被强制停止', data);
});
client.on(MessageActionType.KICKED_OUT, (data) => {
console.log('被强制踢出', data);
});
client.on(MessageActionType.CUSTOM_MESSAGE, (data) => {
console.log('收到自定义消息', data);
});
client.on(MessageActionType.OPEN, () => {
console.log('连接已打开');
});
或者
client.onListenForceStop((data) => {
console.log('监听被强制停止', data);
});
client.onKickedOut((data) => {
console.log('被强制踢出', data);
});
client.onCustomMessage((data) => {
console.log('收到自定义消息', data);
});
client.onOpen(() => {
console.log('连接已打开');
});
// 当所有消息都没有匹配的监听器时,会触发此事件
client.onMessage(() => {
console.log('收到未注册的消息');
});
开始监听数据流
client.startListenDataChannel('data1:plain', (data) => {
console.log('收到数据流【data1:plain】的数据:', data);
});
停止监听数据流
client.stopListenDataChannel('data1:plain');
获取当前监听的数据流频道表
client.getListenDataChannelMap().forEach((value, key) => {
console.log('频道标识:', key, '监听函数:', value);
});
发送消息
// 以心跳包为例,这是一个底层协议遵循的规范,调用SDK方法是,SDK会遵循此规则自动发送消息,一般不需要手动发送,除非忍不住。
this.send(
MessageActionType.PING,
null, // 这里统一写null,预留的
{
time: new Date().getTime()
}
);