智能小程序 Ray 开发面板 SDK —— 功能点协议 SDK 汇总(一)

功能点协议

功能点协议(Protocols)指的是一系列在您开发控制设备面板业务的时候需要用到的一些标准化的设备功能点协议类,我们在 @ray-js/panel-sdk 中做了一层包装,帮助您更方便的开发智能产品。

如何使用

$ yarn add @ray-js/panel-sdk
 
# or
 
$ npm install @ray-js/panel-sdk

then

import { protocols } from '@ray-js/panel-sdk';
 
const { ColourTransformer, MusicTransformer, MicMusicTransformer, SmearTransformer } = protocols;

👉 立即免费领取开发资源,体验涂鸦 MiniApp 小程序开发。  

 

ColourTransformer

名称

ColourTransformer

描述

用于解析照明标准功能点 - colour_data

请求参数

参数数据类型说明是否必填

返回参数

参数数据类型说明
resultObject新对象

请求示例

import { protocols } from '@ray-js/panel-sdk';
const { ColourTransformer } = protocols;
 
const colourTransformer = new ColourTransformer();
 
// Example: 直接使用
colourTransformer.parser('000a03e803e8');
// { hue: 10, saturation: 1000, value: 1000 }
 
colourTransformer.formatter({ hue: 10, saturation: 1000, value: 1000 });
// 000a03e803e8
 
// Example: 搭配 dp-kit 使用, 可自动解析与格式化 dp(colour_data)
 
import { createDpKit } from '@ray-js/panel-sdk/lib/sdm/interceptors/dp-kit';
 
export const protocols = {
  colour_data: colourTransformer,
  // xxx 其他 dp
};
 
export const dpKit = createDpKit<SmartDeviceSchema>({
  protocols,
  onBeforeSendDp(dpState) {
    console.log('=== onBeforeSendDp', dpState);
  },
  onAfterSendDp(dpState) {
    console.log('=== onAfterSendDp', dpState);
  },
});
 

返回示例

// 1.parser
{ hue: 10, saturation: 1000, value: 1000 }
 
// 2.formatter
000a03e803e8

 

MicMusicTransformer

名称

MicMusicTransformer

描述

用于解析照明标准功能点 - mic_music_data

请求参数

参数数据类型说明是否必填

返回参数

参数数据类型说明
resultObject新对象

请求示例

import { protocols } from '@ray-js/panel-sdk';
const { MicMusicTransformer } = protocols;
 
const micMusicTransformer = new MicMusicTransformer();
 
// Example: 直接使用
micMusicTransformer.parser('01010111323201010164012c64');
/**
 * {
      v: 1,
      power: true,
      id: 3, // 有特殊处理
      isLight: 1,
      mode: 1,
      speed: 50,
      sensitivity: 50,
      a: 1,
      b: 1,
      c: 1,
      brightness: 100,
      colors: [{ hue: 300, saturation: 100 }],
    }
*/
 
micMusicTransformer.formatter({
  v: 1,
  power: true,
  id: 1,
  isLight: 1,
  mode: 1,
  speed: 50,
  sensitivity: 50,
  a: 1,
  b: 1,
  c: 1,
  brightness: 100,
  colors: [{ hue: 300, saturation: 100 }],
});
// 01010011323201010164012c64
 
// Example: 搭配 dp-kit 使用, 可自动解析与格式化 dp(mic_music_data)
 
import { createDpKit } from '@ray-js/panel-sdk/lib/sdm/interceptors/dp-kit';
 
export const protocols = {
  mic_music_data: micMusicTransformer,
  // xxx 其他 dp
};
 
export const dpKit = createDpKit<SmartDeviceSchema>({
  protocols,
  onBeforeSendDp(dpState) {
    console.log('=== onBeforeSendDp', dpState);
  },
  onAfterSendDp(dpState) {
    console.log('=== onAfterSendDp', dpState);
  },
});
 

返回示例

// 1.parser
{
  v: 1,
  power: true,
  id: 3,
  isLight: 1,
  mode: 1,
  speed: 50,
  sensitivity: 50,
  a: 1,
  b: 1,
  c: 1,
  brightness: 100,
  colors: [{ hue: 300, saturation: 100 }],
}
 
// 2.formatter
01010011323201010164012c64

👉 立即免费领取开发资源,体验涂鸦 MiniApp 小程序开发。  

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IoT砖家涂拉拉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值