类 Agent
- java.lang.Object
-
- com.aispeech.dui.BaseNode
-
- com.aispeech.dui.dds.agent.Agent
-
- 所有已实现的接口:
com.aispeech.dui.dds.agent.ReferenceCountMap.OnReferenceCountChangeListener,com.aispeech.dui.manager.INode,java.lang.Runnable
public class Agent extends com.aispeech.dui.BaseNode implements com.aispeech.dui.dds.agent.ReferenceCountMap.OnReferenceCountChangeListener
-
-
嵌套类概要
嵌套类 修饰符和类型 类 说明 static classAgent.DuplexModestatic classAgent.RecorderMode
-
字段概要
字段 修饰符和类型 字段 说明 static java.lang.StringTAG
-
构造器概要
构造器 构造器 说明 Agent(android.content.Context context)构造方法,开发者可以不关注该构造方法, 而是可以通过DDS.getAgent()获取Agent实例
-
方法概要
所有方法 实例方法 具体方法 已过时的方法 修饰符和类型 方法 说明 voidavatarClick()点击唤醒/停止识别/打断播报 操作接口voidavatarClick(java.lang.String greeting)点击唤醒/停止识别/打断播报 操作接口voidavatarPress()按下按键接口voidavatarRelease()释放按键接口voidbreakDialog()voidbreakDialog(org.json.JSONObject jsonObject)取消voidclearAuthCode()清除 authcode, 该方法需要在SDK初始化后使用; 与之对应的方法是setAuthCode(AuthInfo, TokenListener)voidclearCommandWakeupWord()已过时。java.lang.StringclearDeviceInfo(java.lang.String key)清空客户端上传的设备信息voidclearShortCutWakeupWord()已过时。voidcloseTip()关闭tip提示音voiddisableWakeup()已过时。voidenableWakeup()已过时。java.lang.StringendSkillInDialog()在多轮对话中强制设置为首轮,进入延迟聆听状态。voidfeedbackNativeApiResult(java.lang.String nativeApi, com.aispeech.dui.dsk.duiwidget.DuiWidget duiWidget)反馈native api的执行结果voidfeedbackNativeCommandResult(java.lang.String nativeCommand, org.json.JSONObject resultObj)voidfeedOpus(byte[] opus)外部录音机拾音接口voidfeedPcm(byte[] pcm)外部录音机拾音接口voidfeedSbc(byte[] sbc)外部录音机拾音接口java.lang.StringgetAccessToken()java.lang.StringgetAddress()ASREnginegetASREngine()获取ASR引擎java.lang.StringgetDeviceInfo()获取客户端保存的设备信息Agent.DuplexModegetDuplexMode()获取当前的运行模式java.lang.StringgetLocalData(java.lang.String key)从 sdk 保存的数据里获取对应的值java.lang.StringgetMinorWakeupWord()已过时。java.lang.StringgetName()java.lang.ObjectgetProductContext(java.lang.String inputKey)获取产品的配置信息java.lang.StringgetResourceVersion()获取当前的产品资源版本号java.lang.ObjectgetSkillContext(java.lang.String skillId, java.lang.String inputKey)获取技能的配置信息java.util.List<SkillConfig>getSkillList()java.util.Set<java.lang.String>getSubscribedTopics()TTSEnginegetTTSEngine()获取TTS引擎intgetUiagentProt()longgetVadPauseTime()已过时。java.lang.StringgetValidH5Path()获取资源包中H5资源的路径WakeupEnginegetWakeupEngine()获取Wakeup引擎java.lang.String[]getWakeupWords()已过时。booleanisTopicNoBlocking(java.lang.String topic)voidnotifyTTSEnd()外部TTS播报结束通知接口voidnotifyTTSEnd(java.lang.String ttsId)外部TTS播报结束通知接口com.aispeech.dui.BusClient.RPCResultonCall(java.lang.String url, java.lang.Object... args)voidonCreate()voidonDestroy()voidonExit()voidonFirstObserverAttached(java.lang.String topic)voidonJoin()voidonMessage(java.lang.String topic, java.lang.Object... parts)voidonNoObserverAttached(java.lang.String topic)voidopenTip()打开tip提示音voidpauseDialog()暂停当前对话voidresumeDialog()恢复当前对话voidsendText(java.lang.String text)输入文本的接口voidsetAudioFocusCallback(AudioFocusCallback audioFocusCallback)voidsetAuthCode(AuthInfo authInfo, com.aispeech.dui.oauth.TokenListener tokenListener)dca授权登录, 该方法需要在SDK初始化后使用; 此方法应该在 OathSDK 登录获取 authCode 后使用 与之对应的方法是clearAuthCode()voidsetCustomTips(org.json.JSONObject obj)此接口支持动态修改 custom tipsvoidsetDDSMode(int mode)设置场景模式voidsetDialogExtInfo(org.json.JSONObject extInfo)配置对话的额外参数,由客户和服务器约定键值。voidsetDMCallback(DMCallback callback)已过时。该接口极端情况会导致rpc死锁问题,已舍弃。voidsetDMTaskCallback(DMTaskCallback dmTaskCallback)此接口支持修改对话中的语音播报,修改文本展示等功能voidsetDMTaskCallbackSync(DMTaskCallbackSync dmTaskCallbackSync)此接口支持修改对话中的语音播报,修改文本展示等功能,同步方法voidsetDMWkupRetCallback(DMWkupRetCallback dmWkupRetCallback)此接口支持修改唤醒逻辑,是否需要忽略唤醒词类型强行唤醒/忽略唤醒voidsetDuplexMode(Agent.DuplexMode duplexMode)设置dds策略voidsetEnableVoip(boolean enableVoip)设置是否使用voip功能voidsetLocalData(java.lang.String key, java.lang.String value)设置 数据到 sdkvoidsetRecorderMode(Agent.RecorderMode recorderMode)设置外部录音机拾音模式voidsetTTSRequestListener(TTSRequestListener listener)外部TTS引擎注册接口booleansetVadPauseTime(long millis)已过时。voidshutup(java.lang.String ttsId)已过时。voidspeak(java.lang.String text, int priority)已过时。voidspeak(java.lang.String text, int priority, java.lang.String ttsId, int audioFocus)已过时。voidstartDialog()开启新对话voidstartDialog(org.json.JSONObject jsonObject)开启新对话voidstopDialog()停止当前对话,包括停止合成,取消识别等voidstopDialog(org.json.JSONObject jsonObject)停止当前对话,包括停止合成,取消识别等voidsubscribe(java.lang.String[] messages, MessageObserver messageObserver)订阅messagesvoidsubscribe(java.lang.String[] commands, com.aispeech.dui.dsk.duiwidget.CommandObserver commandObserver)订阅commandvoidsubscribe(java.lang.String[] nativeApis, com.aispeech.dui.dsk.duiwidget.NativeApiObserver nativeApiObserver)订阅nativeApivoidsubscribe(java.lang.String message, MessageObserver messageObserver)订阅messagevoidsubscribe(java.lang.String command, com.aispeech.dui.dsk.duiwidget.CommandObserver commandObserver)订阅commandvoidsubscribe(java.lang.String nativeApi, com.aispeech.dui.dsk.duiwidget.NativeApiObserver nativeApiObserver)订阅nativeApivoidsubscribeSync(java.lang.String[] messages, MessageObserver messageObserver)订阅messagesvoidsubscribeSync(java.lang.String[] commands, com.aispeech.dui.dsk.duiwidget.CommandObserver commandObserver)订阅commandvoidsubscribeSync(java.lang.String[] nativeApis, com.aispeech.dui.dsk.duiwidget.NativeApiObserver nativeApiObserver)订阅nativeApivoidsubscribeSync(java.lang.String[] nativeCommands, com.aispeech.dui.dsk.duiwidget.NativeCommandObserver nativeCommandObserver)订阅nativeCommand, 此command支持带返回值voidtriggerIntent(SkillIntent skillIntent)主动触发意图的接口voidtriggerIntent(java.lang.String skill, java.lang.String task, java.lang.String intent, java.lang.String slots)已过时。主动触发意图的接口voidunSubscribe(MessageObserver observer)注销MessageObserver.voidunSubscribe(com.aispeech.dui.dsk.duiwidget.CommandObserver observer)注销CommandObserver.voidunSubscribe(com.aispeech.dui.dsk.duiwidget.NativeApiObserver observer)注销NativeApiObserver.voidunSubscribeSync(MessageObserver observer)注销MessageObserver.voidunSubscribeSync(com.aispeech.dui.dsk.duiwidget.CommandObserver observer)注销CommandObserver.voidunSubscribeSync(com.aispeech.dui.dsk.duiwidget.NativeApiObserver observer)注销NativeApiObserver.voidunSubscribeSync(com.aispeech.dui.dsk.duiwidget.NativeCommandObserver observer)注销NativeCommandObserver.booleanupdateAccessToken(java.lang.String accessToken)booleanupdateAccessToken(java.lang.String accessToken, java.lang.String userId)voidupdateAsrDropWords(java.lang.String asrDropWords)设置需要进行识别过滤的词 使用示例:voidupdateCommandWakeupWord(java.lang.String[] actions, java.lang.String[] words, java.lang.String[] pinyin, java.lang.String[] threshold, java.lang.String[][] greetings)已过时。voidupdateCustomSyncInfo(org.json.JSONObject obj)自定义多模态事件同步,该接口用于客户端给对话中控发送一个事件java.lang.StringupdateDeviceInfo(java.lang.String deviceJson)已过时。java.lang.StringupdateDispatchEvent(org.json.JSONObject obj)多模态事件同步,该接口用于客户端给对话中控发送一个事件,例如: 不再支持:在多轮对话中强制设置为首轮,传入数据为: new JSONObject().put("endSkill", "true")voidupdateDmsPolicy(int policy)设置对话离线与在线模式voidupdateDmSync(org.json.JSONObject obj)对话同步接口voidupdateMinorWakeupWord(java.lang.String word, java.lang.String pinyin, java.lang.String threshold, java.lang.String[] greetings)已过时。voidupdatePermanentSkill(org.json.JSONArray jsonArray)新增技能锁定接口,让用户说的话只落在锁定的技能里voidupdatePhraseHints(PhraseHintsIntent... phraseHints)更新热词识别接口(请求级别)voidupdatePhraseList(PhraseList... phraseLists)设置热词,用于在一路中做热词增强识别。java.lang.StringupdateProductContext(ContextIntent intent)更新设备状态,产品级的配置。voidupdateShortcutWakeupWord(java.lang.String[] words, java.lang.String[] pinyin, java.lang.String[] threshold)已过时。java.lang.StringupdateSkillContext(ContextIntent intent)更新技能配置,需要调用ContextIntent.setSkillId设置技能ID 更新结果可以通过sys.upload.result消息来获取java.lang.StringupdateVocab(java.lang.String vocabName, java.lang.String[] contents, boolean addOrDelete)已过时。Replaced byupdateVocabs(VocabIntent...)java.lang.StringupdateVocabs(int mode, VocabIntent... vocabs)更新词库接口java.lang.StringupdateVocabs(VocabIntent... vocabs)更新词库接口
-
-
-
构造器详细资料
-
Agent
public Agent(android.content.Context context)
构造方法,开发者可以不关注该构造方法, 而是可以通过DDS.getAgent()获取Agent实例- 参数:
context- context
-
-
方法详细资料
-
onCreate
public void onCreate()
- 覆盖:
onCreate在类中com.aispeech.dui.BaseNode
-
onJoin
public void onJoin()
- 指定者:
onJoin在接口中com.aispeech.dui.manager.INode- 覆盖:
onJoin在类中com.aispeech.dui.BaseNode
-
onExit
public void onExit()
- 指定者:
onExit在接口中com.aispeech.dui.manager.INode- 覆盖:
onExit在类中com.aispeech.dui.BaseNode
-
onDestroy
public void onDestroy()
- 覆盖:
onDestroy在类中com.aispeech.dui.BaseNode
-
getName
public java.lang.String getName()
- 指定者:
getName在接口中com.aispeech.dui.manager.INode
-
getAddress
public java.lang.String getAddress()
- 覆盖:
getAddress在类中com.aispeech.dui.BaseNode
-
onCall
public com.aispeech.dui.BusClient.RPCResult onCall(java.lang.String url, java.lang.Object... args) throws java.lang.Exception
- 覆盖:
onCall在类中com.aispeech.dui.BaseNode- 抛出:
java.lang.Exception
-
feedbackNativeCommandResult
public void feedbackNativeCommandResult(java.lang.String nativeCommand, org.json.JSONObject resultObj)
-
onMessage
public void onMessage(java.lang.String topic, java.lang.Object... parts) throws java.lang.Exception
- 覆盖:
onMessage在类中com.aispeech.dui.BaseNode- 抛出:
java.lang.Exception
-
isTopicNoBlocking
public boolean isTopicNoBlocking(java.lang.String topic)
-
subscribe
public void subscribe(java.lang.String[] commands, com.aispeech.dui.dsk.duiwidget.CommandObserver commandObserver)
订阅command- 参数:
commands- commands数组commandObserver- 当订阅的command被触发了,会通知到commandObserver
-
subscribeSync
public void subscribeSync(java.lang.String[] nativeCommands, com.aispeech.dui.dsk.duiwidget.NativeCommandObserver nativeCommandObserver)
订阅nativeCommand, 此command支持带返回值- 参数:
nativeCommands- commands数组nativeCommandObserver- 当订阅的command被触发了,会通知到commandObserver
-
unSubscribeSync
public void unSubscribeSync(com.aispeech.dui.dsk.duiwidget.NativeCommandObserver observer)
注销NativeCommandObserver. 注销后,这个observer将不再会接受到command的消息- 参数:
observer- observer
-
subscribeSync
public void subscribeSync(java.lang.String[] commands, com.aispeech.dui.dsk.duiwidget.CommandObserver commandObserver)
订阅command- 参数:
commands- commands数组commandObserver- 当订阅的command被触发了,会通知到commandObserver
-
subscribe
public void subscribe(java.lang.String command, com.aispeech.dui.dsk.duiwidget.CommandObserver commandObserver)
订阅command- 参数:
command- 单个commadcommandObserver- 当订阅的command被触发了,会通知到commandObserver
-
subscribe
public void subscribe(java.lang.String[] nativeApis, com.aispeech.dui.dsk.duiwidget.NativeApiObserver nativeApiObserver)
订阅nativeApi- 参数:
nativeApis- nativeApi数组nativeApiObserver- 当订阅的cnativeApi被触发了,会通知到nativeApiObserver
-
subscribeSync
public void subscribeSync(java.lang.String[] nativeApis, com.aispeech.dui.dsk.duiwidget.NativeApiObserver nativeApiObserver)
订阅nativeApi- 参数:
nativeApis- nativeApi数组nativeApiObserver- 当订阅的cnativeApi被触发了,会通知到nativeApiObserver
-
subscribe
public void subscribe(java.lang.String nativeApi, com.aispeech.dui.dsk.duiwidget.NativeApiObserver nativeApiObserver)
订阅nativeApi- 参数:
nativeApi- 单个的nativeApinativeApiObserver- 当订阅的cnativeApi被触发了,会通知到nativeApiObserver
-
subscribe
public void subscribe(java.lang.String[] messages, MessageObserver messageObserver)
订阅messages- 参数:
messages- message数组messageObserver- 当订阅的messages被触发了,会通知到messageObserver
-
subscribeSync
public void subscribeSync(java.lang.String[] messages, MessageObserver messageObserver)
订阅messages- 参数:
messages- message数组messageObserver- 当订阅的messages被触发了,会通知到messageObserver
-
subscribe
public void subscribe(java.lang.String message, MessageObserver messageObserver)
订阅message- 参数:
message- 单个的messagemessageObserver- 当订阅的message被触发了,会通知到messageObserver
-
unSubscribe
public void unSubscribe(com.aispeech.dui.dsk.duiwidget.CommandObserver observer)
注销CommandObserver. 注销后,这个observer将不再会接受到command的消息- 参数:
observer- observer
-
unSubscribeSync
public void unSubscribeSync(com.aispeech.dui.dsk.duiwidget.CommandObserver observer)
注销CommandObserver. 注销后,这个observer将不再会接受到command的消息- 参数:
observer- observer
-
unSubscribe
public void unSubscribe(com.aispeech.dui.dsk.duiwidget.NativeApiObserver observer)
注销NativeApiObserver. 注销后,这个observer将不再会接受到NativeApi的消息- 参数:
observer- observer
-
unSubscribeSync
public void unSubscribeSync(com.aispeech.dui.dsk.duiwidget.NativeApiObserver observer)
注销NativeApiObserver. 注销后,这个observer将不再会接受到NativeApi的消息- 参数:
observer- observer
-
unSubscribe
public void unSubscribe(MessageObserver observer)
注销MessageObserver. 注销后,这个observer将不再会接受到messages的消息- 参数:
observer- observer
-
unSubscribeSync
public void unSubscribeSync(MessageObserver observer)
注销MessageObserver. 注销后,这个observer将不再会接受到messages的消息- 参数:
observer- observer
-
feedbackNativeApiResult
public void feedbackNativeApiResult(java.lang.String nativeApi, com.aispeech.dui.dsk.duiwidget.DuiWidget duiWidget)
反馈native api的执行结果- 参数:
nativeApi- dui平台上技能定义的nativeapiduiWidget- duiwidget实例
-
getUiagentProt
public int getUiagentProt()
-
getValidH5Path
public java.lang.String getValidH5Path() throws DDSNotInitCompleteException
获取资源包中H5资源的路径- 返回:
- String H5资源index.html的路径
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
getWakeupWords
@Deprecated public java.lang.String[] getWakeupWords() throws DDSNotInitCompleteException
已过时。此方法在Agent中已弃用,参见WakeupEngine.getWakeupWords()获取当前的唤醒词- 返回:
- String[] 唤醒词数组
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
getMinorWakeupWord
@Deprecated public java.lang.String getMinorWakeupWord() throws DDSNotInitCompleteException
已过时。此方法在Agent中已弃用,参见WakeupEngine.getMinorWakeupWord()获取当前的副唤醒词- 返回:
- String 副唤醒词, 若无则返回null
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
enableWakeup
@Deprecated public void enableWakeup() throws DDSNotInitCompleteException
已过时。此方法在Agent中已弃用,参见WakeupEngine.enableWakeup()开启唤醒- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
disableWakeup
@Deprecated public void disableWakeup() throws DDSNotInitCompleteException
已过时。此方法在Agent中已弃用,参见WakeupEngine.disableWakeup()关闭唤醒- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
startDialog
public void startDialog() throws DDSNotInitCompleteException
开启新对话播报提示音后进入识别。若当前正在对话中,会先结束当前对话,再开启新对话。
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
startDialog
public void startDialog(org.json.JSONObject jsonObject) throws DDSNotInitCompleteException
开启新对话播报提示音后进入识别。若当前正在对话中,会先结束当前对话,再开启新对话。
- 参数:
jsonObject- 自定义配置信息,可以配置回复语greeting等- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
stopDialog
public void stopDialog() throws DDSNotInitCompleteException
停止当前对话,包括停止合成,取消识别等- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
breakDialog
public void breakDialog() throws DDSNotInitCompleteException
-
breakDialog
public void breakDialog(org.json.JSONObject jsonObject) throws DDSNotInitCompleteException
取消- 参数:
jsonObject-- 抛出:
DDSNotInitCompleteException
-
openTip
public void openTip() throws DDSNotInitCompleteException
打开tip提示音- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
closeTip
public void closeTip() throws DDSNotInitCompleteException
关闭tip提示音- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
stopDialog
public void stopDialog(org.json.JSONObject jsonObject) throws DDSNotInitCompleteException
停止当前对话,包括停止合成,取消识别等- 参数:
jsonObject- 自定义配置信息,可以配置合成文本,内部会在合成完该文本后停止当前对话- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
triggerIntent
@Deprecated public void triggerIntent(java.lang.String skill, java.lang.String task, java.lang.String intent, java.lang.String slots) throws DDSNotInitCompleteException
已过时。主动触发意图的接口跳过识别和语义,直接进入指定的意图对话
- 参数:
skill- 技能名称, 必填task- 任务名称, 必填intent- 意图名称, 必填slots- 语义槽, key-value Json, 可选- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
triggerIntent
public void triggerIntent(SkillIntent skillIntent) throws DDSNotInitCompleteException
主动触发意图的接口跳过识别和语义,直接进入指定的意图对话
- 参数:
skillIntent- 技能意图- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
avatarClick
public void avatarClick() throws DDSNotInitCompleteException
点击唤醒/停止识别/打断播报 操作接口- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception- 另请参阅:
DDSConfigBuilder.DmBuilder.setClickMode(int)
-
avatarClick
public void avatarClick(java.lang.String greeting) throws DDSNotInitCompleteException
点击唤醒/停止识别/打断播报 操作接口- 参数:
greeting- 在唤醒时附带一则欢迎语- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
avatarPress
public void avatarPress() throws DDSNotInitCompleteException
按下按键接口- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
avatarRelease
public void avatarRelease() throws DDSNotInitCompleteException
释放按键接口- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
getResourceVersion
public java.lang.String getResourceVersion()
获取当前的产品资源版本号- 返回:
- String 资源版本号
-
speak
@Deprecated public void speak(java.lang.String text, int priority) throws DDSNotInitCompleteException
已过时。此方法已在Agent中弃用,建议使用TTSEngine中的同名方法TTSEngine.speak(String, int)播报文本,支持SSML
当DDSConfig.K_TTS_MODE设置为"external"时,该接口无效,请直接调用外部TTS引擎的对应接口。
- 参数:
text- 播报文本priority- 优先级- 优先级0-保留,与aios语音交互同级,仅限内部使用
- 优先级1-正常,默认选项,同级按序播放
- 优先级2-重要,可以插话优先级1,同级按序播放,播报完毕后继续播报刚才被插话的优先级1
- 优先级3-紧急,可以打断优先级1或优先级2,同级按序播放,播报完毕后播报下一句优先级2
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
speak
@Deprecated public void speak(java.lang.String text, int priority, java.lang.String ttsId, int audioFocus) throws DDSNotInitCompleteException
已过时。此方法已在Agent中弃用,建议使用TTSEngine中的同名方法TTSEngine.speak(String, int, String, int)播报文本,支持SSML
当DDSConfig.K_TTS_MODE设置为"external"时,该接口无效,请直接调用外部TTS引擎的对应接口。
- 参数:
text- 播报文本priority- 优先级- 优先级0-保留,与aios语音交互同级,仅限内部使用;
- 优先级1-正常,默认选项,同级按序播放;
- 优先级2-重要,可以插话优先级1,同级按序播放,播报完毕后继续播报刚才被插话的优先级1
- 优先级3-紧急,可以打断优先级1或优先级2,同级按序播放,播报完毕后播报下一句优先级2
ttsId- 用于追踪该次播报的id,建议使用UUID.audioFocus- 该次播报的音频焦- priority == 0
AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE - priority != 0
AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK
- priority == 0
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
shutup
@Deprecated public void shutup(java.lang.String ttsId) throws DDSNotInitCompleteException
已过时。此方法已在Agent中弃用,建议使用TTSEngine中的同名方法TTSEngine.shutup(String)停止播报接口
当DDSConfig.K_TTS_MODE设置为"external"时,该接口无效,请直接调用外部TTS引擎的对应接口。
- 参数:
ttsId- 和speak(String, int, String, int)ttsId.一致 ttsId与speak接口的ttsId一致,则停止或者移除该播报; ttsId为空, 停止所有播报; ttsId为"0",停止当前播报.- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
updateAccessToken
public boolean updateAccessToken(java.lang.String accessToken) throws DDSNotInitCompleteException
-
updateAccessToken
public boolean updateAccessToken(java.lang.String accessToken, java.lang.String userId) throws DDSNotInitCompleteException
-
getAccessToken
public java.lang.String getAccessToken() throws DDSNotInitCompleteException
-
setAuthCode
public void setAuthCode(AuthInfo authInfo, com.aispeech.dui.oauth.TokenListener tokenListener) throws DDSNotInitCompleteException
dca授权登录, 该方法需要在SDK初始化后使用; 此方法应该在 OathSDK 登录获取 authCode 后使用 与之对应的方法是clearAuthCode()- 参数:
tokenListener- 返回成功和错误的信息- 抛出:
DDSNotInitCompleteException
-
clearAuthCode
public void clearAuthCode() throws DDSNotInitCompleteException
清除 authcode, 该方法需要在SDK初始化后使用; 与之对应的方法是setAuthCode(AuthInfo, TokenListener)
-
getLocalData
public java.lang.String getLocalData(java.lang.String key) throws DDSNotInitCompleteException
从 sdk 保存的数据里获取对应的值获取 oauth 的 userId 示例:
DDS.getInstance().getAgent().getLocalData("/local_keys/aispeech_user_id")
- 参数:
key- key- 返回:
- 值
- 抛出:
DDSNotInitCompleteException
-
setLocalData
public void setLocalData(java.lang.String key, java.lang.String value) throws DDSNotInitCompleteException
设置 数据到 sdk设置 oauth 的 userId 示例:
DDS.getInstance().getAgent().setLocalData("/local_keys/aispeech_user_id", "XXX");
- 参数:
key- keyvalue- value- 抛出:
DDSNotInitCompleteException
-
setDDSMode
public void setDDSMode(int mode) throws DDSNotInitCompleteException
设置场景模式- 参数:
mode- 场景模式, 参考DDSMode- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
setDuplexMode
public void setDuplexMode(Agent.DuplexMode duplexMode) throws DDSNotInitCompleteException
设置dds策略- 参数:
duplexMode- 策略 DuplexMode.HALF_DUPLEX:一问一答策略, DuplexMode.FULL_DUPLEX:全双工策略- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
getDuplexMode
public Agent.DuplexMode getDuplexMode() throws DDSNotInitCompleteException
获取当前的运行模式- 返回:
- DuplexMode.HALF_DUPLEX:一问一答策略, DuplexMode.FULL_DUPLEX:全双工策略
- 抛出:
DDSNotInitCompleteException
-
setEnableVoip
public void setEnableVoip(boolean enableVoip) throws DDSNotInitCompleteException
设置是否使用voip功能- 参数:
enableVoip- true/false- 抛出:
DDSNotInitCompleteException
-
feedPcm
public void feedPcm(byte[] pcm)
外部录音机拾音接口需要将DDSConfig.K_RECORDER_MODE设置为"external",该接口才会生效
- 参数:
pcm- 音频数据
-
feedSbc
public void feedSbc(byte[] sbc)
外部录音机拾音接口需要将DDSConfig.K_RECORDER_MODE设置为"external",该接口才会生效 并且需要提前调用: DDS.getInstance().getAgent().setRecorderMode(Agent.RecorderMode.SBC)
- 参数:
sbc- sbc格式的音频数据
-
feedOpus
public void feedOpus(byte[] opus)
外部录音机拾音接口需要将DDSConfig.K_RECORDER_MODE设置为"external",该接口才会生效 并且需要提前调用: DDS.getInstance().getAgent().setRecorderMode(Agent.RecorderMode.OPUS)
- 参数:
opus- sbc格式的音频数据
-
setRecorderMode
public void setRecorderMode(Agent.RecorderMode recorderMode) throws DDSNotInitCompleteException
设置外部录音机拾音模式需要将DDSConfig.K_RECORDER_MODE设置为"external",该接口才会生效
- 参数:
recorderMode- 音频格式枚举- 抛出:
DDSNotInitCompleteException
-
setTTSRequestListener
public void setTTSRequestListener(TTSRequestListener listener) throws DDSNotInitCompleteException
外部TTS引擎注册接口需要将DDSConfig.K_TTS_MODE设置为"external",该接口才会生效
- 参数:
listener- TTS请求监听器。如果为空,则为解除注册- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
notifyTTSEnd
public void notifyTTSEnd()
外部TTS播报结束通知接口播放完毕后,需要调用该接口才能自动进入下一轮识别
需要将DDSConfig.K_TTS_MODE设置为"external",该接口才会生效
-
notifyTTSEnd
public void notifyTTSEnd(java.lang.String ttsId)
外部TTS播报结束通知接口播放完毕后,需要调用该接口才能自动进入下一轮识别
需要将DDSConfig.K_TTS_MODE设置为"external",该接口才会生效
-
updateVocabs
public java.lang.String updateVocabs(VocabIntent... vocabs) throws DDSNotInitCompleteException
更新词库接口更新指定词库的词条。 更新结果可以通过sys.upload.result消息来获取。
- 参数:
vocabs- 需要更新的词库列表- 返回:
- 请求ID,用于追踪sys.upload.result
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception- 另请参阅:
VocabIntent
-
updateVocabs
public java.lang.String updateVocabs(int mode, VocabIntent... vocabs) throws DDSNotInitCompleteException
更新词库接口更新指定词库的词条。 更新结果可以通过sys.upload.result消息来获取。
- 参数:
mode- VocabIntent.LOCAL VocabIntent.CLOUDvocabs- 需要更新的词库列表- 返回:
- 请求ID,用于追踪sys.upload.result
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception- 另请参阅:
VocabIntent
-
updatePhraseHints
public void updatePhraseHints(PhraseHintsIntent... phraseHints) throws DDSNotInitCompleteException
更新热词识别接口(请求级别)每次请求都会带上热词词库, 例如: [{"type": "vocab", "name": "行政区", "data":["黄浦区"]}] 本接口为覆盖式接口,以最新设置为准,如需要清除请求空参数即可
- 参数:
phraseHints- 需要更新的热词识别列表- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception- 另请参阅:
PhraseHintsIntent
-
updatePhraseList
public void updatePhraseList(PhraseList... phraseLists)
设置热词,用于在一路中做热词增强识别。如果不启用该功能请不要使用该方法每次请求时会带上热词。上传形式如: [{"name":"common", "words":["示例"], ”boost“:3}]
使用示例:PhraseList p = new PhraseList(); p.setName("common"); // 槽位 默认是 common p.setBoost(1); // 表示增强强度,从小到大取值是1,2,3; 默认值是1 p.addWord("苏州"); p.addWord("上海"); DDS.getInstance().getAgent().updatePhraseList(p);- 参数:
phraseLists- 热词
-
updateAsrDropWords
public void updateAsrDropWords(java.lang.String asrDropWords)
设置需要进行识别过滤的词 使用示例:String asrDropWords = "你好小驰,小苹果"; DDS.getInstance().getAgent().updateAsrDropWords(asrDropWords);
- 参数:
asrDropWords- 识别过滤词
-
updateVocab
@Deprecated public java.lang.String updateVocab(java.lang.String vocabName, java.lang.String[] contents, boolean addOrDelete) throws DDSNotInitCompleteException
已过时。Replaced byupdateVocabs(VocabIntent...)
-
updateDeviceInfo
@Deprecated public java.lang.String updateDeviceInfo(java.lang.String deviceJson) throws DDSNotInitCompleteException
已过时。更新设备状态,用来保存设备的一些状态,比如:蓝牙是否打开 更新结果可以通过sys.upload.result消息来获取- 参数:
deviceJson- 设备状态信息的Json串,例如: {"bluetooth":{”state“:"disconnected"}},在技能中使用$context.bluetooth.state$将会获取到返回值"disconnected"- 返回:
- 请求ID,用于追踪sys.upload.result
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
updateProductContext
public java.lang.String updateProductContext(ContextIntent intent) throws DDSNotInitCompleteException
更新设备状态,产品级的配置。比如:定位信息,设备硬件状态等 更新结果可以通过sys.upload.result消息来获取- 参数:
intent- 请求的ContextIntent对象,包括key和value 如:ContextIntent intent = new ContextIntent("location",{"city":"苏州市"}); updateProductContext(intent); 技能里通过$context.location.city$即可获取到"苏州市"- 返回:
- 请求的ID,用于追踪sys.upload.result
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
updateSkillContext
public java.lang.String updateSkillContext(ContextIntent intent) throws DDSNotInitCompleteException
更新技能配置,需要调用ContextIntent.setSkillId设置技能ID 更新结果可以通过sys.upload.result消息来获取- 参数:
intent- 请求的ContextIntent对象,包括key、value、skillId。- 返回:
- 请求的ID,用于追踪sys.upload.result
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
endSkillInDialog
public java.lang.String endSkillInDialog() throws DDSNotInitCompleteException
在多轮对话中强制设置为首轮,进入延迟聆听状态。(全双工模式下支持此接口) 如果当前在对话中,则进入延迟聆听状态并发送消息:sys.dialog.endSkillDm 如果当前在播报中,则打断当前播报进入延迟聆听状态并发送消息:sys.dialog.endSkillDm 如果当前不在对话中,此接口无效- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
updateCustomSyncInfo
public void updateCustomSyncInfo(org.json.JSONObject obj) throws DDSNotInitCompleteException
自定义多模态事件同步,该接口用于客户端给对话中控发送一个事件- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
updateDispatchEvent
public java.lang.String updateDispatchEvent(org.json.JSONObject obj) throws DDSNotInitCompleteException
多模态事件同步,该接口用于客户端给对话中控发送一个事件,例如:- 不再支持:
在多轮对话中强制设置为首轮,传入数据为: new JSONObject().put("endSkill", "true")- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
updateDmsPolicy
public void updateDmsPolicy(int policy) throws DDSNotInitCompleteException
设置对话离线与在线模式- 参数:
policy- : 0: 在线优先模式,如果网络离线自动切换到离线 1: 强制离线模式 2: 强制在线模式 3: 混合对话模式- 抛出:
DDSNotInitCompleteException
-
updateDmSync
public void updateDmSync(org.json.JSONObject obj) throws DDSNotInitCompleteException
对话同步接口- 参数:
obj-- 抛出:
DDSNotInitCompleteException
-
getProductContext
public java.lang.Object getProductContext(java.lang.String inputKey) throws DDSNotInitCompleteException
获取产品的配置信息- 参数:
inputKey- 配置项名称- 返回:
- 配置项值
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
getSkillContext
public java.lang.Object getSkillContext(java.lang.String skillId, java.lang.String inputKey) throws DDSNotInitCompleteException
获取技能的配置信息- 参数:
skillId- 技能IDinputKey- 配置项名称- 返回:
- 配置项值
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
clearDeviceInfo
public java.lang.String clearDeviceInfo(java.lang.String key) throws DDSNotInitCompleteException
清空客户端上传的设备信息- 参数:
key- 不为null时,清空指定key的设备信息,如"state"- 返回:
- 请求ID,用于追踪sys.upload.result
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
getDeviceInfo
public java.lang.String getDeviceInfo() throws DDSNotInitCompleteException
获取客户端保存的设备信息- 返回:
- 设备信息的jsonString,例如:{"bluetooth":"disconnected"}
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
updateMinorWakeupWord
@Deprecated public void updateMinorWakeupWord(java.lang.String word, java.lang.String pinyin, java.lang.String threshold, java.lang.String[] greetings) throws DDSNotInitCompleteException
已过时。此接口在Agent中已弃用,参见WakeupEngine.updateMinorWakeupWord(String, String, String, String[])更新副唤醒词的接口支持设置一个副唤醒词,重复调用会以最新的副唤醒词为准
- 参数:
word- 副唤醒词, 若设置null,则清空当前的副唤醒词pinyin- 副唤醒词的拼音threshold- 副唤醒词的阈值, 若设置null,则自动估算greetings- 副唤醒词的欢迎语, 若设置null,则与主唤醒词保持一致- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
getASREngine
public ASREngine getASREngine()
获取ASR引擎- 返回:
- ASREngine实例
-
getTTSEngine
public TTSEngine getTTSEngine()
获取TTS引擎- 返回:
- TTSEngine实例
-
getWakeupEngine
public WakeupEngine getWakeupEngine()
获取Wakeup引擎- 返回:
- Wakeup实例
-
updateCommandWakeupWord
@Deprecated public void updateCommandWakeupWord(java.lang.String[] actions, java.lang.String[] words, java.lang.String[] pinyin, java.lang.String[] threshold, java.lang.String[][] greetings) throws DDSNotInitCompleteException
已过时。此接口在Agent中已弃用,参见WakeupEngine.updateCommandWakeupWord(String[], String[], String[], String[], String[][])更新命令唤醒词的接口,这类唤醒词会在唤醒之后执行一条指令,不能打断正在播报的语音支持设置多个命令唤醒词,所以参数为数组,重复调用会以最新的命令唤醒词数组为准。
- 参数:
actions- 命令唤醒词对应的command命令(必须)words- 命令唤醒词的汉字(必须)pinyin- 命令唤醒词的拼音(必须)threshold- 命令唤醒词的阈值(必须greetings- 命令唤醒词对应的唤醒语,一个唤醒词可以设置多条欢迎语,所以参数为二维数组,如果想要某个唤醒词不要欢迎语,那么该第二维数组的string可以设置为空字符串""- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
clearCommandWakeupWord
@Deprecated public void clearCommandWakeupWord() throws DDSNotInitCompleteException
已过时。此接口在Agent中已弃用,参见WakeupEngine.clearCommandWakeupWord()清空命令唤醒词的接口- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
clearShortCutWakeupWord
@Deprecated public void clearShortCutWakeupWord() throws DDSNotInitCompleteException
已过时。此接口在Agent中已弃用,参见WakeupEngine.clearShortCutWakeupWord()清空打断唤醒词的接口- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
updateShortcutWakeupWord
@Deprecated public void updateShortcutWakeupWord(java.lang.String[] words, java.lang.String[] pinyin, java.lang.String[] threshold) throws DDSNotInitCompleteException
已过时。此接口在Agent中已弃用,参见WakeupEngine.updateShortcutWakeupWord(String[], String[], String[])更新打断唤醒词的接口,这类唤醒词能打断正在播报的语音并且将唤醒词送入识别支持设置多个打断唤醒词,所以参数为数组,重复调用会以最新的打断唤醒词数组为准。
- 参数:
words- 打断唤醒词的汉字(必须)pinyin- 打断唤醒词的拼音(必须)threshold- 打断唤醒词的阈值(必须- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
setVadPauseTime
@Deprecated public boolean setVadPauseTime(long millis) throws DDSNotInitCompleteException
已过时。设置VAD后端停顿时间的接口若VAD在用户说话时停顿超过一定的时间,则认为用户已经说完,发出sys.vad.end消息,结束录音。
- 参数:
millis- 后端停顿时间,单位为毫秒。默认值为500毫秒。- 返回:
- true-设置成功;false-设置失败
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
getVadPauseTime
@Deprecated public long getVadPauseTime() throws DDSNotInitCompleteException
已过时。获取VAD后端停顿时间的接口- 返回:
- millis 后端停顿时间,单位为毫秒。
- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
sendText
public void sendText(java.lang.String text) throws DDSNotInitCompleteException
输入文本的接口跳过对话中的识别过程,直接开始对话中的语义理解
若当前没有在对话中,则以文本作为首轮说法,新发起一轮对话请求 若当前正在对话中,则跳过识别,直接发送文本
- 参数:
text- 输入的文本内容- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
getSkillList
public java.util.List<SkillConfig> getSkillList() throws DDSNotInitCompleteException
-
pauseDialog
public void pauseDialog() throws DDSNotInitCompleteException
暂停当前对话- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
resumeDialog
public void resumeDialog() throws DDSNotInitCompleteException
恢复当前对话- 抛出:
DDSNotInitCompleteException- 如果DDS没有初始化完成,会抛出exception
-
setDMCallback
@Deprecated public void setDMCallback(DMCallback callback)
已过时。该接口极端情况会导致rpc死锁问题,已舍弃。建议使用支持topic的{setDMTaskCallback(DMTaskCallback)}接口此接口支持修改对话中的语音播报,修改文本展示等功能- 参数:
callback- 对话监听器
-
setDMWkupRetCallback
public void setDMWkupRetCallback(DMWkupRetCallback dmWkupRetCallback)
此接口支持修改唤醒逻辑,是否需要忽略唤醒词类型强行唤醒/忽略唤醒- 参数:
dmWkupRetCallback- 对话监听器
-
setDialogExtInfo
public void setDialogExtInfo(org.json.JSONObject extInfo)
配置对话的额外参数,由客户和服务器约定键值。设置后会在下次对话开始时带上对话发送 recorder.stream.start 消息的报文时,都会在 context.attributes 字段加上这里配置 JSON
- 参数:
extInfo- 额外参数, 为空时标识额外参数置空
-
setAudioFocusCallback
public void setAudioFocusCallback(AudioFocusCallback audioFocusCallback)
-
updatePermanentSkill
public void updatePermanentSkill(org.json.JSONArray jsonArray) throws DDSNotInitCompleteException
新增技能锁定接口,让用户说的话只落在锁定的技能里- 参数:
jsonArray- skillId array, [ {"skillId": "123123"}, {"skillId": "123123"}, {"skillId": "123123"}, ]- 抛出:
DDSNotInitCompleteException
-
setDMTaskCallback
public void setDMTaskCallback(DMTaskCallback dmTaskCallback)
此接口支持修改对话中的语音播报,修改文本展示等功能- 参数:
dmTaskCallback- 对话监听器
-
setDMTaskCallbackSync
public void setDMTaskCallbackSync(DMTaskCallbackSync dmTaskCallbackSync)
此接口支持修改对话中的语音播报,修改文本展示等功能,同步方法- 参数:
dmTaskCallbackSync- 对话监听器
-
setCustomTips
public void setCustomTips(org.json.JSONObject obj) throws DDSNotInitCompleteException
此接口支持动态修改 custom tips- 参数:
obj-取值:JSON字符串,如:
{ "71304":"这是识别结果为空的自定义播报", "71305":"这是语义结果为空的自定义播报", "71308":"这是进入闲聊技能的自定义播报", "713**":"*****" }- 抛出:
DDSNotInitCompleteException
-
onNoObserverAttached
public void onNoObserverAttached(java.lang.String topic)
- 指定者:
onNoObserverAttached在接口中com.aispeech.dui.dds.agent.ReferenceCountMap.OnReferenceCountChangeListener
-
onFirstObserverAttached
public void onFirstObserverAttached(java.lang.String topic)
- 指定者:
onFirstObserverAttached在接口中com.aispeech.dui.dds.agent.ReferenceCountMap.OnReferenceCountChangeListener
-
getSubscribedTopics
public java.util.Set<java.lang.String> getSubscribedTopics()
-
-