⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vxml_8h-source.html

📁 pwlib开发文档
💻 HTML
📖 第 1 页 / 共 5 页
字号:
00113 <span class="comment"> * Revision 1.16  2002/08/28 08:04:31  craigs</span>00114 <span class="comment"> * Reorganised VXMLSession class as per contributed code</span>00115 <span class="comment"> *</span>00116 <span class="comment"> * Revision 1.15  2002/08/28 05:10:27  craigs</span>00117 <span class="comment"> * Added ability to load resources via URI</span>00118 <span class="comment"> * Added cache</span>00119 <span class="comment"> *</span>00120 <span class="comment"> * Revision 1.14  2002/08/27 02:19:13  craigs</span>00121 <span class="comment"> * Added &lt;break&gt; command in prompt blocks</span>00122 <span class="comment"> * Fixed potential deadlock</span>00123 <span class="comment"> *</span>00124 <span class="comment"> * Revision 1.13  2002/08/15 04:11:16  robertj</span>00125 <span class="comment"> * Fixed shutdown problems with closing vxml session, leaks a thread.</span>00126 <span class="comment"> * Fixed potential problems with indirect channel Close() function.</span>00127 <span class="comment"> *</span>00128 <span class="comment"> * Revision 1.12  2002/08/08 01:03:19  craigs</span>00129 <span class="comment"> * Added function to re-enable automatic call clearing on script end</span>00130 <span class="comment"> *</span>00131 <span class="comment"> * Revision 1.11  2002/08/06 07:44:56  craigs</span>00132 <span class="comment"> * Added lots of stuff from OpalVXML</span>00133 <span class="comment"> *</span>00134 <span class="comment"> * Revision 1.10  2002/07/29 15:08:34  craigs</span>00135 <span class="comment"> * Added autodelete option to PlayFile</span>00136 <span class="comment"> *</span>00137 <span class="comment"> * Revision 1.9  2002/07/29 15:03:58  craigs</span>00138 <span class="comment"> * Added access to queue functions</span>00139 <span class="comment"> * Added autodelete option to AddFile</span>00140 <span class="comment"> *</span>00141 <span class="comment"> * Revision 1.8  2002/07/29 14:15:47  craigs</span>00142 <span class="comment"> * Added asynchronous VXML execution</span>00143 <span class="comment"> *</span>00144 <span class="comment"> * Revision 1.7  2002/07/17 08:34:12  craigs</span>00145 <span class="comment"> * Fixed deadlock problems</span>00146 <span class="comment"> *</span>00147 <span class="comment"> * Revision 1.6  2002/07/17 06:08:43  craigs</span>00148 <span class="comment"> * Added additional "sayas" classes</span>00149 <span class="comment"> *</span>00150 <span class="comment"> * Revision 1.5  2002/07/10 13:14:55  craigs</span>00151 <span class="comment"> * Moved some VXML classes from Opal back into PTCLib</span>00152 <span class="comment"> *</span>00153 <span class="comment"> * Revision 1.4  2002/07/05 06:27:26  craigs</span>00154 <span class="comment"> * Removed unused member variables</span>00155 <span class="comment"> * Added OnEmptyAction callback</span>00156 <span class="comment"> *</span>00157 <span class="comment"> * Revision 1.3  2002/07/02 06:23:51  craigs</span>00158 <span class="comment"> * Added recording functions</span>00159 <span class="comment"> *</span>00160 <span class="comment"> * Revision 1.2  2002/06/27 05:39:18  craigs</span>00161 <span class="comment"> * Fixed Linux warning</span>00162 <span class="comment"> *</span>00163 <span class="comment"> * Revision 1.1  2002/06/27 05:28:17  craigs</span>00164 <span class="comment"> * Initial version</span>00165 <span class="comment"> *</span>00166 <span class="comment"> *</span>00167 <span class="comment"> */</span>00168 00169 <span class="preprocessor">#ifndef _VXML_H</span>00170 <span class="preprocessor"></span><span class="preprocessor">#define _VXML_H</span>00171 <span class="preprocessor"></span>00172 <span class="preprocessor">#ifdef P_USE_PRAGMA</span>00173 <span class="preprocessor"></span><span class="preprocessor">#pragma interface</span>00174 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00175 <span class="preprocessor"></span>00176 <span class="preprocessor">#include &lt;queue&gt;</span>00177 00178 <span class="preprocessor">#include &lt;<a class="code" href="pipechan_8h.html">ptlib/pipechan.h</a>&gt;</span>00179 00180 <span class="preprocessor">#include &lt;<a class="code" href="pxml_8h.html">ptclib/pxml.h</a>&gt;</span>00181 <span class="preprocessor">#include &lt;<a class="code" href="delaychan_8h.html">ptclib/delaychan.h</a>&gt;</span>00182 <span class="preprocessor">#include &lt;<a class="code" href="pwavfile_8h.html">ptclib/pwavfile.h</a>&gt;</span>00183 <span class="preprocessor">#include &lt;<a class="code" href="ptts_8h.html">ptclib/ptts.h</a>&gt;</span>00184 <span class="preprocessor">#include &lt;<a class="code" href="url_8h.html">ptclib/url.h</a>&gt;</span>00185 00186 <span class="keyword">class </span><a class="code" href="classPVXMLSession.html">PVXMLSession</a>;00187 <span class="keyword">class </span>PVXMLDialog;00188 <span class="keyword">class </span><a class="code" href="classPVXMLSession.html">PVXMLSession</a>;00189 00190 <span class="keyword">class </span><a class="code" href="classPVXMLTransferOptions.html">PVXMLTransferOptions</a>;00191 <span class="keyword">class </span><a class="code" href="classPVXMLTransferResult.html">PVXMLTransferResult</a>;00192 00193 <span class="comment">// these are the same strings as the Opal equivalents, but as this is PWLib, we can't use Opal contants</span><a name="l00194"></a><a class="code" href="vxml_8h.html#a0">00194</a> <span class="preprocessor">#define VXML_PCM16         "PCM-16"</span><a name="l00195"></a><a class="code" href="vxml_8h.html#a1">00195</a> <span class="preprocessor"></span><span class="preprocessor">#define VXML_G7231         "G.723.1"</span><a name="l00196"></a><a class="code" href="vxml_8h.html#a2">00196</a> <span class="preprocessor"></span><span class="preprocessor">#define VXML_G729          "G.729"</span>00197 <span class="preprocessor"></span><a name="l00198"></a><a class="code" href="vxml_8h.html#a3">00198</a> <span class="preprocessor">#define PVXML_HAS_FACTORY   1</span>00199 <span class="preprocessor"></span><a name="l00200"></a><a class="code" href="classPVXMLGrammar.html">00200</a> <span class="keyword">class </span><a class="code" href="classPVXMLGrammar.html">PVXMLGrammar</a> : <span class="keyword">public</span> <a class="code" href="classPObject.html">PObject</a>00201 {00202   <a class="code" href="object_8h.html#a27">PCLASSINFO</a>(<a class="code" href="classPVXMLGrammar.html">PVXMLGrammar</a>, <a class="code" href="classPObject.html">PObject</a>);00203   <span class="keyword">public</span>:00204     <a class="code" href="classPVXMLGrammar.html#a0">PVXMLGrammar</a>(<a class="code" href="classPXMLElement.html">PXMLElement</a> * <a class="code" href="classPVXMLGrammar.html#n0">field</a>);<a name="l00205"></a><a class="code" href="classPVXMLGrammar.html#a1">00205</a>     <span class="keyword">virtual</span> BOOL <a class="code" href="classPVXMLGrammar.html#a1">OnUserInput</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> <span class="comment">/*ch*/</span>) { <span class="keywordflow">return</span> TRUE; }<a name="l00206"></a><a class="code" href="classPVXMLGrammar.html#a2">00206</a>     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classPVXMLGrammar.html#a2">Stop</a>() { }00207 <a name="l00208"></a><a class="code" href="classPVXMLGrammar.html#a3">00208</a>     <a class="code" href="classPString.html">PString</a> <a class="code" href="classPVXMLGrammar.html#a3">GetValue</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPVXMLGrammar.html#n1">value</a>; }<a name="l00209"></a><a class="code" href="classPVXMLGrammar.html#a4">00209</a>     <a class="code" href="classPXMLElement.html">PXMLElement</a> * <a class="code" href="classPVXMLGrammar.html#a4">GetField</a>() { <span class="keywordflow">return</span> <a class="code" href="classPVXMLGrammar.html#n0">field</a>; }00210 <a name="l00211"></a><a class="code" href="classPVXMLGrammar.html#s4">00211</a>     <span class="keyword">enum</span> <a class="code" href="classPVXMLGrammar.html#s4">GrammarState</a> { 00212       <a class="code" href="classPVXMLGrammar.html#s4s0">FILLED</a>,       <span class="comment">// got something that matched the grammar</span>00213       <a class="code" href="classPVXMLGrammar.html#s4s1">NOINPUT</a>,      <span class="comment">// timeout or still waiting to match</span>00214       <a class="code" href="classPVXMLGrammar.html#s4s2">NOMATCH</a>,      <span class="comment">// recognized something but didn't match the grammar</span>00215       <a class="code" href="classPVXMLGrammar.html#s4s3">HELP</a> };       <span class="comment">// help keyword</span>00216 <a name="l00217"></a><a class="code" href="classPVXMLGrammar.html#a5">00217</a>     <a class="code" href="classPVXMLGrammar.html#s4">GrammarState</a> <a class="code" href="classPVXMLGrammar.html#a5">GetState</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPVXMLGrammar.html#n2">state</a>; }00218 00219   <span class="keyword">protected</span>:<a name="l00220"></a><a class="code" href="classPVXMLGrammar.html#n0">00220</a>     <a class="code" href="classPXMLElement.html">PXMLElement</a> * <a class="code" href="classPVXMLGrammar.html#n0">field</a>;<a name="l00221"></a><a class="code" href="classPVXMLGrammar.html#n1">00221</a>     <a class="code" href="classPString.html">PString</a> <a class="code" href="classPVXMLGrammar.html#n1">value</a>;<a name="l00222"></a><a class="code" href="classPVXMLGrammar.html#n2">00222</a>     <a class="code" href="classPVXMLGrammar.html#s4">GrammarState</a> <a class="code" href="classPVXMLGrammar.html#n2">state</a>;00223 };00224 00225 00227 <a name="l00228"></a><a class="code" href="classPVXMLMenuGrammar.html">00228</a> <span class="keyword">class </span><a class="code" href="classPVXMLMenuGrammar.html">PVXMLMenuGrammar</a> : <span class="keyword">public</span> <a class="code" href="classPVXMLGrammar.html">PVXMLGrammar</a>00229 {00230   <a class="code" href="object_8h.html#a27">PCLASSINFO</a>(<a class="code" href="classPVXMLMenuGrammar.html">PVXMLMenuGrammar</a>, <a class="code" href="classPVXMLGrammar.html">PVXMLGrammar</a>);00231   <span class="keyword">public</span>:00232     <a class="code" href="classPVXMLMenuGrammar.html#a0">PVXMLMenuGrammar</a>(<a class="code" href="classPXMLElement.html">PXMLElement</a> * <a class="code" href="classPVXMLGrammar.html#n0">field</a>);00233 };

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -