对接钉钉API语音功能相关文档

语音接入功能
一听到要对接钉钉语音功能,就会想到微信语音对接过程,所以相关过程应该类似,于是去查看钉钉API文档:
钉钉API文档
先自己大概看一遍再去下手做:
1:首先跟微信一样使用钉钉相关的能力需要引入相关的jsAPI文件

2:使用钉钉来获取手机的底层能力需要鉴权(即dd.config),有些能力不需要,看自己需求,是否需要鉴权相关文档:能力鉴权列表
注意:所有JSAPI组件的调用,必须在dd.ready里面执行。
3:鉴权之前需要处理的事情:
前端进行鉴权之前,需要获取到参与鉴权的参数,包括url、nonceStr、agentId、timeStamp、corpId
后台需要
1)通过 appKey,appSecret从钉钉获取access_token;
appKey,appSecret从钉钉后台获取; 获取token后需对token做缓存处理;
2)通过access_token 获取 ticket
4:此时就可以开发语音部分功能,根据钉钉语音部分文档:https://ding-doc.dingtalk.com/doc#/dev/lpkhcc
5:有关钉钉后台配置部分
钉钉管理后台(https://open-dev.dingtalk.com/#/create-app)添加H5微应用
对接钉钉API语音功能相关文档_第1张图片
对接钉钉API语音功能相关文档_第2张图片
对接钉钉API语音功能相关文档_第3张图片
对接钉钉API语音功能相关文档_第4张图片
对接钉钉API语音功能相关文档_第5张图片
开始录音:

dd.device.audio.startRecord({
    onSuccess : function () {//支持最长为300秒(包括)的音频录制,默认60秒(包括)。
    },
    onFail : function (err) {
    }
});

停止录音:

dd.device.audio.stopRecord({
    onSuccess : function(res){
        res.mediaId; // 返回音频的MediaID,可用于本地播放和音频下载
        res.duration; // 返回音频的时长,单位:秒
    },
    onFail : function (err) {
    }
});

监听录音是否停止:

dd.device.audio.onRecordEnd({
    onSuccess : function(res) {
        res.mediaId; // 停止播放音频MediaID
        res.duration; // 返回音频的时长,单位:秒
    },
    onFail : function (err) {
 
    }
});

下载音频:

dd.device.audio.download({
    mediaId : "@lATOCLhLfc46kUl8zlUmRlM",
    onSuccess : function(res) {
        res.localAudioId;
    },
    onFail : function (err) {
    }
});

播放语音:

dd.device.audio.play({
    localAudioId : "localAudioId",
 
    onSuccess : function () {
 
    },
 
    onFail : function (err) {
    }
});

暂停播放语音:

dd.device.audio.pause({
    localAudioId : "localAudioId",
    onSuccess : function() {
    },
    onFail : function(err) {
    }
});

恢复暂停播放的语音:

dd.device.audio.resume({
    localAudioId : "localAudioId",
    onSuccess : function() {
    },
    onFail : function(err) {
    }
});

停止播放语音:

dd.device.audio.stop({
    localAudioId : "localAudioId",
    onSuccess : function (res) {
    },
    onFail : function () {
    }
});

监听播放自动停止:

dd.device.audio.onPlayEnd({
    onSuccess : function (res) {
        res.localAudioId;
    },
    onFail : function (err) {
    }
});

语音转文字:

dd.device.audio.translateVoice({
    mediaId : "@lATOCLhLfc46kUl8zlUmRlM",
    duration : 5.0,
    onSuccess : function (res) {
        res.mediaId; // 转换的语音的mediaId
        res.content; // 语音转换的文字内容
    }
});

你可能感兴趣的:(钉钉相关,语音录入,钉钉对接)