npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@tencentcloud/tuiroom-engine-electron

v2.8.1

Published

TUIRoomEngine Electron SDK

Downloads

314

Readme

TUIRoomEngine Electron SDK

简介

TUIRoomEngine Electron SDK 依托腾讯云 实时音视频 TRTC即时通信 IM 服务,为用户提供房间管理,多人实时音视频互动,屏幕分享,成员管理,即时聊天等功能。

安装

// with npm
npm i @tencentcloud/tuiroom-engine-electron --save

// with yarn
yarn add @tencentcloud/tuiroom-engine-electron

// with pnpm
pnpm i @tencentcloud/tuiroom-engine-electron --save

示例代码

import TUIRoomEngine from '@tencentcloud/tuiroom-engine-electron';

let roomEngine = null;

// 错误
function onError(error) {
  console.error(error);
}

// 音量变化
function onUserVoiceVolumeChanged(eventInfo) {
  console.log(eventInfo.userVolumeList);
}

// 网络质量变化
function onUserNetworkQualityChanged(eventInfo) {
  console.log(eventInfo.userNetworkList);
}

// 被踢出房间
function onKickedOutOfRoom(eventInfo) {
  console.log(`roomId: ${eventInfo.roomId}, ${eventInfo.message}`);
}

// 用户签名 userSig 过期
function onUserSigExpired() {
  console.log('userSig expire');
}

// 被踢下线
function onKickedOffLine(eventInfo) {
  console.log(`user offline, reason: ${eventInfo.message}`);
}

// 设备变化:设备切换、设备插拔事件
function onDeviceChange(eventInfo) {
  console.log(`deviceChange ${JSON.stringify(eventInfo)}`);
}

async function init() {
  TUIRoomEngine.once('ready', () => {
    roomEngine = new TUIRoomEngine();
    roomEngine.on(TUIRoomEvents.onError, onError);
    roomEngine.on(TUIRoomEvents.onUserVoiceVolumeChanged, onUserVoiceVolumeChanged);
    roomEngine.on(TUIRoomEvents.onUserNetworkQualityChanged, onUserNetworkQualityChanged);
    roomEngine.on(TUIRoomEvents.onKickedOutOfRoom, onKickedOutOfRoom);

    roomEngine.on(TUIRoomEvents.onUserSigExpired, onUserSigExpired);
    roomEngine.on(TUIRoomEvents.onKickedOffLine, onKickedOffLine);

    roomEngine.on(TUIRoomEvents.onDeviceChange, onDeviceChange);
  });

  // sdkAppId 获取和 userSig 生成详见官网文档
  // https://cloud.tencent.com/document/product/647/84238#step1
  await TUIRoomEngine.login({ sdkAppId: 0, userId: '', userSig: '' });
  await TUIRoomEngine.setSelfInfo({ userName: 'zhangsan', avatarUrl: 'https://testurl' });
}

init();

API list

| API | 含义 | | :-------------------------------- | :----------------- | | TUIRoomEngine.login | 登录TUIRoomEngine | | TUIRoomEngine.setSelfInfo | 设置当前用户基本信息(用户名、用户头像) | | TUIRoomEngine.getSelfInfo | 获取当前用户信息 | | TUIRoomEngine.logout | 登出 TUIRoomEngine | | roomEngine.createRoom | 创建房间 | | roomEngine.enterRoom | 进入房间 | | roomEngine.destroyRoom | 销毁房间 | | roomEngine.exitRoom | 离开房间 | | roomEngine.fetchRoomInfo | 获取房间信息 | | roomEngine.updateRoomNameByAdmin | 更新房间的名字(仅群主或者管理员可以调用) | | roomEngine.updateRoomSeatModeByAdmin | 更新房间上麦模式(仅群主或者管理员可以调用) | | roomEngine.getUserList | 获取当前房间用户列表 | | roomEngine.getUserInfo | 获取用户的详细信息 | | roomEngine.takeSeat | 获取麦位 | | roomEngine.setMaxSeatCount | 设置房间麦位最大值 | | roomEngine.leaveSeat | 释放麦位 | | roomEngine.lockSeatByAdmin | 锁定某个麦位状态 | | roomEngine.getSeatList | 获取麦位信息 | | roomEngine.openRemoteDeviceByAdmin | 请求远端用户打开摄像头 | | roomEngine.applyToAdminToOpenLocalDevice | 参会者向主持人申请打开设备 | | roomEngine.closeRemoteDeviceByAdmin | 关闭远端用户设备 | | roomEngine.takeUserOnSeatByAdmin | 邀请其他人上麦 | | roomEngine.kickUserOffSeatByAdmin | 要求其他人下麦 | | roomEngine.cancelRequest | 取消已经发出的请求 | | roomEngine.responseRemoteRequest | 回复远端用户的请求 | | roomEngine.setLocalVideoView | 设置本地流的渲染位置 | | roomEngine.openLocalCamera | 本地摄像头视频流采集 | | roomEngine.closeLocalCamera | 关闭本地摄像头 | | roomEngine.openLocalMicrophone | 打开本地麦克风 | | roomEngine.closeLocalMicrophone | 关闭本地麦克风 | | roomEngine.updateVideoQuality | 设置本地视频流的编码参数 | | roomEngine.updateAudioQuality | 设置本地音频的参数 | | roomEngine.startPushLocalVideo | 开始向远端推本地视频流 | | roomEngine.stopPushLocalVideo | 停止向远端推本地视频流 | | roomEngine.startPushLocalAudio | 开始向远端推本地音频流 | | roomEngine.stopPushLocalAudio | 停止向远端推本地音频流 | | roomEngine.setRemoteVideoView | 设置远端流渲染的区域 | | roomEngine.startPlayRemoteVideo | 开始播放远端用户视频流 | | roomEngine.stopPlayRemoteVideo | 停止播放远端用户视频流 | | roomEngine.muteRemoteAudioStream | 停止播放远端用户的音频流 | | roomEngine.changeUserRole | 改变用户的角色 | | roomEngine.kickRemoteUserOutOfRoom | 将用户踢出房间 | | roomEngine.disableDeviceForAllUserByAdmin | 所有用户的设备是否允许被使用 | | roomEngine.disableSendingMessageForAllUser | 所有用户是否被允许发消息 | | roomEngine.disableSendingMessageByAdmin | 特定用户是否被允许发消息 | | ~~roomEngine.sendTextMessage~~ | 发送文本消息,该接口自 v2.0.0 版本废弃 | | ~~roomEngine.sendCustomMessage~~ | 发送自定义消息,该接口自 v2.0.0 版本废弃 | | roomEngine.startScreenSharingElectron | 开始屏幕共享 | | roomEngine.stopScreenSharingElectron | 停止屏幕共享 | | roomEngine.getScreenSharingTarget | 获取屏幕分享列表 | | roomEngine.selectScreenSharingTarget | 切换屏幕分享窗口 | | roomEngine.on | 监听 roomEngine 的事件 | | roomEngine.off | 取消监听 roomEngine 的事件 | | roomEngine.getCameraDevicesList | 获取摄像头设备列表 | | roomEngine.getMicDevicesList | 获取麦克风设备列表 | | roomEngine.getSpeakerDevicesList | 获取扬声器设备列表 | | roomEngine.setCurrentCameraDevice | 设置要使用的摄像头设备 | | roomEngine.setCurrentMicDevice | 设置要使用的麦克风设备 | | roomEngine.setCurrentSpeakerDevice | 设置要使用的扬声器设备 | | roomEngine.getCurrentCameraDevice | 获取当前正在使用的摄像头设备 | | roomEngine.getCurrentMicDevice | 获取当前正在使用的麦克风设备 | | roomEngine.getCurrentSpeakerDevice | 获取当前正在使用的扬声器设备 | | roomEngine.startCameraDeviceTest | 开始进行摄像头测试 | | roomEngine.stopCameraDeviceTest | 停止摄像头测试 | | roomEngine.getTRTCCloud | 获取 trtcCloud 实例 | | roomEngine.getTIM | 获取 tim 实例 |

参考文档