欧美,精品,综合,亚洲,好吊妞视频免新费观看,免费观看三级吃奶,一级a片女人自慰免费看

 
GVOS 8.2 SP1 (ADL)& CT ADE 結(jié)構(gòu)
(三)
 

本文 [ 目錄 ] [ 第一頁(yè) ] [ 第二頁(yè) ] [ 第三頁(yè) ]

7. CT ADE 體系結(jié)構(gòu)(Topaz)介紹
  7.1.3. CTADE_A,路由
  7.1.4. CTADE_A,路由類(lèi)型:全雙工和半雙工
  7.1.5. CTADE_A, 呼叫控制、掛機(jī)處理和掛斷事件
  7.1.6. CTADE_Architecture技術(shù)
  7.1.7. CTADE_A 特征ID
  7.1.8. CTADE_A. 設(shè)置,TOPAZ.INI
  7.1.9CTADE_A. 提示音(Tones)

8. VOS 運(yùn)行日志

 

7. CT ADE 體系結(jié)構(gòu)(Topaz)介紹

  7.1.3. CTADE_A,路由

  許多電話(huà)操作需要兩種資源共同工作。例如,向呼叫者播放一段語(yǔ)音要求使用媒體資源播放文件,使用中繼資源建立與呼叫者的連接。中繼資源必須偵聽(tīng)媒體資源的輸出,這樣呼叫者才能聽(tīng)到播放的文件,媒體資源應(yīng)該偵聽(tīng)中繼資源,這樣才能處理呼叫者輸入的數(shù)字。
  在大多情況下,用戶(hù)不需明確地控制路由:缺省狀態(tài)下,CTADE_A通過(guò)用戶(hù)使用的函數(shù)將用戶(hù)所需的資源路由到一起。例如,當(dāng)播放一個(gè)文件時(shí),CTADE_A確定當(dāng)前媒體資源已經(jīng)路由到了當(dāng)前中繼資源上。
  但用戶(hù)可以替換Topaz的自動(dòng)路由。
  看下面的一個(gè)例子:
  ·如果有一個(gè)媒體資源,MediaUse函數(shù)預(yù)留媒體資源并且將其路由到當(dāng)前的中繼資源上。
  ·缺省狀態(tài)下,F(xiàn)axUse函數(shù)預(yù)留一個(gè)與當(dāng)前中繼資源兼容的傳真資源,并且將兩者路由到一起。
  ·如果使用MediaPlayFile函數(shù)時(shí)還沒(méi)有打開(kāi)一個(gè)媒體資源,播放文件前,Topaz會(huì)保留一個(gè)媒體資源,并且把它路由到當(dāng)前的中繼資源,如果沒(méi)有保留中繼資源,Topaz在保留媒體資源前會(huì)先保留一個(gè)中繼資源。
  ·向一個(gè)會(huì)議添加任何資源時(shí),Topaz都會(huì)將兩者路由到一起。
  然而,也可以調(diào)用下面的函數(shù)使自動(dòng)路由失效:
  TopazDisableAutoRoute();
  可以調(diào)用下面的函數(shù)使自動(dòng)路由重新有效:
  TopazEnableAutoRoute();

  7.1.4. CTADE_A,路由類(lèi)型:全雙工和半雙工

  如果使用全雙工連接,兩種資源之間有雙向的路由,如下圖所示。每一種資源偵聽(tīng)其他資源的傳輸,典型的情況如媒體和中繼設(shè)備之間的相互路由:

  然而,半雙工中,只是一種資源偵聽(tīng)另一種資源:

  一個(gè)全雙工連接函數(shù)TopazRoute(Res1, Index1, Res2, Index2)
  可以創(chuàng)建如第一個(gè)圖所示的路由,資源2在偵聽(tīng)資源1,反過(guò)來(lái),資源1也在偵聽(tīng)資源2。
  一個(gè)全雙工路由相當(dāng)于兩個(gè)偵聽(tīng)命令。
  一個(gè)半雙工連接如第二個(gè)圖所示,資源2在偵聽(tīng)資源1,但反過(guò)來(lái)資源1沒(méi)有偵聽(tīng)資源2(除非之前有路由命令使資源1偵聽(tīng)資源2)。

  7.1.5. CTADE_A, 呼叫控制、掛機(jī)處理和掛斷事件


  掛斷過(guò)程中有兩個(gè)重要的問(wèn)題:
  ·檢測(cè)呼叫者何時(shí)掛斷
  ·掛斷時(shí)處理

  7.1.5.1.掛斷檢測(cè)

  掛斷檢測(cè)操作可以體現(xiàn)出Topaz API透明性的好處。因?yàn)楫?dāng)使用中繼函數(shù)開(kāi)發(fā)應(yīng)用程序時(shí),不需要考慮CTADE_A進(jìn)行掛斷檢測(cè)的技術(shù)細(xì)節(jié)。
  當(dāng)使用開(kāi)發(fā)的應(yīng)用程序時(shí),可以使用相同的VOS代碼,不用考慮系統(tǒng),只需要改變一下Topaz的一下設(shè)置細(xì)節(jié)即可。

  7.1.5.2 掛斷處理

  檢測(cè)到呼叫者的掛斷操作后,VOS在當(dāng)前的p-code指令執(zhí)行完后(可能正在語(yǔ)句和表達(dá)式執(zhí)行中)停止運(yùn)行,并將控制權(quán)交給onhangup函數(shù)。然后onhangup函數(shù)就會(huì)一種執(zhí)行,直到遇見(jiàn)重啟、返回或掛斷結(jié)束(endhangup)的語(yǔ)句。如果遇見(jiàn)endhangup語(yǔ)句,效果與return語(yǔ)句相同,如果遇見(jiàn)return語(yǔ)句,程序返回到中斷的語(yǔ)句繼續(xù)執(zhí)行,如果處理onhangup的過(guò)程中又有一個(gè)掛斷事件發(fā)生,此事件將會(huì)被忽略。
  大多應(yīng)用中,建議使用restart將控制權(quán)交回程序的開(kāi)始,這樣會(huì)使體系結(jié)構(gòu)比較明確。
  如果掛斷發(fā)生時(shí)正在執(zhí)行象MediaPlayFile、MediaRecordFile或MediaWaitDigits等異步CTADE_A函數(shù)。VOS會(huì)中斷函數(shù),立即轉(zhuǎn)到onhangup處理。
  如果掛斷發(fā)生時(shí)只在執(zhí)行其他的阻塞函數(shù)如sem_set或ser_rdbuf。VOS直到函數(shù)完成后再轉(zhuǎn)到onhangup處理。
  TrunkDeferOnHangup函數(shù)和TrunkClearDeferOnHangup函數(shù)允許應(yīng)用程序定義關(guān)鍵代碼區(qū),這些代碼區(qū)不允許被onhangup處理函數(shù)中斷。一個(gè)典型的例子就是一組數(shù)據(jù)庫(kù)更新,一旦開(kāi)始,必須完全接收。當(dāng)有掛斷事件時(shí),TrunkDeferOnHangup函數(shù)后面的任何電話(huà)阻塞函數(shù)都將終止?刂茩(quán)交給onhangup函數(shù)的操作被推遲,直到函數(shù)TrunkClearDeferOnHangup。
例:
    dec
    var res:5;
    enddec
    program
    res = arg(1);
    TrunkUse(res);
    TrunkWaitCall();
    …
    …
    TrunkDisconnect();
    restart;
    endprogram

    
onhangup
    TrunkDisconnect(),
    restart;
    endonhangup

  7.1.6. CTADE_Architecture技術(shù)

  CTADE_Architecture(Topaz)是為API的透明性設(shè)計(jì)的,即一套程序可以在所有的電話(huà)API和所支持的所有中繼類(lèi)型下運(yùn)行。但某些特征只適用于某種技術(shù),例如,GloblaCall系統(tǒng)發(fā)送記帳比率信息,但其他中繼接口API不使用協(xié)議定義的記帳比率。所以,函數(shù)TrunkGetBilling不能提供R4GcTrunk技術(shù)到其他技術(shù)的接口,所以是不透明的。
  VOS提供了控制電話(huà)資源技術(shù)細(xì)節(jié)的函數(shù),象TrunkGetInt一樣,Get/Set函數(shù)可以操作特定的技術(shù)參數(shù)和API函數(shù)。
  Get/Set函數(shù)可以讀取和設(shè)置CTADE_A中只應(yīng)用于特殊技術(shù)的參數(shù)。
  Get函數(shù),象MediaGetInt返回技術(shù)的布爾、字符串和整數(shù)參數(shù),比如,要獲取R4DxMedia資源當(dāng)前的播放聲音的大小,可以使用MediaGetInt函數(shù)和REGID_PlaySpeed RegID(702):
  Value = MediaGetInt(702);
  Set函數(shù),象MediaSetInt可以設(shè)定技術(shù)參數(shù),例如要設(shè)定R4DxMedia資源當(dāng)前播放聲音值為7,可以使用MediaSetInt函數(shù)和REGID_PlaySpeed(702):
  MediaSetInt(702, 7);

注意:
  必須注意,調(diào)用API級(jí)的函數(shù)設(shè)置一個(gè)CTADE_A參數(shù)可能不只改變電路板級(jí)的參數(shù)。例如,R4DxMedia中,使用函數(shù)MediaSetBool設(shè)置REGID_R4DxMediaDisableAllToneDetection(280)為0或1來(lái)清除Dialogic提示音ID。
  MediaSetBool(280, 0);
  此處函數(shù)MediaSetBool沒(méi)有設(shè)置Board級(jí)的參數(shù)為0,此函數(shù)調(diào)用Dialogic的函數(shù)dx_deltones來(lái)刪除以前在此通道上的用戶(hù)定義提示音。
  要詳細(xì)了解VOS中可用的函數(shù)和方法以及更多例子,參見(jiàn)Get/Set函數(shù)。
  可以從CTADE_A RegIDs中找到一系列可用的RegIDs。
  當(dāng)前的CTADE_A技術(shù)如下:

  中繼技術(shù)
  技術(shù)    ID號(hào)碼  描述
  SimTrunk  1001   SimPhone Trunk
  R4AgTrunk  1002   R4 ag_ / dx_ API (aka LSI)
  R4GcTrunk  1003   R4 gc_ API
  S100Trunk  1005   S.100 CTscr_ API
  R4MsTrunk  1006   R4 ms_ station API

  媒體技術(shù)
  技術(shù)    ID號(hào)碼  描述
  SimMedia  2001   SimPhone Media
  R4DxMedia 2002   R4 dx_ API (aka VOX)
  S100Media 2003   S.100 CTplyr_/CTrcdr_ API
  WaveMedia 2004   Win32 Wave API

  傳真技術(shù)
  技術(shù)   ID號(hào)碼 描述
  R4FxFax 3001  R4 fx_ API
  R4GrtFax 3002  GammaLink fax
  S100Fax 3003  S.100 Fax

  會(huì)議技術(shù)
  技術(shù)   ID號(hào)碼 描述
  R4MsConf 5001  R4 ms_ conference API
  R4DcbConf 5002   R4 dcb_ API
  S100Conf 5003  S.100 CTconf_ API

  例如,下面為R4DxMedia技術(shù)的一些(some3)RegId:
  R4DxMedia RegIDs

  7.1.7. CTADE_A 特征ID

  特征ID
  保存在Topaz 特征(Profile)中的一些描述系統(tǒng)細(xì)節(jié)的RegID稱(chēng)為特征ID。Profile的內(nèi)容可以通過(guò)TopazProfile.exe -L命令來(lái)查看,Profile的內(nèi)容產(chǎn)生一個(gè)包含文件,產(chǎn)生的文件中的每一項(xiàng)都代表一個(gè)特征(Profile)ID。
  可以通過(guò)適當(dāng)?shù)腉et函數(shù)獲得特征(profile)ID的值,例如,要查出是否支持ANI(呼叫者ID),可以使用函數(shù)TrunkGetBool 和REGID_ANISupported(301):
   Support = TrunkGetBool(301);
  Topaz Profile是類(lèi)似于Windows注冊(cè)表的一個(gè)數(shù)據(jù)庫(kù),是一個(gè)文件和目錄樹(shù),包括以下信息:
  ·所有安裝的硬件資源細(xì)節(jié),由資源掃描器決定。
  ·用戶(hù)提供的硬件配置信息,資源掃描器檢查不到。
  ·用戶(hù)可設(shè)的選項(xiàng),象缺省的語(yǔ)言(英語(yǔ)、西班牙語(yǔ)… …)。
  運(yùn)行的VOS應(yīng)用程序把Profile當(dāng)作只讀來(lái)處理,這些程序開(kāi)始運(yùn)行前,Profile應(yīng)該完全初始化。
  Topaz Profile中不包含任何動(dòng)態(tài)改變的信息,象某一資源的狀態(tài)等等。
  Profile中的各項(xiàng),稱(chēng)為Profile ID,具有名字和值。某一項(xiàng)的名字與一個(gè)文件系統(tǒng)中的路徑名相似。所有的名字從根段開(kāi)始,以反斜線(xiàn)表示。比如,Topaz 代碼內(nèi)部使用的Profile ID如下:
   \Techs\TechCount
  TechCount的值是本PC機(jī)安裝的不同的CTADE_A提示的數(shù)目(一個(gè)技術(shù)是指一個(gè)特定的硬件和相應(yīng)的API函數(shù),如DialogicR4 VOX)。
值分三種類(lèi)型:整數(shù),字符串和布爾值(True/False)。
常?梢钥吹饺缦碌臄(shù)值和名字:
    \Techs\TechCount=4
  一個(gè)Topaz 目錄可以包含一些數(shù)值,象TechCount,也可以包含一個(gè)數(shù)值數(shù)組,名字相同,索引不同。(Topaz不允許在同一目錄下既包含數(shù)組又包含非數(shù)組值)。如,\TechTypes
包含一個(gè)整數(shù)值的數(shù)組,\TechTypes[0],\TechTypes[1],…..最大的索引為T(mén)echCount-1。
  此例中數(shù)組可以包含連續(xù)的索引,或數(shù)組的索引可以不連續(xù),比如,可以只有A[1]、A[16]和A[19]有值。如果數(shù)組的索引不連續(xù),CTADE_A要求有一個(gè)索引連續(xù)的數(shù)組,其值為上個(gè)數(shù)組中有值的索引,如上例,可以有另一個(gè)數(shù)組B[0]=1,B[1]=16和B[2]=19.設(shè)計(jì)規(guī)則:CTADE_A
  不需要查詢(xún)提供的第一個(gè)數(shù)組,但需要查找第二個(gè)數(shù)組的值以及指定數(shù)組大小的值。比如TechCount。這有助于提供系統(tǒng)的前向和后向的兼容性,并且提高資源掃描器改變時(shí)程序的健壯性。

  7.1.7.1. 更新Topaz Profile

  TopazProfile 數(shù)據(jù)庫(kù)使用下面程序進(jìn)行更新:
  C:\Program Files\Parity Software\Common\Topaz\Bin\TopazProfile.exe
  TopazProfile.exe是一個(gè)Win32平臺(tái)的應(yīng)用程序,有以下的選項(xiàng):
  ·-S 掃描設(shè)備(刪除Profile并且重新建立)
  ·-L 將Profile列入"TopazProfile.exe"
  ·-D 刪除Profile
  ·-C<file> 從文件中向Profile拷貝關(guān)鍵字
  ·-I 與-C一樣更新Profile,文件名取自"TOPAZ.INI"的[ProfileInclude Files]
部分。
  ·-F<file> 讀取文件,標(biāo)準(zhǔn)輸出
  ·-K 以整數(shù)值排列關(guān)鍵詞(缺省以字母排列)
  創(chuàng)建和設(shè)置Topaz Profile文件
  與Windows注冊(cè)表不同,用戶(hù)的應(yīng)用程序不能直接訪(fǎng)問(wèn)Profile,并且不能創(chuàng)建新的條目。Profile只能由Topaz在內(nèi)部使用。
  完成下列設(shè)置后通過(guò)運(yùn)行TopazProfile程序創(chuàng)建TopazProfile。
  缺省的情況下,TopazProfile安裝在主機(jī)的系統(tǒng)盤(pán):
  C:\Program Files\Parity Software\Common\Topaz\Profile
  為了Topaz能夠運(yùn)行,文件Topaz.ini的[Profile]部分必須指定Topaz Profile的路徑。
  "通過(guò)在Topaz設(shè)置文件(Topaz.ini)和Profile包含文件中添加合適的條目,在Topaz Profile設(shè)置某種資源參數(shù)。"
  RegId和Get/Set函數(shù)
  Topaz通過(guò)在內(nèi)部使用其他的RegID來(lái)操作技術(shù)級(jí)的信息。這些RegID不在Topaz Profile中,但可以通過(guò)Get/Set函數(shù)檢索系統(tǒng)信息或執(zhí)行一個(gè)技術(shù)級(jí)的命令。
  下列RegIDs用于Get/Set函數(shù)中。同時(shí)也列出了每種技術(shù)的特定RegID。
  看下列RegsID:

  7.1.7.2Topaz RegID:R4AgTrunk

  7.1.7.3

  7.1.7.4 Topaz RegID:R4DxMedia





  7.1.7.5 Topaz RegID:R4GcTrunk



  7.1.7.6 Topaz RegID:R4MsTrunk

  7.1.7.7. Topaz RegIDs: S100Conf

  7.1.7.8. Topaz RegIDs:S100Fax

  7.1.7.9. Topaz RegID:S100Media

  7.1.8. CTADE_A. 設(shè)置,TOPAZ.INI

  Topaz.ini文件設(shè)定系統(tǒng)首次Topaz引擎時(shí)所要讀取的各種設(shè)置參數(shù)。要改變Topaz.ini中的任何項(xiàng)時(shí),必須確保這些變化生效時(shí)VOS和CallSuite的所有例程已全部關(guān)閉,因?yàn)檫@些例程使用Topaz。

  7.1.8.1 [Profile]部分

  Topaz.ini文件的Profile部分設(shè)定開(kāi)始時(shí)控制Topaz Profile的參數(shù)
    [Profile]
    Path=e:\Program Files\Parity Software\Common\Topaz\Profile


  7.1.8.2. [ProfileIncludeFiles] 部分


  Topaz.ini文件的ProfileIncludeFiles部分列出了每次TopazProfile.exe運(yùn)行時(shí)(使用Include選項(xiàng))都要拷貝到Topaz Profile的文件。例:
    [ProfileIncludeFiles]
    C:\Topaz\LangRegs.tzp
    C:\Topaz\IPFRegs.tzp


  7.1.8.3. [ProfileExcludeTechnologies]部分

  Topaz.ini文件中的ProfileExcludeTechnologies部分列出了TopazProfile.exe自動(dòng)掃描時(shí)排除的技術(shù)。 例:
    [ProfileExcludeTechnologies]
    S100Trunk
    S100Media


  7.1.8.4. [ProfileDependencies] 部分

  Topaz.ini文件的ProfileDependencies部分列出了TopazProfile.exe運(yùn)行前必須啟動(dòng)的Windows NT/2000的服務(wù)程序。例:
    [ProfileDependencies]
    Alerter
    Dialogic

  7.1.8.5. [SimMediaScanner]部分

  Topaz.ini文件的SimMediaScanner部分指定了SimMedia使用的Wave IN和Wave Out 設(shè)備的ID。
    [SimMediaScanner]
    WaveIn=<Wave In ID>
    WaveOut=<Wave Out ID>

  缺省情況下,兩個(gè)Wave ID都為0。例:
    [SimMediaScanner]
    WaveIn=1
    WaveOut=1

  7.1.8.6 [WaveScanner]部分

  Topaz.ini文件的WaveScanner部分指定了WaveMedia技術(shù)所使用的Wave IN和Wave Out 設(shè)備的ID。例:
    [WaveScanner]
    WaveDeviceID0=1,1


  7.1.8.7. [S100Groups] 部分


  Topaz.ini文件的S100Groups部分指定了應(yīng)用程序所使用的S100組和相關(guān)的Topaz資源。
  S100Groops部分的缺省設(shè)置保存在[S100Defaults]部分中。例:
    [S100Groups]
    CCRGroups = 4
    withMedia
    ASI = CCRMEDIA_ASI


  7.1.8.8. [S100Defaults]部分


   Topaz.ini文件的S100Defaults部分指定S100Groups部分的缺省值,如果沒(méi)有設(shè)定S100Defaults部分的關(guān)鍵詞,Topaz使用標(biāo)準(zhǔn)的缺省設(shè)置。有效的關(guān)鍵詞和相應(yīng)的缺省值如下例所示: 例:
    [S100Defaults]
    Server = Default_Server
    AppProfile = Parity_TOPAZ_ProfileS100v2
    MakeCallGroupConfig =
    MakeCallGroupSet =
    SPRGroupConfig = SPRMEDIA_GROUPCONFIG
    SPRGroupSet = SPRMEDIA_GROUPSET
    SPROnlyGroupConfig = SPRONLY_GROUPCONFIG
    SPROnlyGroupSet = SPRONLY_GROUPSET


  MakeCallGroupSet、SPROnlyGroupSet和SPRGroupSet只用于CT Media版本V1。版本V2中被刪除。
  此部分的詳細(xì)描述參見(jiàn)S100Topaz.ini配置中此部分的描述和S100Groups部分。

  7.1.9CTADE_A. 提示音(Tones)

  此章中介紹如何產(chǎn)生和檢測(cè)提示音。

  7.1.9.1 播放提示音


  Tones,也稱(chēng)為全程Tones或全局Tones,可以為以下4中類(lèi)型:?jiǎn)我、雙音、有步調(diào)的單音和有步調(diào)的雙音。
  單音和雙音
  單音只有一個(gè)幅度和頻率,雙音有兩套幅度和頻率。公眾網(wǎng)中的大部分相似的聲音,包括Touch-tones,都是雙音。
  步調(diào)
  步調(diào)音有規(guī)則的步調(diào),一段為音調(diào),一段為靜音。在美國(guó),忙音采用步調(diào)音,步調(diào)如下所示:

  沒(méi)有步調(diào)的音稱(chēng)為連續(xù)音,比如,摘機(jī)音是連續(xù)音。

  播放音調(diào)
  可以使用函數(shù)MediaPlaySingleContinuousTone播放一段連續(xù)音。
  MediaPlaySingleContinuousTone(Freq1, Amp1, Duration, StopTones);

  Freq1參數(shù)定義聲音的頻率,可在300到2000hz之間。Amp1定義聲音的幅度,有效的范圍為-40到2dB。Duration 參數(shù)指定聲音的長(zhǎng)度,以0.1秒為單位。StopTones參數(shù)是一個(gè)摘機(jī)音(touch tone)位的字符串,可以中斷任何語(yǔ)音文件的播放和錄制。
使用函數(shù)MediaPlayDualContinuousTone播放一段連續(xù)的雙音:
  MediaPlayDualContinuousTone(Freq1, Amp1, Freq2, Amp2, Duration, StopTones);

  除了Freq2和Amp2這兩個(gè)參數(shù)外,其他參數(shù)和函數(shù)MediaPlaySingleContinuousTone的參數(shù)相同,F(xiàn)req2和Amp2指定雙音第二部分的頻率和幅度。
  播放步調(diào)音的函數(shù)與播放連續(xù)音的函數(shù)相同:
  MediaPlaySingleCadenceTone(Freq1, Amp1, OnTime, OffTime, Count, StopTones);
  MediaPlayDualCadenceTone(Freq1, Amp1, Freq2, Amp2, OnTime, OffTime, Count,
StopTones);

  除了參數(shù)Freq1、Amp1、Freq2和Amp2外,OnTime參數(shù)指定播放聲音的時(shí)間長(zhǎng)度,由0.1秒為單位表示,OffTime參數(shù)指定靜音的時(shí)間長(zhǎng)度,也由0.1秒為單位表示。Count參數(shù)指定了步調(diào)重復(fù)的次數(shù)。
  如果在Topaz Profile中指定了某一聲音的參數(shù),就可以在媒體資源中使用函數(shù)MediaPlayTone來(lái)播放:
  MediaPlayTone(ToneName, StopTones);
  參數(shù)ToneName必須與Topaz Profile中設(shè)置的聲音名字一致,可選的StopTones參數(shù)指定停止音。

  7.1.9.2. Tone 包含文件

  tone包含文件以.TZP為擴(kuò)展名,指定了CTADE_A直接支持的聲音。
  注意:
  要從聲音包含文件中向Topaz Profile中添加信息,必須使用TopazProfile.exe(使用Copy命令,-C)將Topwz Profile和包含的文件合并起來(lái)。為了保證每次CTADE_A啟動(dòng)時(shí)都合并最新的聲音包含文件,可以使用函數(shù)TopazProfile.exe(使用Include選項(xiàng),-I)向Topaz.ini文件的[ProfileIncludeFiles]部分添加一個(gè)索引。
  ToneCount
  ToneCount Profile ID指出需要定義的聲音的數(shù)目,從0開(kāi)始。

  ToneName
  VOS應(yīng)用程序使用ToneName來(lái)確定播放哪一個(gè)聲音。
  ToneType
  當(dāng)前CTADE_A支持四種聲音:
    SingleContinuous
    SingleCadence
    DualContinuous
    DualCadence
  這些種類(lèi)聲音的描述參見(jiàn)Playing Tones 部分。

  Freqencies(ToneFreq1,ToneFreq2)
  聲音的頻率在300Hz到2000Hz之間。

  Amplitudes(ToneAmp1,ToneAmp2)
  以分貝表示聲音的幅度,有效幅度范圍是:-40到2 dB。

  ToneOnTime
  ToneOnTime參數(shù)指定了播放步調(diào)聲音時(shí)的聲音時(shí)間長(zhǎng)度,以0.1秒為單位。
  ToneOffTime
  ToneOffTime Profile ID定義了播放步調(diào)聲音時(shí)靜音的時(shí)間長(zhǎng)度,以0.1秒為單位。

  ToneFreq1Var
  檢測(cè)頻率1時(shí)允許的誤差,以Hz為單位。 ToneFreq2Var
  檢測(cè)頻率2時(shí)允許的誤差,以Hz為單位。

  ToneOnTimeVar
  檢測(cè)步調(diào)音時(shí),"OnTime"所允許的誤差,以0.1秒為單位。

  ToneOffTimeVar
  檢測(cè)步調(diào)音時(shí),"OffTime"所允許的誤差,以0.1秒為單位。

  ToneRepetitions
  確定檢測(cè)出步調(diào)音要求的步調(diào)音的重復(fù)次數(shù)。

  ToneChar
  ToneChar為聲音分配一個(gè)字符(從E到Z)。自定義聲音檢測(cè)前,必須為聲音分配一個(gè)字符。

  ToneIsBuffered
  ToneIsBuffered是一個(gè)布爾值,指出CTADE_A是否將聲音字符放入數(shù)字緩沖,可以使用VOS函數(shù)MediaGetDigitBuffer來(lái)檢索。

  例:
    \ToneCount=5
    \Tones[0]\ToneName=BUSY
    \Tones[0]\ToneType=DualCadence
    \Tones[0]\ToneFreq1=480
    \Tones[0]\ToneAmp1=-20
    \Tones[0]\ToneFreq2=620
    \Tones[0]\ToneAmp2=-20
    \Tones[0]\ToneOnTime=5
    \Tones[0]\ToneOffTime=5
    \Tones[1]\ToneName=DIAL
    \Tones[1]\ToneType=DualContinuous
    \Tones[1]\ToneFreq1=350
    \Tones[1]\ToneAmp1=-20
    \Tones[1]\ToneFreq2=440
    \Tones[1]\ToneAmp2=-20
    \Tones[2]\ToneName=TestTone
    \Tones[2]\ToneType=DualContinuous
    \Tones[2]\ToneFreq1=1209
    \Tones[2]\ToneFreq2=697
    \Tones[2]\ToneAmp1=-20
    \Tones[2]\ToneAmp2=-20
    \Tones[2]\ToneChar=T
    \Tones[2]\ToneIsBuffered=True
    \Tones[3]\ToneName=DISCONNECT
    \Tones[3]\ToneType=DualContinuous
    \Tones[3]\ToneFreq1=1477
    \Tones[3]\ToneFreq2=697
    \Tones[3]\ToneFreq1Var=50
    \Tones[3]\ToneFreq2Var=50
    \Tones[4]\ToneName=DISCONNECT2
    \Tones[4]\ToneType=DualCadence
    \Tones[4]\ToneFreq1=697
    \Tones[4]\ToneFreq2=1477
    \Tones[4]\ToneOnTime=10
    \Tones[4]\ToneOffTime=10
    \Tones[4]\ToneFreq1Var=50
    \Tones[4]\ToneFreq2Var=50
    \Tones[4]\ToneOnTimeVar=5
    \Tones[4]\ToneOffTimeVar=5
    \Tones[4]\ToneRepetitions=2

8. VOS 運(yùn)行日志

  VOS運(yùn)行時(shí)產(chǎn)生日志文件VOS1.log和VOS2.log。最新的日志總在VOS1.log文件中。這些文件的內(nèi)容如下:

Start of run
010518 172034.35 VOS loaded from C:\Program Files\Parity Software\Graphical
VOS\Bin\Vos7d.dll
010518 172034.35 VOS 7 (Debug) Built Apr 4 2001 13:43:51

End of run
010518 172038.05 CASEST~1:062b[0] VOS 7 (Debug) Built Apr 4 2001 13:43:51
010518 172038.05 CASEST~1:062b[0] Stopping: exit(21)

Warnings, Failures, and Errors
010518 172036.14 @W 713 RLL Adorll missing, wrong version or loaded in wrong order
010518 172036.17 CASEST~1:149b[0] @F fil_open(LOGO,r): 088 error 2
010518 172037.91 CASEST~1:0606[0] @E CADOConn 'Open' : Films : COM Error
0x80004005(Unspecified error ) : _Connection::Open()
010518 172037.91 CASEST~1:0606[0] Source = Microsoft OLE DB Provider for ODBC
Drivers
010518 172037.91 CASEST~1:0606[0] Description = [Microsoft][ODBC Microsft
Access Driver] Could not find file '(unknown)'.

Builtin function calls
010518 172036.15 CASEST~1:004b[0] @B getpid() = 0

Driver / API
010727 164728.19 @D ATDX_TERMMSK(1[dxxxB1C1])=0x0
010727 164728.19 @D Dev 1 dxxxB1C1 Evt 0x86 Data 0x15b9350 CST Data 0x0 Rings received
010727 164728.19 @D ATDX_TERMMSK(1[dxxxB1C1])=0x0

Topaz Events / States
010727 164728.19 CASEST~2:0017[1] @Y Trunk:0 Event dxxxB1C1[1] 134 CST Data 0x0 Rings
received
010727 164728.19 CASEST~2:0017[1] @Z Trunk:0 Idle->InboundRinging (1)
010727 164728.19 ResumeTask(1, 1)
010727 164728.27 CASEST~2:001f[1] @D dx_sethook(1[dxxxB1C1], 1, EV_ASYNC)=0
010727 164728.27 CASEST~2:001f[1] @B TrunkAnswerCall() = 1


[ 全文英文版 ]

 

 

 

本文 [ 目錄 ] [ 第一頁(yè) ] [ 第二頁(yè) ] [ 第三頁(yè) ]

融合通信專(zhuān)欄>>技術(shù)開(kāi)發(fā)>>