001package com.aispeech.dui.dds.agent; 002 003import org.json.JSONObject; 004 005public interface DMTaskCallbackSync { 006 007 /** 008 * 支持callback的dmTask类型 009 */ 010 enum Type { 011 /** 012 * dm.output 013 */ 014 DM_OUTPUT("dm.output"), 015 016 /** 017 * rt.output 018 */ 019 RT_OUTPUT("rt.output"), 020 021 /** 022 * cdm.error 023 */ 024 CDM_ERROR("cdm.error"); 025 026 private String value; 027 028 Type(String value) { 029 this.value = value; 030 } 031 032 public static DMTaskCallbackSync.Type getTypeByVal(String val) { 033 for (DMTaskCallbackSync.Type type : values()) { 034 if (type.value.equals(val)) { 035 return type; 036 } 037 } 038 return null; 039 } 040 } 041 042 /** 043 * 同步对话task结果回调 044 * 045 * @param dmTaskResult 对话task结果 046 * @param type 结果类型{@link DMTaskCallback.Type} 047 */ 048 void onDMTaskResultSync(JSONObject dmTaskResult, DMTaskCallbackSync.Type type); 049}