首頁 > 新聞 > 專家觀點(diǎn) >

《FreeSWITCH 1.2》:SIP和用戶目錄

2014-04-17 17:08:55   作者:   來源:CTI論壇   評論:0  點(diǎn)擊:


  在上章節(jié)中,我們簡單介紹了SIP, Session Initiation Protocol, 討論了如何注冊在FreeSWITCH 平臺(tái)上注冊電話。在此章節(jié)中,我們夯實(shí)SIP的基礎(chǔ),并且學(xué)習(xí)如何使用連接用戶SIP,包括本地的和外網(wǎng)的。在VOIP世界中,SIP是比較特殊的一種協(xié)議。在這個(gè)章節(jié)中,我們將討論以下內(nèi)容:

  · 學(xué)習(xí)FreeSWITCH 用戶目錄背后的原理

  · 首次探討和配置FreeSWITCH 用戶目錄

  · 學(xué)習(xí)如何對接FreeSWITCH 和服務(wù)提供商

  · 對撥號(hào)規(guī)則和XML目錄配置文件進(jìn)行修改

  · 簡單介紹 SIP profiles 和用戶代理

  了解FreeSWITCH用戶目錄

  FreeSWITCH 用戶目錄是基于一個(gè)中央XML控制文件,

  由一個(gè)或者多個(gè)<domain> 要素組成。每個(gè) <domain> 可以包含<users> 要素或者<groups> 要素。 一個(gè) <groups> 要素包含一個(gè)或者多個(gè)<group> 要素, 每個(gè)group包含一個(gè)或者多個(gè)<users> 要素。 同理, 一個(gè)<users> 包含一個(gè)或者多個(gè) <user> 要素。  以下是一個(gè)簡單舉例:


  下載實(shí)例代碼

  如果用戶是從 packtpub 購買的書,用戶可以下載本書使用的實(shí)例代碼。

  如果用戶從其他地方購買的本書,可以訪問http://www.packtpub.com/support ,然后注冊,我們將把代碼的文件通過郵件發(fā)送給用戶。

  對于users 來說,一些基本的配置文件可以不包括groups,因此用戶可以忽略<groups> 這個(gè)要素, 在頂部的<domain>要素中,僅添加幾個(gè)<user> 要素。

  這里必須注意,每個(gè)user@domain 都來自于這個(gè)用戶目錄,這個(gè)目錄對系統(tǒng)的所有模塊有效。這個(gè)目錄是一個(gè)單一的中央控制目錄,保存所有的FreeSWITCH 用戶信息。如果使用一個(gè)SIP電話作為一個(gè)用戶注冊或者其他用戶執(zhí)行語音留言,F(xiàn)reeSWITCH將在同一地方查詢用戶的數(shù)據(jù)。這一點(diǎn)非常重要,通過這樣的方法,可以限定系統(tǒng)的操作,避免數(shù)據(jù)的重復(fù),并且對每個(gè)模塊對非常有效率,因?yàn)槊總(gè)獨(dú)立的模塊可以獨(dú)立跟蹤用戶信息。

  這個(gè)系統(tǒng)在用戶量非常少的時(shí)候可以工作的非常好,但是如果用戶量上千的大型系統(tǒng)應(yīng)該怎么辦呢?如果用戶想通過訪問FreeSWITCH數(shù)據(jù)庫來獲得用戶目錄信息,我們?nèi)绾螌?shí)現(xiàn)?答案是肯定的。我們在第一章FreeSWITCH 系統(tǒng)架構(gòu)中討論了如何使用mod_xml_curl模塊,我們可以創(chuàng)建web 服務(wù)通過一個(gè)請求對全部用戶目錄進(jìn)行訪問,獲得數(shù)據(jù),方法類似于一個(gè)HTML的頁面環(huán)境下的表格提交方式。反過來,web 服務(wù)可以無需擔(dān)心用戶數(shù)據(jù)的格式,或者XML文件格式來查詢用戶,獲得希望得到的用戶信息。mod_xml_curl 返回查詢結(jié)果到從查詢模塊。這樣做的目的是系統(tǒng)可以實(shí)現(xiàn)用戶設(shè)置和中央控制的用戶數(shù)據(jù)實(shí)現(xiàn)無縫集成,并且保持用戶原始數(shù)據(jù)的格式。

  未完待續(xù)······

分享到: 收藏

專題