本發明涉及通信,尤其涉及一種sdp構建方法、裝置、設備、存儲介質及程序產品。
背景技術:
1、隨著通信業務的“多態化、泛在化”演進,通信載體不再僅僅局限于手機、固話等傳統通信終端,音箱、攝像頭、臺燈、門鈴等智能設備也具備了通信服務能力。通信場景也從傳統的點對點通話、視頻會議等衍伸到對講、廣播等場景。
2、目前通信服務對于sdp(session?description?protocol,會話描述協議)協商構建主要有兩種方式。一種稱為背靠背(b2bua),即將通信劃分為主叫、被叫兩個呼叫分支,服務端作為代理分別與各分支建立連接、維持通信狀態,進行流媒體轉發相關操作,在這個過程中代理服務會對收到的請求、sdp等進行轉換,這種模式下有助于異構設備的接入,但是由于服務端做了轉換操作,導致終端原始信息丟失,而且將媒體協商的任務完全落在代理服務器上,需要服務端針對終端能力進行大量的適配,缺乏靈活性。另一種稱為代理模式(proxy),即服務端接收到一端信令及sdp后,僅做少量調整就轉發給另一端,由于在通信雙方之間的信令和內容保持了較好的完整性,在這種模式下,相當于通信兩端利用服務器作為觸點進行交互,服務端使用代理轉發的方式來處理通信呼叫,這種模式下把能力協商下發給了終端完成,服務的并發性能高,但當通信終端sdp存在參數不兼容或設備本身異常時,由于缺少服務端的管控參與,會導致協商失敗,錯誤率較高。泛在通信服務中,接入終端的設備種類不一、業務多樣性、設備異構性,跨模態呼叫等因素,導致了sdp參數復雜性急劇增加,對sdp構建能力有了更多要求,現有的sdp無法滿足泛在通信場景下的媒體協商的要求。
技術實現思路
1、本發明提供一種sdp構建方法、裝置、設備、存儲介質及程序產品,用以解決現有技術中終端原始數據丟失,以及現有的sdp無法滿足泛在通信場景下的媒體協商的要求的缺陷,實現保留終端sdp的原始內容,并滿足泛在通信場景下的媒體協商的要求的效果。
2、本發明提供一種sdp構建方法,應用于主叫端,所述方法包括:
3、獲取主叫端的終端sdp信令、主叫端結構化參數和配置列表;其中,所述配置列表包括多條操作語句;
4、對所述終端sdp信令進行解析,得到第一信令參數,以及對所述配置列表中的各條操作語句進行解析,得到各條所述操作語句的判決語段及與判決語段對應的操作語段;
5、基于所述主叫端結構化參數和各所述判決語段確定第一目標判決語段;
6、基于所述第一信令參數執行所述第一目標判決語段所對應的操作語段,得到對應的第一操作結果;
7、基于所述第一操作結果生成第一目標sdp信令,并將所述第一目標sdp信令發送至被叫端,以使得所述被叫端基于所述第一目標sdp信令、所述配置列表和被叫端結構化參數生成第二目標sdp信令。
8、根據本發明提供的一種sdp構建方法,所述基于所述主叫端結構化參數和各所述判決語段確定第一目標判決語段,包括:
9、基于所述操作語句在所述配置列表中的順序,將所述主叫端結構化參數作為預設謂詞判決引擎的輸入參數,通過預設謂詞判決引擎遍歷執行各所述判決語段,直至執行所述判決語段的判決結果為真;
10、將判決結果為真所對應的所述判決語段作為所述第一目標判決語段。
11、根據本發明提供的一種sdp構建方法,所述基于所述第一信令參數執行所述第一目標判決語段所對應的操作語段,得到對應的第一操作結果,包括:
12、將所述第一信令參數作為預設sdp執行引擎的輸入參數,通過預設sdp執行引擎,執行所述第一目標判決語段所對應的所述操作語句中的各操作命令,得到所述第一操作結果。
13、根據本發明提供的一種sdp構建方法,在所述獲取主叫端的終端sdp信令、主叫端結構化參數和配置列表之前,所述方法還包括:
14、獲取sip協議,并對所述sip協議進行參數解析,得到所述主叫端針對業務、設備、呼叫信息中至少一項的主叫端結構化參數。
15、本發明提供一種sdp構建方法,應用于被叫端,所述方法包括:
16、接收主叫端發送的第一目標sdp信令,并獲取被叫端結構化參數和配置列表;其中,所述配置列表包括多條操作語句;
17、對所述第一目標sdp信令進行解析,得到第二信令參數,以及對所述配置列表中的各條操作語句進行解析,得到各條所述操作語句的判決語段及與判決語段對應的操作語段;
18、基于所述被叫端結構化參數和各所述判決語段確定第二目標判決語段;
19、基于所述第二信令參數執行所述第二目標判決語段所對應的操作語段,得到對應的第二操作結果;
20、基于所述第二操作結果生成第二目標sdp信令。
21、根據本發明提供的一種sdp構建方法,所述基于所述被叫端結構化參數和各所述判決語段確定第二目標判決語段,包括:
22、基于所述操作語句在所述配置列表中的順序,將所述被叫端結構化參數作為預設謂詞判決引擎的輸入參數,通過謂詞判決引擎遍歷執行各所述判決語段,直至執行所述判決語段的判決結果為真;
23、將判決結果為真所對應的所述判決語段作為所述第二目標判決語段。
24、根據本發明提供的一種sdp構建方法,所述基于所述第二信令參數執行所述第二目標判決語段所對應的操作語段,得到對應的第二操作結果,包括:
25、將所述第二信令參數作為預設sdp執行引擎的輸入參數,通過預設sdp執行引擎,執行所述第二目標判決語段所對應的所述操作語段中的各操作命令,得到所述第二操作結果。
26、根據本發明提供的一種sdp構建方法,在所述獲取被叫端結構化參數和配置列表之前,所述方法還包括:
27、獲取sip協議,并對所述sip協議進行參數解析,得到所述被叫端針對業務、設備、呼叫信息中至少一項的被叫端結構化參數。
28、本發明還提供一種sdp構建裝置,應用于主叫端,所述裝置包括:
29、獲取模塊,配置為獲取主叫端的終端sdp信令、主叫端結構化參數和配置列表;其中,所述配置列表包括多條操作語句;
30、第一解析模塊,配置為對所述終端sdp信令進行解析,得到第一信令參數,以及對所述配置列表中的各條操作語句進行解析,得到各條所述操作語句的判決語段及與判決語段對應的操作語段;
31、第一確定模塊,配置為基于所述主叫端結構化參數和各所述判決語段確定第一目標判決語段;
32、第一執行模塊,配置為基于所述第一信令參數執行所述第一目標判決語段所對應的操作語段,得到對應的第一操作結果;
33、第一生成模塊,配置為基于所述第一操作結果生成第一目標sdp信令,并將所述第一目標sdp信令發送至被叫端,以使得所述被叫端基于所述第一目標sdp信令、所述配置列表和被叫端結構化參數生成第二目標sdp信令。
34、本發明還提供一種sdp構建裝置,應用于被叫端,所述裝置包括:
35、接收模塊,配置為接收主叫端發送的第一目標sdp信令,并獲取被叫端結構化參數和配置列表;其中,所述配置列表包括多條操作語句;
36、第二解析模塊,配置為對所述第一目標sdp信令進行解析,得到第二信令參數,以及對所述配置列表中的各條操作語句進行解析,得到各條所述操作語句的判決語段及與判決語段對應的操作語段;
37、第二確定模塊,配置為基于所述被叫端結構化參數和各所述判決語段確定第二目標判決語段;
38、第二執行模塊,配置為基于所述第二信令參數執行所述第二目標判決語段所對應的操作語段,得到對應的第二操作結果;
39、第二生成模塊,配置為基于所述第二操作結果生成第二目標sdp信令。
40、本發明還提供一種電子設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行所述程序時實現如上述任一種所述sdp構建方法。
41、本發明還提供一種非暫態計算機可讀存儲介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現如上述任一種所述sdp構建方法。
42、本發明還提供一種計算機程序產品,包括計算機程序,所述計算機程序被處理器執行時實現如上述任一種所述sdp構建方法。
43、本發明提供的sdp構建方法、裝置、設備、存儲介質及程序產品,通過對終端sdp信令進行解析,得到第一信令參數,基于終端sdp信令來構建最終的sdp信令,能夠最大程度保留端側針對sdp的原始內容;同時對配置列表中的各條操作語句進行解析,得到各條操作語句對應的判決語段和操作語段;配置列表中配置有多條判決語段,基于主叫端結構化參數和各判決語段確定第一目標判決語段,使得確定出的第一目標判決語段能夠適用主叫端,再基于第一信令參數執行第一目標判決語段所對應的操作語段,得到對應的第一操作結果,進而基于第一操作結果生成第一目標sdp信令,并將所述第一目標sdp信令發送至被叫端,被叫端基于第一目標sdp信令、配置列表和被叫端結構化參數生成第二目標sdp信令。本發明中,主叫端通過配置列表和主叫端結構化參數來配置構建sdp的判決語段,并利用第一信令參數來實現判決語段所對應的操作語段,從而滿足泛在通信業務中對sdp構建的協商容錯、動態控制等能力要求,同時能夠滿足泛在通信場景中多業務、泛設備的sdp構建能力要求。