• 沒有找到結果。

本研究利用Java所開發的SIPUA已經成功整合到國家電信計劃上,透 過NTP所提供的VoIP平台,讓SIPUA不僅能進行伺服器登錄操作,而且也 能透過該平台將訊息發送至PSTN上的市話或手機。

有鑒於目前市面上所出現的SIP User Agent,在功能上雖然樣樣俱 全,但是在操作上,就如同一般的電話,使用者很難在操作期間瞭解SIP 的運作。因此在設計SIPUA時,就考慮到無論是發送或接收訊息,都可 以透過SIPUA畫面所顯示的訊息來瞭解SIP的運作,也可以自行設定SDP 內容,來得知SDP所能處理的媒體敍述,就算是不瞭解SIP如何運作的使 用者,在經過一段時間的操作後,也能夠對SIP有更多的認識。

而在系統建置上,透過SIPUA所使用到的jSIP套件,雖然可以很容易 地建立SIP訊務的相關功能,但是套件本身仍然有問題存在,比如接收到 OPTIONS所要回應的200 OK,必須透過更改原始碼才可回傳正確的 SDP,以及無法正確地剖析SDP等問題。因此,本研究在jSIP上做了非常 多的修改,以期SIPUA的運作能更為完善。

在未來的研究上,SIPUA可以考慮加入更多功能,比如視訊功能的 增加、與Conference server整合或是撥號音的發送與處理,藉此來提供更 完整的多媒體服務。

參考文獻

[1] Sun Mircosystems, see http://java.sun.com.

[2] M. Handley, H. Schulzrinne, E. Schooler and J. Rosenberg, “SIP: Session Initiation Protocol” RFC 2543, March 1999.

[3] jSIP, see http://jsip.sourceforge.net/.

[4] ITU-T Recommendation H.323, “Packet-based Multimedia Communication Systems”, September 1999.

[5] V. Jacobson and M. Handley, “SDP: Session Description Protocol”, RFC 2327, IETF, April 1998.

[6] D. Zimmerman, “The Finger User Information Protocol”, RFC 1288, December 1991.

[7] S. Williamson, M. Kosters, D. Blacka, J. Singh and K. Zeilstra, “Referral Whois (RWhois) Protocol V1.5”, RFC 1714, June 1997.

[8] W. Yeong, T. Howes and S. Kille, “Lightweight Directory Access Protocol”, RFC 1777, March 1995.

[9] F. Yergeau, “UTF-8, a transformation format of ISO 10646”, RFC 3629, November 2003.

[10] T. Berners-Lee, R.Fielding and L. Masinter, “Uniform Resource Identifiers (URI): Generic Syntax”, RFC 2396, August 1998.

[11] J. Rosenberg, H. Schulzrinne, G. Camarillo, A. Johnston, J. Peterson, R.

Sparrks, M. Handley and E. Schooler, “SIP: Session Initiation Protocol”

RFC 3261, June 2002.

[12] S. Zeadally and F. Siddiqui, “Design and Implementation of a SIP-based VoIP Architecture”, 18th International Conference on Advanced

Information Networking and Applications (AINA'04) Volume 2, p. 187.

[13] H. Schulzrinne and J. Rosenberg, “The Session Initiation Protocol:

Internet-Centric Signaling”, IEEE Communications Magazine, October 2000.

[14] Kundan Singh, Gautam Nair, and H.Schulzrinne, "Centralized Conferencing Using SIP," Proc. Internet Telephony Workshop 2001, Columbia Univ. Press, New York,Apr. 2001, pp. 57-63.

[15] H. Schulzrinne, S. Casner, R. Frederick and V. Jacobson, “RTP: A Transport Protocol for Real-Time Applications”, RFC 1889, January 1996.

[16] H.Schulzrinne, A. Rao and R. Lanphier, “Real Time Streaming Protocol (RTSP)”, RFC 2326, April 1998.

[17] F. Andreasen and B. Foster, “Media Gateway Control Protocol (MGCP) Version 1.0”, RFC 3015, November 2000.

[18] J. Postel, “User Datagram Protocol”, RFC 768, August 1980.

[19] ITU-T Recommendation H.261, “Line Transmission Of Non-Telephone Signals”, March 1993.

[20] Java Media Framework API (JMF), see http://java.sun.com/products/java-media/jmf/

附錄 A SIPUA 操作手冊

一、系統安裝

SIPUA 是透過 Java 所開發的 SIP User Agent,在進行訊務交換時,是 透過 jSIP 的 API 來進行;RTP 資料交換,則是藉由 JMF 所提供的各項工 作所達成的。因此,底下列出必須安裝的各項程式以及必須進行的環境 設定:

1、前置安裝

(1)、J2SDK:至 http://java.sun.com/j2se/1.4.2/download.html 頁面,下 載 J2SE V1.4.2 SDK,下載完成後並進行安裝。

(2)、JMF(Java Media Framework):至

http://java.sun.com/products/java-media/jmf/2.1.1/download.html 頁 面,下載 JMF2.1.1e,下載完成後並進行安裝。

(3)、將 SIPUA.rar 解壓至任一目錄。

負責訊務處理之 jSIP 套件已包含在 SIPUA.rar 檔案中,因此毋須再進 行 jSIP 的下載及 ClassPath 的設定。另外要注意的是,因為在開發 SIPUA 時期,發現到 jSIP 本身有一些設計上的問題,因此已多次修改 jSIP 的原

始碼,所以使用者到 jSIP 網頁(http://jsip.sourceforge.net/)下載的 jSIP v0.8 是不能與 SIPUA 一起運作的。

2、環境設定

在 Windows XP 的作業系統環境下,請至[我的電腦]點選滑鼠右鍵,

再選取[內容]→[進階] →[環境變數]→[系統變數],將 J2SDK 的\bin 路徑

(例如:c:\j2sdk1.4.2_08\bin)新增至 Path 變數中。

3、系統執行

如果以上安裝及設定無誤,只要進入解壓後的目錄,執行 SIPUA.bat 即可正式 動 SIPUA。

二、SIPUA 使用說明

當使用者 動 SIPUA 後,首先會看到如圖一的 SIPUA 主畫面。在主 畫面最上面的抬頭列會顯示使用者的網路位址,如果使用者有登錄至 Registrar,則抬頭列會顯示使用者帳號及主機位址;接下來的工具列內的 圖示,由左至右分別為電話簿、音效設定以及離開主程式的控制;最後 的頁籤,則分別有 Method、Server、SDP、Other 等頁籤供使用者進行設 定或操作。

使用者網路位址

頁籤 工具列

圖一、SIPUA 主畫面

1、工具列

(1)、電話簿

電話簿的畫面如圖二所示,Name 欄位可以允許使用者記錄對方的姓 名,而 URL 則可以記錄對方的 URL,當使用者欲撥打電話簿中的任何一 人時,只要按下右邊的 按鈕,即會將 URL 欄位內容貼至 Method 頁籤的 URI 輸入欄。

在資料的維護上,點選 按鈕可新增一筆資料, 按鈕可進行

資料的刪除(先點選欲刪除的資料列,再按 按鈕即可,如未指定則 自動刪除最後一筆資料),當資料維護完成後,需點選 按鈕才會確 實將資料進行儲存,如不欲進行任何操作,則可點選 按鈕離開電話 簿操作。

圖二、電話簿操作畫面

(2)音效設定

透過音效設定可以讓使用者進行撥出以及接收到 INVITE 請求的鈴 聲,圖三即為音效設定畫面,Ringing Sound 為電話鈴聲的音效檔路徑,

而 Ringout Sound 為撥出時的音效檔路徑。

圖三、音效設定晝面

當使用者欲更改音效,只要點選右邊的 按鈕,會出現如圖四的檔 案管理員對話框,使用者可以藉由該對話框來選取欲採用的音效檔,唯 一要注意的是,音效只支援 WAV 的音效檔。

圖四、音效檔選取對話框

(3) 離開主程式

當使用者點選離開主程式的按鈕後,即會立即離開 SIPUA 的操作,

如果使用者有登錄至 Registrar,也會發送清除登錄記錄的訊息後再進行 程式關閉。

2、頁籤

(4) Method

該頁籤為 SIPUA 在進行訊息處理的主要頁籤,Method 下拉式選單目 前提供 INVITE、OPTIONS 以及 BYE 等三種請求訊息的選擇、URI 輸入 欄可以讓使用者輸入欲發送的對象、訊息發送鈕則是啟動訊息發送、事 件記錄框會呈現所有 SIPUA 發送或是接收到的各項訊息。

圖四、Method 頁籤畫面

(2) Server

如圖五的 Server 頁籤可以讓使用者進行有關登錄方面的設定,當使用 者希望 動 SIPUA 時也能立即進行登錄,可勾選預先登錄核選欄;IP Address、User Name、Password 等三個欄位,分別可讓使用者輸入 Registrar 的主機位址、使用者帳號名稱以及密碼等資訊;終止時間控制欄可以設 定重新登錄的時間間距(以秒為單位),當然使用者也可以利用 按 鈕來重新 動計時器或是用 按鈕中止計時;Server 頁籤操作鈕,可 以讓使用者進行儲存、取消以及發送 REGISTER 請求的操作。

預先登錄核選欄

終止時間控制欄

Server頁籤操作鈕

圖五、Server 頁籤畫面

(3)SDP

SDP 頁籤主要是讓使用者自行設定 SDP 的內容,該 SDP 會分別夾帶 在發送 INVITE、接收 INVITE 或 OPTIONS 所回應的 200 OK 等 SIP 訊息 中,該頁籤的畫面如圖六所示。SDP 的設定可以分為兩個部份:

第一部份:為 SDP 的會議敍述,可以讓使用者進行會議名稱、使用 者名稱以及本地端位址的敍述。

第二部份:為 SDP 的媒體敍述,可以讓使用者進行多媒體敍述的相 關設定,如媒體的型態、使用的協定、編碼的格式列表(Fmt list)、編碼採用的優先權以及欲開 的埠號。

雖然 SIPUA 的 SDP 設定允許使用者設定媒體型態及協定,但目前可 運作的媒體型態僅為 Audio,協定只允許 RTP/AVP,而編碼格式實際能 支援的格式為 0、3、4、5、16、17。

會議敍述欄

媒體敍述欄

圖六、SDP 頁籤畫面

當使用者欲選取所要的格式列表時,可以點選右邊的 按鈕

來進行設定,使用者按下按鈕後,即會出現如圖七的畫面。使用者可以 透過中間的 以及 按鈕來選取欲採用的編碼格式。

圖七、Format List 選取對話框

SIPUA 接收到 INVITE 後,並決定接受邀請時,所發送的 200 OK 夾 帶的 SDP,會根據 Format Priority 的設定來決定欲採用的媥碼格式,如果

使用者要改變優先權,郥必須點選右邊的 按鈕來進行設定。編

碼格式優先權的設定如圖八所示,只要點擊欲左邊列表的項目,即會自 動右移到右邊欄位,而優先順序是採由上到下的方式。

圖八、編碼格式優先權設定畫面

(4)Other

如圖九的 Other 頁籤可以讓使用者進行一些雜項控制。

在訊息標頭設定中,使用者可以自行設定採用的語言以及訊息最大的 轉送數(0 表示不限制),這些設定都會自行加入至 SIP 的訊息當中。

SIPUA 動作設定則是可以設定 SIPUA 的處理行為,比如當 SIPUA 在

忙線時,如果收到其它外部傳送過來的訊息,會自動將 Busy Message 所 設定的內容回傳給訊息發送端;Retransmit Times 可以讓使用者設定重傳 訊息的次數(因傳送失敗所造成的重傳);透過設定 show info Dialog,

SIPUA 可以顯示或隱藏一些使用者不需要進行任何決定的訊息提示框。

圖九、Other 頁籤畫面

三、事件說明

1、發送 INVITE 訊息

當使用者發送 INVITE 訊息時,會出現如圖十的訊息對話框,如果使 用者欲取消邀請,只需按下 按鈕即會發送 CANCEL 請求,不過 當 SIPUA 已接收到 200 OK 後,則該對話框會自動消失,也不能再進行 CANCEL 發送的操作。

圖十、INVITE 發送對話框

2、接收到 INVITE 訊息

當 SIPUA 接收到 INVITE 時,會出現如圖十一的對話框,如果使用 者欲接受該請求可點選 按鈕以發送 200 OK 的回應,如果要拒絕 該請求,則點選 以發送 603 Decline 的回應。

圖十一、INVITE 接收對話框

3、接收其它請求之提示

當 SIUPA 接收到 OPTIONS 或是 CANCEL 請求時,則會出現如圖十 二的請求訊息提示框,因為該類訊息並不需要使用者進行任何決策的動 作,因此可以透 Other 頁籤中的 show info Dialog 來進行顯示或隱藏的設 定。

圖十二、請求訊息提示框

4、回應訊息之提示

當使用者進行各項請求的發送,一旦請求被成功地處理後,亦即接收

到 200 OK 的訊息時,會顯示類似如圖十三的提示框來告知使用者。同樣 地,該類訊息並不需要使用者進行任何決策的動作,因此可以透 Other 頁籤中的 show info Dialog 來進行顯示或隱藏的設定。

圖十三、回應訊息提示框

相關文件