npm i --save nativescript-call
- 版本:0.2.0
- GitHub:
- NPM: https://npmjs.net.cn/package/nativescript-call
- 下载
- 昨日:0
- 上周:5
- 上月:37
NativeScript Call 插件
哥们,我手机里已经有了电话应用...
当然 😅
但如果你想让应用支持 VOIP / WebRTC 通话呢?你可能希望操作系统弹出原生通话对话框,对吧?这就是这个插件的作用所在。
目前仅支持 iOS,我们利用了自 iOS 10 以来 iOS SDK 的一部分 CallKit
。
安装
tns plugin add nativescript-call
演示
检查 演示 文件夹中的源代码,或在您的设备上运行它
git clone https://github.com/EddyVerbruggen/nativescript-call
cd nativescript-call/src
npm i
npm run demo.ios
在 NativeScript-Angular 和 NativeScript-Vue 中的使用与在 NativeScript-Core 中的使用没有区别。
API
receiveCall
你可以传递给此方法的方法属性是
属性 | 类型 | 描述 |
---|---|---|
appName | 字符串 |
应用程序的名称,如呼叫屏幕上所示。默认为您的应用程序名称。 |
icon | 字符串 |
要显示的图标名称。从 App_Resources 文件夹加载(见演示)。 |
handleType | TNSCallHandleType |
可以是 "PHONE" (默认)或 "EMAIL" 。 |
handleId | 字符串 |
当 handleType 为 "PHONE" 时为电话号码,当 handleType 为 "EMAIL" 时为电子邮件地址。 |
callerName | 字符串 |
要在通话 UI 上显示的名称。 |
hasVideo | 布尔值 |
此通话是否支持视频。默认为 false 。 |
supportsDTMF | 布尔值 |
通话是否可以发送 DTMF(双音多频)音调,通过硬暂停数字或在通话键盘输入中。默认为 false 。 |
你可以传递给此方法的处理程序是
| 名称 | 描述 | | --- | --- | --- | | onSpeakerOn | 当扬声器开启时触发。 | | onSpeakerOff | 当扬声器关闭时触发。 |
import { TNSCall } from "nativescript-call";
const tnsCall = new TNSCall();
tnsCall.receiveCall(
{
appName: "My App",
icon: "download-from-cloud", // see demo/app/App_Resources/iOS
handleType: "PHONE",
handleId: "+31612345678",
callerName: "Donald J. Drumpf",
hasVideo: true,
supportsDTMF: true,
onSpeakerOn: () => console.log("Speaker ON"),
onSpeakerOff: () => console.log("Speaker OFF")
})
.then(() => console.log("Receive call success"))
.catch(err => console.log("Error receiving call: " + err));
endCall
import { TNSCall } from "nativescript-call";
const tnsCall = new TNSCall();
tnsCall.endCall()
.then(() => console.log("Ended call"))
.catch(err => console.log("Error ending call: " + err));