本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,特別是涉及一種基于sip的會話邀請方法和代理設(shè)備。
背景技術(shù):
隨著網(wǎng)絡(luò)通信技術(shù)的發(fā)展,在兩個不同網(wǎng)絡(luò)之間進行通信的需求也逐漸增大。在不同網(wǎng)絡(luò)之間通信,需要通過代理設(shè)備將兩個網(wǎng)絡(luò)連接起來。在基于sip(sessioninitiationprotocol,會話初始協(xié)議)的會話過程中,會話主叫終端需要通過代理設(shè)備將請求發(fā)送給sip服務(wù)器,再由sip服務(wù)器通過代理設(shè)備發(fā)送給會話被叫終端。在建立會話時,會話主叫終端通過代理設(shè)備將會話請求發(fā)送給sip服務(wù)器,sip服務(wù)器存在將會話請求通過已經(jīng)建立的連接發(fā)送給會話主叫終端的情況,造成會話主叫終端將會話請求發(fā)送給自己的情況,從而導致會話邀請失敗。
技術(shù)實現(xiàn)要素:
基于此,有必要針對由于會話主叫終端將會話請求發(fā)送給自己而導致會話邀請失敗的問題,提供一種基于sip的會話邀請方法和代理設(shè)備。
一種基于sip的會話邀請方法,該方法應用于代理設(shè)備,包括:
通過代理設(shè)備接收主叫終端發(fā)送的與被叫終端建立會話的會話請求,主叫終端和被叫終端在第一網(wǎng)絡(luò);
將會話請求通過代理設(shè)備與sip服務(wù)器的第一連接發(fā)送至sip服務(wù)器;sip服務(wù)器在第二網(wǎng)絡(luò)中,代理設(shè)備連接第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò);
接收sip服務(wù)器通過代理設(shè)備與sip服務(wù)器的第二連接發(fā)送的會話請求;
將會話請求發(fā)送至被叫終端。
在其中一個實施例中,將會話請求通過代理設(shè)備與sip服務(wù)器的第一連接發(fā)送至sip服務(wù)器,包括:
提取會話請求中的主叫終端的網(wǎng)絡(luò)地址并轉(zhuǎn)換為第一代理地址;
根據(jù)第一代理地址與sip服務(wù)器建立第一連接;
通過第一連接將會話請求發(fā)送至sip服務(wù)器。
在其中一個實施例中,通過代理設(shè)備接收主叫終端發(fā)送的與被叫終端建立會話的會話請求之前,還包括:
接收被叫終端發(fā)送的注冊請求;
將注冊請求中被叫終端的網(wǎng)絡(luò)地址轉(zhuǎn)換為第二代理地址;
將攜帶有第二代理地址的注冊請求發(fā)送至sip服務(wù)器,使sip服務(wù)器從注冊請求中提取被叫終端對應的第二代理地址并存儲。
在其中一個實施例中,接收sip服務(wù)器通過代理設(shè)備與sip服務(wù)器的第二連接發(fā)送的會話請求,包括:
接收sip服務(wù)器通過sip服務(wù)器與代理設(shè)備的第二連接發(fā)送的會話請求,第二連接由sip服務(wù)器根據(jù)被叫終端對應的第二代理地址建立。
在其中一個實施例中,接收sip服務(wù)器通過sip服務(wù)器與代理設(shè)備的第二連接發(fā)送的會話請求之前,還包括:
sip服務(wù)器檢測是否已經(jīng)存在根據(jù)第二代理地址建立的第二連接;若存在,則通過第二連接發(fā)送會話請求;若不存在,則根據(jù)第二代理地址建立第二連接。
上述基于sip的會話邀請方法,主叫終端和被叫終端在第一網(wǎng)絡(luò)中,sip服務(wù)器處在第二網(wǎng)絡(luò)中,代理設(shè)備將第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò)連接。通過代理設(shè)備接收到主叫終端發(fā)送的與被叫終端建立會話的會話請求,將會話請求通過代理設(shè)備與sip服務(wù)器的第一連接發(fā)送至sip服務(wù)器,用以通過sip服務(wù)器發(fā)送給被叫終端。在sip服務(wù)器接收到會話請求,使用代理設(shè)備與sip服務(wù)器的第二連接將會話請求發(fā)送給代理設(shè)備,以將會話請求發(fā)送給被叫終端。這樣,使用與第一連接不同的第二連接發(fā)送會話請求,避免了由于使用第一連接將會話請求發(fā)送給主叫終端的而造成會話邀請失敗的情況。
一種基于sip的會話邀請代理設(shè)備,代理設(shè)備包括:
第一請求接收模塊,通過代理設(shè)備接收主叫終端發(fā)送的與被叫終端建立會 話的會話請求,主叫終端和被叫終端在第一網(wǎng)絡(luò);
第一請求發(fā)送模塊,用于將會話請求通過代理設(shè)備與sip服務(wù)器的第一連接發(fā)送至sip服務(wù)器;sip服務(wù)器在第二網(wǎng)絡(luò)中,代理設(shè)備連接第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò);
第二請求接收模塊,用于接收sip服務(wù)器通過代理設(shè)備與sip服務(wù)器的第二連接發(fā)送的會話請求;
第二請求發(fā)送模塊,用于將會話請求發(fā)送至被叫終端。
在其中一個實施例中,第一請求發(fā)送模塊包括:
地址轉(zhuǎn)換模塊,用于提取會話請求中的主叫終端的網(wǎng)絡(luò)地址并轉(zhuǎn)換為第一代理地址;
連接建立模塊,用于根據(jù)第一代理地址與sip服務(wù)器建立第一連接;
會話請求發(fā)送模塊,用于通過第一連接將會話請求發(fā)送至sip服務(wù)器。
在其中一個實施例中,代理設(shè)備還包括:
注冊請求發(fā)送模塊,用于接收被叫終端發(fā)送的注冊請求;
網(wǎng)絡(luò)地址轉(zhuǎn)換模塊,用于將注冊請求中被叫終端的網(wǎng)絡(luò)地址轉(zhuǎn)換為第二代理地址;
代理地址提取模塊,用于將攜帶有第二代理地址的注冊請求發(fā)送至sip服務(wù)器,使sip服務(wù)器從注冊請求中提取被叫終端對應的第二代理地址并存儲。
在其中一個實施例中,第二請求接收模塊還用于接收sip服務(wù)器通過sip服務(wù)器與代理設(shè)備的第二連接發(fā)送的會話請求,第二連接由sip服務(wù)器根據(jù)被叫終端對應的第二代理地址建立。
在其中一個實施例中,sip服務(wù)器用于檢測是否已經(jīng)存在根據(jù)第二代理地址建立的第二連接;若存在,則通過第二連接發(fā)送會話請求;若不存在,則根據(jù)第二代理地址建立第二連接。
上述基于sip的會話邀請代理設(shè)備,主叫終端和被叫終端在第一網(wǎng)絡(luò)中,sip服務(wù)器處在第二網(wǎng)絡(luò)中,代理設(shè)備將第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò)連接。通過代理設(shè)備接收到主叫終端發(fā)送的與被叫終端建立會話的會話請求,將會話請求通過代理設(shè)備與sip服務(wù)器的第一連接發(fā)送至sip服務(wù)器,用以通過sip服務(wù)器發(fā)送給 被叫終端。在sip服務(wù)器接收到會話請求,使用代理設(shè)備與sip服務(wù)器的第二連接將會話請求發(fā)送給代理設(shè)備,以將會話請求發(fā)送給被叫終端。這樣,使用與第一連接不同的第二連接發(fā)送會話請求,避免了由于使用第一連接將會話請求發(fā)送給主叫終端的而造成會話邀請失敗的情況。
附圖說明
圖1為一個實施例中基于sip的會話邀請系統(tǒng)的應用環(huán)境圖;
圖2為一個實施例中基于sip的會話邀請方法的流程示意圖;
圖3為一個實施例中網(wǎng)絡(luò)地址注冊的步驟的流程示意圖;
圖4為一個實施例中基于sip的會話邀請方法的時序圖;
圖5為一個實施例中基于sip的會話邀請代理設(shè)備的結(jié)構(gòu)框圖;
圖6為一個實施例中第一請求發(fā)送模塊的結(jié)構(gòu)框圖;
圖7為另一個實施例中基于sip的會話邀請代理設(shè)備的結(jié)構(gòu)框圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
圖1為一個實施例中基于sip的會話邀請系統(tǒng)的應用環(huán)境圖。基于sip的會話邀請系統(tǒng)包括主叫終端102、被叫終端104、代理設(shè)備106和sip服務(wù)器108。其中主叫終端102和被叫終端104在第一網(wǎng)絡(luò)中,sip服務(wù)器108在第二網(wǎng)絡(luò)中,代理設(shè)備106連接第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò),代理設(shè)備106即有第一網(wǎng)絡(luò)中的網(wǎng)絡(luò)地址,又有第二網(wǎng)絡(luò)中的網(wǎng)絡(luò)地址。第一網(wǎng)絡(luò)中的主叫終端102和被叫終端104通過代理設(shè)備106訪問第二網(wǎng)絡(luò)中的sip服務(wù)器。sip服務(wù)器具體可以是sip服務(wù)器集群,sip服務(wù)器集群中的sip服務(wù)器共用數(shù)據(jù)庫。sip(sessioninitiationprotocol,會話初始協(xié)議)是用來生成、修改和終結(jié)一個或多個參與終端之間的會話協(xié)議。
如圖2所示,在一個實施例中,提供一種基于sip的會話邀請方法,本實 施例以該方法用于用圖1基于sip的會話邀請系統(tǒng)中的代理設(shè)備106來舉例說明。該代理設(shè)備106上運行有基于sip的會話邀請方法的程序,通過基于sip的會話邀請方法的程序來實施基于sip的會話邀請方法。該方法具體包括以下步驟:
步驟202,通過代理設(shè)備接收主叫終端發(fā)送的與被叫終端建立會話的會話請求,主叫終端和被叫終端在第一網(wǎng)絡(luò)。
具體地,主叫終端102在與被叫終端104建立基于sip協(xié)議的會話時,需要通過代理設(shè)備106將會話請求發(fā)送至第二網(wǎng)絡(luò)中的sip服務(wù)器108。會話請求時用于與被叫終端建立會的請求,會話請求包括被叫終端標識,還可以包括協(xié)議版本號。會話請求中的源地址是主叫終端102的網(wǎng)絡(luò)地址,目的地址是代理設(shè)備106在第一網(wǎng)絡(luò)中的網(wǎng)絡(luò)地址。源地址是指請求發(fā)送終端的網(wǎng)絡(luò)地址,目的地址是指請求接收終端的網(wǎng)絡(luò)地址。網(wǎng)絡(luò)地址可以是ip地址,還可以是ip地址及端口號。當網(wǎng)絡(luò)地址中包括端口號時,兩個網(wǎng)絡(luò)地址中即使ip地址相同,端口號不同,兩個網(wǎng)絡(luò)地址為不同的網(wǎng)絡(luò)地址。
步驟204,將會話請求通過代理設(shè)備與sip服務(wù)器的第一連接發(fā)送至sip服務(wù)器;sip服務(wù)器在第二網(wǎng)絡(luò)中,代理設(shè)備連接第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò)。
具體地,代理設(shè)備106接收到的主叫終端的會話請求后,對會話請求中的源地址和目的地址分別進行轉(zhuǎn)換,具體可將源地址轉(zhuǎn)換為代理設(shè)備106的第一代理地址,將目的地址轉(zhuǎn)換為sip服務(wù)器的網(wǎng)絡(luò)地址,根據(jù)代理設(shè)備106的第一代理地址和sip服務(wù)器的網(wǎng)絡(luò)地址建立第一連接,并通過第一連接將地址轉(zhuǎn)換后的會話請求發(fā)送至sip服務(wù)器。第一代理地址是代理設(shè)備在第二網(wǎng)絡(luò)中的設(shè)備。第二網(wǎng)絡(luò)與第一網(wǎng)絡(luò)為不同的網(wǎng)路,第一網(wǎng)絡(luò)與第二網(wǎng)絡(luò)的網(wǎng)段號不同。
步驟206,接收sip服務(wù)器通過代理設(shè)備與sip服務(wù)器的第二連接發(fā)送的會話請求。
具體地,sip服務(wù)器108在接收到代理設(shè)備106發(fā)送的會話請求之后,提取會話請求中被叫終端104的標識,根據(jù)被叫終端104的標識在數(shù)據(jù)庫中查找被叫終端104所注冊的第二代理地址,以被叫終端104所注冊的第二代理地址為目的地址建立第二連接,并將會話請求通過第二連接發(fā)送至代理設(shè)備106。第一 代理地址和第二代理地址都是代理設(shè)備106不同的網(wǎng)絡(luò)地址,第一代理地址和第二代理地址可以是其中的ip地址不同,也可以是端口號不同。被叫終端104的標識可以是被叫終端104的用戶名,其中用戶名可以是字符串、數(shù)字和關(guān)鍵字中至少一種。
步驟208,將會話請求發(fā)送至被叫終端。
具體地,代理設(shè)備106在接收到被叫終端104發(fā)送的注冊請求時,提取注冊請求中被叫終端104的網(wǎng)絡(luò)地址并記錄。代理設(shè)備106接收到sip服務(wù)器108發(fā)送給被叫終端104的會話請求時,提取會話請求中被叫終端104的標識,查找與被叫終端104的標識對應的被叫終端的網(wǎng)絡(luò)地址,以查找到的被叫終端104的網(wǎng)絡(luò)地址作為目的地址將會話請求發(fā)送給被叫終端。
在一個實施例中,被叫終端104接收到代理設(shè)備的會話請求后,根據(jù)會話請求返回用于與被叫終端102建立會話的會話建立信息。被叫終端104將會話建立信息發(fā)送給代理設(shè)備106。代理設(shè)備106對會話建立信息進行網(wǎng)絡(luò)地址轉(zhuǎn)換后,根據(jù)轉(zhuǎn)換后的網(wǎng)絡(luò)地址將會話建立信息發(fā)送給sip服務(wù)器108。sip服務(wù)器108在數(shù)據(jù)庫中查找主叫終端102通過注冊請求所注冊的的第二代理地址,根據(jù)第二代理地址將會話建立信息發(fā)送給代理設(shè)備106。代理設(shè)備106查找主叫終端102的網(wǎng)絡(luò)地址,根據(jù)主叫終端102的網(wǎng)絡(luò)地址將會話建立信息發(fā)送給主叫終端102,主叫終端102接收到會話建立信息后,主叫終端102與被叫終端104的會話建立成功。會話建立信息中包括被叫終端104的標識,被叫終端104的標識可以是用戶名,用戶名具體可以是字符串、數(shù)字和關(guān)鍵字中至少一種或其組合。
本實施例中,主叫終端和被叫終端在第一網(wǎng)絡(luò)中,sip服務(wù)器處在第二網(wǎng)絡(luò)中,代理設(shè)備將第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò)連接。通過代理設(shè)備接收到主叫終端發(fā)送的與被叫終端建立會話的會話請求,將會話請求通過代理設(shè)備與sip服務(wù)器的第一連接發(fā)送至sip服務(wù)器,用以通過sip服務(wù)器發(fā)送給被叫終端。在sip服務(wù)器接收到會話請求,使用代理設(shè)備與sip服務(wù)器的第二連接將會話請求發(fā)送給代理設(shè)備,以將會話請求發(fā)送給被叫終端。這樣,使用與第一連接不同的第二連接發(fā)送會話請求,避免了由于使用第一連接將會話請求發(fā)送給主叫終端的而造成會話邀請失敗的情況。
如圖3所示,在一個實施例中,該方法還包括網(wǎng)絡(luò)地址注冊的步驟,具體包括以下步驟:
步驟302,接收被叫終端發(fā)送的注冊請求。
具體地,被叫終端104需要先將注冊請求發(fā)送給代理設(shè)備106,通過代理設(shè)備106將注冊請求發(fā)送給sip服務(wù)器108。注冊請求用于將被叫終端104的網(wǎng)絡(luò)地址發(fā)送給sip服務(wù)器108,使sip服務(wù)器108記錄被叫終端104的網(wǎng)絡(luò)地址。當sip服務(wù)器108接收到發(fā)送給被叫終端104的數(shù)據(jù)時,查找所記錄的被叫終端104的網(wǎng)絡(luò)地址,并根據(jù)查找到的網(wǎng)絡(luò)地址將數(shù)據(jù)發(fā)送給被叫終端104。注冊請求中包括被叫終端104的標識和被叫終端104的網(wǎng)絡(luò)地址。被叫終端104的標識可以是被叫終端104的用戶名,還可以是被叫終端104的物理地址。
步驟304,將注冊請求中被叫終端的網(wǎng)絡(luò)地址轉(zhuǎn)換為第二代理地址。
具體地,代理設(shè)備106在接收到被叫終端104發(fā)送的注冊請求后,提取注冊請求中被叫終端104的網(wǎng)絡(luò)地址,將被叫終端104的網(wǎng)絡(luò)地址轉(zhuǎn)換為代理設(shè)備106的第二代理地址,并將被叫終端104的網(wǎng)絡(luò)地址記錄下來。使得被叫終端104在sip服務(wù)器108上注冊的是代理設(shè)備106的第二代理地址,在sip服務(wù)器108收到發(fā)送至被叫終端104的數(shù)據(jù)時,將數(shù)據(jù)先發(fā)送到代理設(shè)備106,再由代理設(shè)備106將數(shù)據(jù)發(fā)送給被叫終端104。
步驟306,將攜帶有第二代理地址的注冊請求發(fā)送至sip服務(wù)器,使sip服務(wù)器從注冊請求中提取被叫終端對應的第二代理地址并存儲。
具體地,代理設(shè)備106將攜帶有第二代理地址的注冊請求發(fā)送至sip服務(wù)器,sip服務(wù)器提取注冊請求中被叫終端104的標識和第二代理地址,并將被叫終端104的標識與第二代理地址對應存儲。
本實施例中,被叫終端104和sip服務(wù)器108分別處在第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò),如果在sip服務(wù)器108中注冊的被叫終端104的網(wǎng)絡(luò)地址,會出現(xiàn)sip服務(wù)器108在第二網(wǎng)絡(luò)中查找不到被叫終端104,不能將數(shù)據(jù)準確發(fā)送至被叫終端104。通過將注冊請求中的被叫終端104的網(wǎng)絡(luò)地址轉(zhuǎn)換成第二代理地址,sip服務(wù)器108在接收到發(fā)送至被叫終端104的數(shù)據(jù)時,可以根據(jù)第二代理地址將數(shù)據(jù)發(fā)送至代理設(shè)備106,再由代理設(shè)備106將數(shù)據(jù)發(fā)送至第一網(wǎng)絡(luò)中的主叫終 端,保證了數(shù)據(jù)傳輸?shù)臏蚀_性。
在一個實施例中,sip服務(wù)器檢測是否已經(jīng)存在根據(jù)第二代理地址建立的第二連接;若存在,則通過第二連接發(fā)送會話請求;若不存在,則根據(jù)第二代理地址建立第二連接。
具體地,sip服務(wù)器108接收到主叫終端102用于與被叫終端104建立會話的會話請求時,提取會話請求中被叫終端104的標識,查找與被叫終端104的標識對應的第二代理地址,查找到第二代理地址后,檢測是否接收到源地址是第二代理地址的數(shù)據(jù),如果有,則表示存在根據(jù)第二代理地址建立的第二連接,則通過第二連接將會話請求發(fā)送給代理設(shè)備104,使代理設(shè)備104將會話請求發(fā)送給被叫終端104;如果沒有接收到源地址是第二代理地址的數(shù)據(jù),則表示不存在根據(jù)第二代理地址建立的第二連接,需要根據(jù)第二代理地址建立第二連接。
本實施例中,通過sip服務(wù)器108檢測是否已經(jīng)存在根據(jù)第二代理地址建立的第二連接,如果存在,則直接通過第二連接將會話請求發(fā)送,無需再重新建立第二連接,提高了會話請求的傳輸速度。
如圖4所示,主叫終端102和被叫終端104在第一網(wǎng)絡(luò)中,sip服務(wù)器108和sip服務(wù)器112在第二網(wǎng)絡(luò)中,sip服務(wù)器108和sip服務(wù)器112共用數(shù)據(jù)庫110。代理設(shè)備106連接第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò),圖中使用ip地址和端口的組合形式表示網(wǎng)絡(luò)地址,ip地址和端口有一個不相同,則表示的網(wǎng)絡(luò)地址也不同。例如(a1,1),其中a1為ip地址,1為端口號。被叫終端104將注冊請求發(fā)送給代理設(shè)備,注冊請求中源地址是被叫終端的網(wǎng)絡(luò)地址(a1,1),目的地址是代理設(shè)備在第一網(wǎng)絡(luò)中的網(wǎng)絡(luò)地址(b,1),其中注冊地址為被叫終端104的網(wǎng)絡(luò)地址(a1,1)。
代理設(shè)備106接收到被叫終端104發(fā)送的注冊請求后,提取注冊請求中的注冊地址,將注冊地址轉(zhuǎn)換為代理設(shè)備106的代理地址(c,1),將源地址轉(zhuǎn)換為代理設(shè)備106的代理地址(c,2),將目的地址轉(zhuǎn)換為sip服務(wù)器108的地址(d,1),將轉(zhuǎn)換之后的注冊請求發(fā)送給sip服務(wù)器108,sip服務(wù)器108提取被叫終端104的網(wǎng)絡(luò)地址(c,1),并存儲到數(shù)據(jù)庫110中。代理設(shè)備106將主叫終端102發(fā)送的注冊請求中的注冊地址轉(zhuǎn)換為代理設(shè)備的代理地址(c,1),將 源地址轉(zhuǎn)換為代理設(shè)備106的代理地址(c,2),將目的地址轉(zhuǎn)換為sip服務(wù)器112的目的地址(e,1),并將轉(zhuǎn)化后的注冊請求發(fā)送給sip服務(wù)器112,sip服務(wù)器112將主叫終端102的網(wǎng)絡(luò)地址(c,1)保存到數(shù)據(jù)庫110中。主叫終端102將與被叫終端104建立會話的會話請求發(fā)送到代理設(shè)備106,會話請求的源地址為主叫終端的網(wǎng)絡(luò)地址(a2,1),目的地址為代理設(shè)備106在第一網(wǎng)絡(luò)中的網(wǎng)絡(luò)地址(b,1)。代理設(shè)備106對會話請求的源地址和目的地址進行轉(zhuǎn)換,將源地址轉(zhuǎn)化為代理設(shè)備的代理地址(c,2),將目的地址轉(zhuǎn)換為sip服務(wù)器112的網(wǎng)絡(luò)地址(e,1),并根據(jù)源地址(c,2)選擇發(fā)送端口,將會話請求發(fā)送給sip服務(wù)器112。
sip服務(wù)器112提取會話請求中被叫終端104的標識,根據(jù)被叫終端104的標識在數(shù)據(jù)庫110中查找被叫終端104的網(wǎng)絡(luò)地址,查找到保存的被叫終端104的網(wǎng)絡(luò)地址是(c,1),檢測到會話請求的源地址與(c,1)不同,根據(jù)(c,1)重新建立連接,將會話請求發(fā)送給代理設(shè)備106。代理設(shè)備106查找被叫終端104的網(wǎng)絡(luò)地址,并在將會話請求進行地址轉(zhuǎn)換后,根據(jù)轉(zhuǎn)換的源地址和目的地址發(fā)送給被叫終端。
如圖5所示,提供一種基于sip的會話邀請代理設(shè)備500,該代理設(shè)備包括:第一請求接收模塊502、第一請求發(fā)送模塊504、第二請求接收模塊506和第二請求發(fā)送模塊508。
第一請求接收模塊502,通過代理設(shè)備接收主叫終端發(fā)送的與被叫終端建立會話的會話請求,主叫終端和被叫終端在第一網(wǎng)絡(luò)。
第一請求發(fā)送模塊504,用于將會話請求通過代理設(shè)備與sip服務(wù)器的第一連接發(fā)送至sip服務(wù)器;sip服務(wù)器在第二網(wǎng)絡(luò)中,代理設(shè)備連接第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò)。
第二請求接收模塊506,用于接收sip服務(wù)器通過代理設(shè)備與sip服務(wù)器的第二連接發(fā)送的會話請求。
第二請求發(fā)送模塊508,用于將會話請求發(fā)送至被叫終端。
本實施例中,主叫終端和被叫終端在第一網(wǎng)絡(luò)中,sip服務(wù)器處在第二網(wǎng)絡(luò) 中,代理設(shè)備將第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò)連接。通過代理設(shè)備接收到主叫終端發(fā)送的與被叫終端建立會話的會話請求,將會話請求通過代理設(shè)備與sip服務(wù)器的第一連接發(fā)送至sip服務(wù)器,用以通過sip服務(wù)器發(fā)送給被叫終端。在sip服務(wù)器接收到會話請求,使用代理設(shè)備與sip服務(wù)器的第二連接將會話請求發(fā)送給代理設(shè)備,以將會話請求發(fā)送給被叫終端。這樣,使用與第一連接不同的第二連接發(fā)送會話請求,避免了由于使用第一連接將會話請求發(fā)送給主叫終端的而造成會話邀請失敗的情況。
如圖6所示,在一個實施例中,第一請求發(fā)送模塊504包括:
地址轉(zhuǎn)換模塊504a,用于提取會話請求中的主叫終端的網(wǎng)絡(luò)地址并轉(zhuǎn)換為第一代理地址。
連接建立模塊504b,用于根據(jù)第一代理地址與sip服務(wù)器建立第一連接。
會話請求發(fā)送模塊504c,用于通過第一連接將會話請求發(fā)送至sip服務(wù)器。
本實施例中,將主叫終端的網(wǎng)絡(luò)地址轉(zhuǎn)換為第一代理地址,并利用第一代理地址與sip服務(wù)器建立第一連接,保證第一連接在第二網(wǎng)絡(luò)內(nèi),避免sip服務(wù)器在傳輸數(shù)據(jù)的時在第二網(wǎng)絡(luò)中查找不到主叫終端的網(wǎng)絡(luò)地址。
如圖7所示,在一個實施例中,基于sip的會話邀請代理設(shè)備500還包括:
注冊請求發(fā)送模塊510,用于接收被叫終端發(fā)送的注冊請求。
網(wǎng)絡(luò)地址轉(zhuǎn)換模塊512,用于將注冊請求中被叫終端的網(wǎng)絡(luò)地址轉(zhuǎn)換為第二代理地址。
代理地址提取模塊514,用于將攜帶有第二代理地址的注冊請求發(fā)送至sip服務(wù)器,使sip服務(wù)器從注冊請求中提取被叫終端對應的第二代理地址并存儲。
本實施例中,被叫終端104和sip服務(wù)器108分別處在第一網(wǎng)絡(luò)和第二網(wǎng)絡(luò),如果在sip服務(wù)器108中注冊的被叫終端104的網(wǎng)絡(luò)地址,會出現(xiàn)sip服務(wù)器108在第二網(wǎng)絡(luò)中查找不到被叫終端104,不能將數(shù)據(jù)準確發(fā)送至被叫終端104。通過將注冊請求中的被叫終端104的網(wǎng)絡(luò)地址轉(zhuǎn)換成第二代理地址,sip服務(wù)器108在接收到發(fā)送至被叫終端104的數(shù)據(jù)時,可以根據(jù)第二代理地址將數(shù)據(jù)發(fā)送至代理設(shè)備106,再由代理設(shè)備106將數(shù)據(jù)發(fā)送至第一網(wǎng)絡(luò)中的主叫終端102,保證了數(shù)據(jù)傳輸?shù)臏蚀_性。
在一個實施例中,第二請求接收模塊506還用于接收sip服務(wù)器通過sip服務(wù)器與代理設(shè)備的第二連接發(fā)送的會話請求,第二連接由sip服務(wù)器根據(jù)被叫終端對應的第二代理地址建立。
本實施中,通過第二連接發(fā)送會話請求,未使用第一連接發(fā)送會話請求,避免了由于使用同一條連接將會話請求返回給主叫終端102的情形,以免導致會話建立失敗的情況。
在一個實施例中,sip服務(wù)器用于檢測是否已經(jīng)存在根據(jù)第二代理地址建立的第二連接;若存在,則通過第二連接發(fā)送會話請求;若不存在,則根據(jù)第二代理地址建立第二連接。
本實施例中,本實施例中,通過sip服務(wù)器108檢測是否已經(jīng)存在根據(jù)第二代理地址建立的第二連接,如果存在,則直接通過第二連接將會話請求發(fā)送,無需再重新建立第二連接,提高了會話請求的傳輸速度。
以上所述實施例的各技術(shù)特征可以進行任意的組合,為使描述簡潔,未對上述實施例中的各個技術(shù)特征所有可能的組合都進行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應當認為是本說明書記載的范圍。
以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對發(fā)明專利范圍的限制。應當指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應以所附權(quán)利要求為準。