123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- <!DOCTYPE html>
- <html lang="en" xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta charset="utf-8" />
- <title>Demo</title>
- <style>
- a {
- margin:20px;
- }
- </style>
- </head>
- <body>
- <div style="text-align: center;">后台服务-开发接口</div>
- <div style="text-align: left;"><a href="javascript:windowEx.NewWin('http://127.0.0.1:9527/static/swagger/index.html',1024,768,'center')">查看</a></div>
- <div style="text-align: center;">JS开发接口</div>
- <div style="text-align: left;">JS-API调用说明</div>
- <div style="text-align: left;">
- <ul>
- <li>在任何支持js的html中,使用标准的js方式均可调用本地窗口所暴露出来的API。</li>
- <li>本地窗口已为js使用封装了公用对象,对象名称为:windowEx</li>
- <li>js调用实例:windowEx.方法名(参数列表),如:windowEx.setLong(1000)</li>
- </ul>
- </div>
- <div style="text-align: left;">窗口API</div>
- <div style="text-align: left;">
- <ul>
- <li>1、关闭窗口。API方法:windowEx.Close()</li>
- <li><a href="javascript:windowEx.Close()">立即测试</a></li>
- <li>2、最小化窗口。API方法:windowEx.Min()</li>
- <li><a href="javascript:windowEx.Min()">立即测试</a></li>
- <li>3、打开屏幕键盘。API方法:windowEx.ShowOsk()</li>
- <li><a href="javascript:windowEx.ShowOsk('0','0')">立即测试</a></li>
- <li>4、立即退出应用。API方法:windowEx.Exit()</li>
- <li><a href="javascript:windowEx.Exit()">立即测试</a></li>
- <li>5、日志打印并记录到日志文件中。API方法:windowEx.PrintLog(string txt)</li>
- <li><a href="javascript:windowEx.PrintLog('this is test log content!!!')">立即测试</a>JS代码:windowEx.PrintLog('this is test log')</li>
- <li>6、设置窗口大小。API方法:windowEx.Size(int w,int h)</li>
- <li><a href="javascript:windowEx.Size(600,400)">立即测试</a>JS代码:windowEx.Size(600,400)</li>
- <li>7、设置窗口位置。API方法:windowEx.Position(string code)。code支持:center(居中),right_bottom(右下角),right_top(右上角)</li>
- <li><a href="javascript:windowEx.Position('center')">立即测试</a>JS代码:windowEx.Size('center')</li>
- <li>8、新窗口。API方法:windowEx.NewWin(string url,int w,int h,string positioncode)。code支持:center(居中),right_bottom(右下角),right_top(右上角)</li>
- <li><a href="javascript:windowEx.NewWin('https://www.baidu.com',300,700,'right_bottom')">立即测试</a>JS代码:windowEx.NewWin('https://www.baidu.com',300,700,'right_bottom')</li>
- <li>9、【回调API】网络/服务器连接中断通知。方法定义:NetEventNotice(string msg)</li>
- <li>JS代码:function NetEventNotice(msg){}</li>
- </div>
- <div style="text-align: left;">音频播放API</div>
- <div style="text-align: left;">
- <ul>
- <li>立即播放声音。API方法:windowEx.Play(string ind,string filename)
- <br>
- 参数ind说明:0-4表示播放系统声音,此时filename参数传空即可。其中0为Asterisk提示音;1为Beep提示音;2为Exclamation提示音;3为Hand提示音;4为Question提示音。
- <br>
- 参数filename说明:播放的声音文件名称,仅支持mp3格式,播放时需要保证程序目录下声音文件已存在。ind为"9"时有效。
- </li>
- <li>ind="0"时的Asterisk提示音:<a href="javascript:windowEx.Play('0','')">立即测试</a>JS代码:windowEx.Play('0','')</li>
- <li>ind="1"时的Beep提示音:<a href="javascript:windowEx.Play('1','')">立即测试</a>JS代码:windowEx.Play('1','')</li>
- <li>ind="2"时的Exclamation提示音:<a href="javascript:windowEx.Play('2','')">立即测试</a>JS代码:windowEx.Play('2','')</li>
- <li>ind="3"时的Hand提示音:<a href="javascript:windowEx.Play('3','')">立即测试</a>JS代码:windowEx.Play('3','')</li>
- <li>ind="4"时的Question提示音:<a href="javascript:windowEx.Play('4','')">立即测试</a>JS代码:windowEx.Play('4','')</li>
- <li>ind="9"时的"登录成功"提示音:<a href="javascript:windowEx.Play('9','登录成功')">立即测试</a> JS代码:javascript:windowEx.Play('9','登录成功')</li>
- <li>ind="9"时的文字转语音播报:<a href="javascript:windowEx.Play('9','检测任务已完成')">立即测试</a> JS代码:javascript:windowEx.Play('9','检测任务已完成')</li>
- </ul>
- </div>
- <div style="text-align: left;">二维码API</div>
- <div style="text-align: left;">
- <ul>
- <li>1、开始扫码。API方法:windowEx.StartScanQrCode(callbackFuncName)</li>
- <li><a href="javascript:windowEx.StartScanQrCode('getQrCode')">立即测试</a><span id="qrCodeValue"></span></li>
- <li>2、停止扫码。API方法:windowEx.StopScanQrCode()</li>
- <li><a href="javascript:windowEx.StopScanQrCode()">立即测试</a></li>
- </ul>
- </div>
- <div style="text-align: left;">摄像头API</div>
- <div>
- <a id="start" href="javascript:init()">初始化设备</a>
- <a id="start" href="javascript:start()">开始录像</a>
- <a id="stop" href="javascript:stop()">停止录像</a>
- <a id="play" href="javascript:play()">播放录像</a>
- <a id="upload" href="javascript:upload()">上传录像</a>
- <a id="start" href="javascript:setVideoTime()">设置60秒时长(默认为30秒)</a>
- <select id="wh" onchange="changeWH(this)"></select>
- </div>
- <div id="hint"></div>
- <div><video id="audio_id" src=""></video></div>
- </body>
- </html>
- <script language="javascript">
- var hint = document.getElementById("hint");
- var recordTime = 30;
- var videoPath = "";
- function setVideoTime() {
- recordTime = 60;
- windowEx.setLong(recordTime);
- }
- function init() {
- var re = windowEx.Init("0");
- }
- function getQrCode(qrcodeStr){
- document.getElementById("qrCodeValue").innerHTML=qrcodeStr;
- }
- function NetEventNotice(msg){
- if(msg!="") alert(msg)
- }
- function start() {
- //if (windowEx.SetPix(640, 480) == 0) {
- // alert("无效的分辩率设置。");
- // return;
- //}
- hint.innerHTML = "正在启动录像设备...";
- windowEx.button_start_Click();
- hint.innerHTML = "正在录像中...";
- if(recordTime>0) checkResult();
- }
- function stop() {
- windowEx.button_stop_Click();
- hint.innerHTML = "已停止录像...";
- }
- function play() {
- if (videoPath == '') {
- alert("未开始录制或录制还未完成。");
- return;
- }
- document.getElementById("audio_id").src= videoPath;
- }
- //视频录像结束的回调函数
- //path:视频文件的本地路径
- function RecordFinish(path)
- {
- hint.innerHTML = path;
- }
- //判断是否录制结束
- function checkResult() {
- setTimeout(function () {
- recordTime--;
- if (recordTime <= 0) {
- //录制完成,获取本地文件路径
- videoPath = windowEx.GetVideoLocalPath();
- hint.innerHTML = videoPath;
- }
- else {
- checkResult();
- }
- },1000)
- }
- function QueryVideoCapabilities(lst) {
- var lst = eval("(" + lst + ")");
- var wh = document.getElementById("wh");
- var tmpary = [];
- for (var i = 0; i < lst.length; i++) {
- tmpary.push("<option value="+i+">"+lst[i].w+" "+lst[i].h+"</option>");
- }
- wh.innerHTML = tmpary.join("");
- }
- function changeWH(e) {
- windowEx.SetPixIndex(document.getElementById("wh").value);
- }
- </script>
|