IFlySpeechUtility.h 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. //
  2. // IFlySpeechUtility.h
  3. // MSCDemo
  4. //
  5. // Created by admin on 14-5-7.
  6. // Copyright (c) 2014年 iflytek. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #define iOS_EXCLUSIVE //iOS平台独占API
  10. @class IFlySpeechError;
  11. /*!
  12. * 引擎模式
  13. */
  14. typedef NS_ENUM(NSUInteger,IFlyEngineMode){
  15. /*!
  16. * 云端使用MSC,本地优先使用语记
  17. */
  18. IFlyEngineModeAuto = 0,
  19. /*!
  20. * 只使用MSC
  21. */
  22. IFlyEngineModeMsc,
  23. /*!
  24. * 本地只使用语记(受平台限制,云端无法使用语记)
  25. */
  26. IFlyEngineModePlus,
  27. };
  28. /*!
  29. * 服务类型
  30. */
  31. typedef NS_ENUM(NSUInteger,IFlySpeechPlusServiceType){
  32. /*!
  33. * 打开语记主界面
  34. */
  35. IFlySpeechPlusServiceTypeNone=0,
  36. /*!
  37. * 获取合成资源
  38. */
  39. IFlySpeechPlusServiceTypeTTS,
  40. /*!
  41. * 获取识别资源(未开放)
  42. */
  43. IFlySpeechPlusServiceTypeISR,
  44. /*!
  45. * 获取唤醒资源(未开放)
  46. */
  47. IFlySpeechPlusServiceTypeIVW,
  48. } ;
  49. /*! 语记返回回调
  50. */
  51. @protocol IFlySpeechplusDelegate <NSObject>
  52. /*!
  53. * 发生错误
  54. *
  55. * @param errorCode 错误码
  56. */
  57. - (void)onCompleted:(int)errorCode;
  58. /*!
  59. * 服务正常结束
  60. */
  61. - (void)onCompleted;
  62. @end
  63. /*!
  64. * 用户配置
  65. */
  66. @interface IFlySpeechUtility : NSObject
  67. /*!
  68. * 创建用户语音配置<br>
  69. * 注册应用请前往语音云开发者网站。<br>
  70. * 网站:http://www.xfyun.cn
  71. *
  72. * @param params 启动参数,必须保证appid参数传入,示例:appid=123456
  73. *
  74. * @return 语音配置对象
  75. */
  76. + (IFlySpeechUtility*) createUtility:(NSString *) params;
  77. /*!
  78. * 销毁用户配置对象
  79. *
  80. * @return 成功返回YES,失败返回NO
  81. */
  82. +(BOOL) destroy;
  83. /*!
  84. * 获取用户配置对象
  85. *
  86. * @return 用户配置对象
  87. */
  88. +(IFlySpeechUtility *) getUtility;
  89. /*!
  90. * 设置MSC引擎的状态参数
  91. *
  92. * @param value 参数值
  93. * @param key 参数名称
  94. *
  95. * @return 成功返回YES,失败返回NO
  96. */
  97. -(BOOL) setParameter:(NSString *) value forKey:(NSString*)key;
  98. /*!
  99. * 获取MSC引擎状态参数
  100. *
  101. * @param key 参数名
  102. *
  103. * @return 参数值
  104. */
  105. - (NSString *)parameterForKey:(NSString *)key;
  106. /*!
  107. * 引擎类型
  108. */
  109. @property (nonatomic, readonly) IFlyEngineMode engineMode;
  110. /*!
  111. * 语记协议委托
  112. */
  113. @property (nonatomic, assign) id<IFlySpeechplusDelegate> delegate;
  114. @end
  115. /*!
  116. * 讯飞语记类别
  117. */
  118. @interface IFlySpeechUtility (SpeechPlus)
  119. /*!
  120. * 检查讯飞语记是否安装
  121. *
  122. * @return 已安装返回YES,否则返回NO
  123. */
  124. + (BOOL)checkServiceInstalled;
  125. /*!
  126. * 获取讯飞语记下载地址进行下载,安装完成后即可使用服务。<br>
  127. * 下载地址需要通过[[UIApplication sharedApplication] openUrl:]打开
  128. *
  129. * @return 讯飞语记在App Store下载地址
  130. */
  131. + (NSString *)componentUrl;
  132. /*!
  133. * 注意:此接口废弃,不再需要使用<br>
  134. * 处理语记使用URL启动第三方应用程序时传递的数据<br>
  135. * 需要在 application:openURL:sourceApplication:annotation:或者application:handleOpenURL中调用。
  136. *
  137. * @param url 语记启动第三方应用程序时传递过来的URL
  138. *
  139. * @return 成功返回YES,失败返回NO。
  140. */
  141. - (BOOL)handleOpenURL:(NSURL *)url iOS_EXCLUSIVE;
  142. /*!
  143. * 打开讯飞语记获取相应类型服务,0表示打开主界面
  144. *
  145. * @param serviceType 服务类型
  146. *
  147. * @return 成功打开返回YES,否则返回NO
  148. */
  149. - (BOOL)openSpeechPlus:(IFlySpeechPlusServiceType)serviceType iOS_EXCLUSIVE;
  150. @end