简介
oneyun-sipclient-desktop-js-sdk 是一个基于 Electron 的 SIP 客户端开发 SDK 包。该包提供了一些基本的组件和 API,可以帮助开发人员快速实现自己的 SIP 客户端应用。
安装
使用 npm 进行安装:
npm install oneyun-sipclient-desktop-js-sdk
开始使用
使用 oneyun-sipclient-desktop-js-sdk 的基本步骤如下:
引入 SDK 包:
const sipSDK = require('oneyun-sipclient-desktop-js-sdk');
创建 SIP 客户端:
const client = new sipSDK.Client();
在创建客户端时,可以通过传递一些选项来进行配置。可以设置 SIP 服务器地址、 SIP 用户名和密码等等。例如:
const client = new sipSDK.Client({ url: 'sip:example.com', username: 'username', password: 'password' });
连接 SIP 服务器
await client.connect();
实现事件监听
定义一些事件回调,以响应不同的事件。例如,可以监听 incomingCall 事件,在接收到呼叫时弹出一个对话框:
client.on('incomingCall', async (call) => { const answer = confirm('Incoming call from: ' + call.remote); if (answer) { await call.answer(); } else { await call.reject(); } });
进行呼叫
使用 createCall 方法创建一个呼叫实例,并调用 call 方法发起呼叫:
const call = await client.createCall({ remote: 'sip:example.com', local: 'sip:username@example.com' }); await call.call();
API 文档
Client
SIP 客户端类
constructor(options: ClientOptions)
创建一个 SIP 客户端实例。可以传递一些选项进行配置。
const client = new Client({ url: 'sip:example.com', username: 'username', password: 'password' });
connect(): Promise<void>
连接到 SIP 服务器。
await client.connect();
disconnect(): Promise<void>
断开与 SIP 服务器的连接。
await client.disconnect();
createCall(options: CallOptions): Promise<call>
创建一个呼叫实例。
const call = await client.createCall({ remote: 'sip:example.com', local: 'sip:username@example.com' });
Call
呼叫类
remote: string
远程地址
local: string
本地地址
state: CallState
当前呼叫状态。可以是 CallState.IDLE、CallState.CALLING、CallState.RINGING、CallState.ESTABLISHED、CallState.ENDED。
console.log(call.state); // CallState.IDLE
call(): Promise<void>
发起呼叫。
await call.call();
answer(): Promise<void>
接听呼叫。
await call.answer();
reject(): Promise<void>
拒绝呼叫。
await call.reject();
terminate(): Promise<void>
结束呼叫。
await call.terminate();
示例
下面是一个基本的示例,实现了呼叫和接收呼叫的功能。
-- -------------------- ---- ------- ----- ------ - ------------------------------------------- ----- ------ - --- --------------- ---- ------------------ --------- ----------- --------- ---------- --- ------ -- -- - --- - ----- ----------------- ------------------------- ----- ------ -- - ----- ------ - ----------------- ---- ----- - - ------------- -- -------- - ----- -------------- - ---- - ----- -------------- - --- ----- ---- - ----- ------------------- ------- ------------------ ------ -------------------------- --- ----- ------------ - ----- ----- - ------------------- - -----
结论
oneyun-sipclient-desktop-js-sdk 是一个基于 Electron 的 SIP 客户端开发 SDK 包。它提供了一些基本的组件和 API,可以帮助开发人员快速实现自己的 SIP 客户端应用。本文中我们介绍了该包的安装和使用方法,并提供了一些示例代码。相信通过学习本文,读者可以对该包有更深入的了解,并在实践中灵活应用。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066faf3d1de16d83a67327