專利名稱:傳送消息業務數據的方法及系統的制作方法
技術領域:
本發明涉及網絡通信技術領域,具體涉及一種傳送消息業務數據的方法及系統。
背景技術:
IMS(因特網多媒體子系統)是NGN(下一代網絡)的核心子系統,在NGN的框架下,IMS被要求同時支持固定接入和移動接入。IMS通過SIP(會話初始協議)協議實現IP多媒體業務的建立、維護及管理等功能,允許運營商快速、高效地部署多媒體業務,而不依賴網絡的接入方式和終端設備的類型,支持固定網和802.11、802.15、802.16、CDMA(碼分多址)或GSM(全球移動通信系統)等無線網上的任何類型的會話,允許業務提供商向用戶提供一系列話音與數據融合的多媒體業務。
IMS的系統結構如圖1所示其中,CSCF(呼叫會話控制功能)實體用于控制用戶注冊、會話控制等功能;AS(應用服務器)用于提供各種業務邏輯控制功能;HSS(歸屬用戶服務器)用于集中管理用戶簽約數據;MGCF(媒體網關控制功能)實體用于實現與電路交換網互通;用戶通過代理節點P-CSCF(代理呼叫會話控制功能)接入IMS;會話和業務觸發控制及與AS的業務控制交互則由其注冊地的歸屬域服務節點S-CSCF(服務呼叫會話控制功能)完成。
消息業務是消息實體之間通過業務中心進行信息收發的業務,消息可以是文本的,也可以是圖片等其他格式。業務中心是一個業務處理系統,用于提交、存儲、轉發消息。
傳統的消息業務包括SMS(短消息業務)和MMS(多媒體消息業務)以及Email(電子郵件)等。傳統的電路域網絡包括GSM(全球移動通信系統)網、CDMA(碼分多址)網和PSTN(公共交換電話網)網。GSM網的SMS協議棧包括應用層(Application layer)、傳輸層(Transfer layer)、傳遞層(Relaylayer)及下層協議(Lower layers),其中傳遞層協議為MAP協議。CDMA網的SMS協議棧包括業務層(Teleservice layer)、傳輸層(Transfer layer)、傳遞層(Relay layer)及下層協議(Lower layers),其中傳遞層協議為MAP協議。PSTN網的SMS協議棧分兩種,一種包括應用層(Application layer)、傳輸層(Transferlayer)及下層協議(包括Data link layer和Physical layer),一種包括應用層(Application layer)、傳輸層(Transfer layer)、SMS應用業務元素層(SMSApplication Service Element)及下層協議(如TCAP協議、SCCP協議等)。
歸納來說,傳統電路域的SMS協議棧可分為業務應用層、業務傳輸層、業務承載層。業務應用層是上述應用層或業務層;業務傳輸層可以是上述傳輸層,業務承載層可以是上述傳遞層或SMS應用業務單元。
傳統電路域的MMS承載在HTTP(超文本傳輸協議)協議或SMTP(簡單郵件傳輸協議)協議上,通常,HTTP協議用于終端和多媒體短信中心之間,SMTP協議用于多媒體短信中心之間。
在現有技術中,SIP攜帶SMS的方式是通過直接封裝GSM網的傳輸層消息內容,并通過Content-Type:application/vnd.3gpp.sms-tl指示消息體中封裝的是3GPP定義的傳輸層消息,如下所示MESSAGE sip:1234567890@domain SIP/2.0//向1234567890@domain發送MESSAGE消息From:<sip:0987654321@domain>;tag=c0a80103-13c4-7e84-1ee41f1-2239To:<sip:1234567890@domain>
Call-ID:247fc650-c0a80103-13c4-7e84-1ee41f1-4883@192.168.1.3CSeq:1 MESSAGEVia:SIP/2.0/UDP 192.168.1.3:5060;branch=z9hG4bK-7e84-1ee41f1-207e
Content-Encoding:base64∥消息體的編碼方式Max-Forwards:70Content-Type:application/vnd.3gpp.sms-tl//指示消息體中封裝的是3GPP定義的傳輸層消息Content-Length:32IMS域的消息業務包括立即消息、基于會話的消息和延遲傳遞的消息等。立即消息是指發送終端通過MESSAGE(消息)方法直接將消息發送給接收終端;基于會話的消息,如聊天業務,是指發送、接收終端通過SIP建立會話后通過MSRP(消息會話中繼協議)協議在媒體流上傳送;延遲傳遞的消息與傳統的SMS/MMS類似,是包含存儲轉發過程的消息業務。
如果依照上述現有技術這種封裝方式,則無法滿足攜帶各種不同類型消息業務數據的需求,比如,類似傳統的MMS類型的消息業務數據;而且,對于固網終端來說,還需要終端支持GSM網的終端協議棧,即需要根據GSM網的協議棧解析消息體中封裝的數據包,得到其中的消息內容。
發明內容
本發明的主要目的是提供一種傳送消息業務數據的方法,以克服現有技術SIP攜帶SMS的方式單一、無法傳送不同類型消息業務數據的缺點,實現對多種不同類型消息業務數據的傳送。
本發明的另一個目的是提供一種傳送消息業務數據的系統,以支持對多種不同類型消息業務數據的傳送。
為此,本發明提供如下的技術方案一種傳送消息業務數據的方法,所述方法包括在消息發送方將消息業務數據添加到會話初始協議SIP或消息會話中繼協議MSRP的消息中;
通過SIP消息或MSRP消息將消息業務數據傳送到消息接收方。
所述將消息業務添加到SIP或MSRP消息中的步驟具體為在消息發送方將消息業務數據封裝在會話初始協議SIP或消息會話中繼協議MSRP的消息體中。
所述消息業務數據具體為GSM網絡的消息業務格式,或者是CDMA網絡的消息業務格式,或者是PSTN網絡的消息業務格式、或者是Email的消息業務格式。
當需要傳送短消息業務SMS數據時,將SMS的業務應用層數據、和/或業務傳輸層數據、和/或業務承載層數據封裝在SIP或MSRP的消息體中。
當需要傳送多媒體消息業務數據時,將簡單郵件傳輸協議SMTP消息或者超文本傳輸協議HTTP消息封裝在SIP或MSRP的消息體中;所述SMTP消息包括SMTP命令和消息內容,或僅包括消息內容;所述HTTP消息包括HTTP方法、頭域和消息體。
當需要傳送Email數據時,將簡單郵件傳輸協議SMTP消息封裝在SIP或MSRP的消息體中;所述SMTP消息包括SMTP命令和消息內容,或僅包括消息內容。
優選地,所述方法進一步包括將所述業務消息數據封裝在所述消息體中的多用途因特網郵件擴充協議MIME體中。
通過SIP或MSRP消息中的MIME媒體類型、或MIME體字段、或頭域參數指示所述業務消息數據的格式。
所述MIME媒體類型、MIME體字段、頭域參數是SIP協議或MSRP協議中已有MIME媒體類型、MIME體字段、頭域參數的擴展應用;或者是擴展的MIME媒體類型、MIME體字段、頭域參數。
所述將消息業務添加到SIP或MSRP消息中的步驟具體為
在消息發送方將消息業務數據映射到會話初始協議SIP或消息會話中繼協議MSRP的消息頭域和/或消息體中。
所述將消息業務數據映射到會話初始協議SIP或消息會話中繼協議MSRP的消息頭域和/或消息體中的步驟包括將消息業務的控制參數通過SIP或MSRP的消息頭域、和/或MIME體攜帶;將消息業務的內容通過SIP或MSRP的MIME體攜帶。
所述消息業務的控制參數具體為消息類型指示、和/或消息分類、和/或遞交報告指示、和/或讀取報告指示、和/或標題、和/或答復路徑。
所述消息頭域具體為SIP或MSRP協議中已有的頭域的擴展使用,或者為SIP或MSRP協議中擴展的頭域;所述MIME體具體為SIP或MSRP協議中已有的MIME媒體類型的擴展使用,或者擴展的MIME媒體類型。
優選地,所述方法進一步包括當消息業務數據的發送方與接收方支持的消息格式不同時,對消息格式進行轉換。
所述對消息格式進行轉換的步驟包括對消息控制參數和/或對消息內容進行轉換。
所述對消息控制參數進行轉換的步驟具體為修改參數,或者增加參數,或者刪除參數。
所述修改參數具體為參數的變換,或者是參數取值的變換。
所述對消息內容進行轉換的步驟具體為修改消息內容,或者增加消息內容,或者刪除消息內容。
所述消息內容具體為消息顯示方式和/或消息媒體內容。
一種傳送消息業務數據的系統,包括消息業務數據處理模塊,所述消息業務數據處理模塊包括消息添加模塊,用于將消息業務數據封裝或映射到會話初始協議SIP或消息會話中繼協議MSRP的消息頭域和/或消息體中;發送模塊,與所述消息添加模塊相連,用于通過SIP或MSRP消息攜帶消息業務數據傳送到消息接收方;接收模塊,用于接收SIP或MSRP消息;消息提取模塊,與所述接收模塊相連,用于從所述接收的SIP或MSRP消息中提取出消息業務數據。
所述消息業務數據處理模塊或者位于終端設備中,或者位于網絡設備中。
所述消息業務數據處理模塊中的各模塊或者位于同一個設備中,或者位于不同的設備中。
所述消息業務數據處理模塊所處的設備通過SIP域網絡相連,或通過SIP域網絡與電路域網絡或其它IP網絡相連。
優選地,所述系統進一步包括消息格式轉換模塊,用于在發送方與接收方支持的消息格式不同時,對消息格式進行轉換。
優選地,所述系統進一步包括消息格式判斷模塊,用于確定源消息格式和目的消息格式。
所述消息格式判斷模塊根據消息接收方所屬的網絡和/或消息接收方的終端能力來判斷目的消息格式。
一種傳送消息業務數據的系統,包括消息數據添加模塊,用于將消息數據信息添加到第一消息中并發送給消息接收方網元,所述第一消息是SIP域攜帶消息數據信息的消息,或者是傳統電路域攜帶消息數據信息的消息;所述消息數據信息是傳統消息業務數據,或者是SIP或MSRP消息的消息體中攜帶的消息信息;消息數據提取模塊,用于接收消息發送方網元的第二消息,并提取其中攜帶的消息數據信息,所述第二消息是SIP域攜帶消息數據信息的消息,或者是電路域攜帶消息數據信息的消息;消息格式轉換模塊,用于在所述第一消息與第二消息支持的消息格式不同時,對消息格式進行轉換。
所述SIP域攜帶消息數據信息的消息是會話初始協議SIP消息、或消息會話中繼協議MSRP消息,所述傳統電路域攜帶消息數據信息的消息是映射MAP消息、或簡單郵件傳輸協議SMTP消息、或超文本傳輸協議HTTP消息。
當所述第一消息為傳統電路域的消息業務消息,所述第二消息為封裝為傳統消息業務數據的SIP消息或MSRP消息時,消息格式轉換模塊將第一消息中攜帶的消息數據信息全部或部分封裝在SIP消息或MSRP消息中;當所述第一消息為封裝傳統消息業務數據的SIP消息或MSRP消息,所述第二消息為傳統消息業務消息時,消息格式轉換模塊提取消息數據信息,并將其轉換為接收方支持的傳統電路域消息格式。
當所述第一消息為傳統電路域的消息業務消息,所述第二消息為映射傳統消息業務數據的SIP消息或MSRP消息時,所述消息格式轉換模塊解析收到的第一消息,將其中的消息控制參數映射為第二消息的格式,而將消息的內容映射、或封裝、或保持原格式,攜帶于第二消息中;當所述第一消息為映射傳統消息業務數據的SIP消息或MSRP消息,所述第二消息為傳統消息業務消息時,所述消息格式轉換模塊從收到的第二消息中解析獲得的消息控制參數,并將其映射為傳統消息業務數據格式,而將消息的內容映射、或保持原描述格式,生成第二消息。
當所述第一消息或第二消息為封裝或映射有傳統消息業務數據的SIP消息或MSRP消息,所述第二消息或第一消息為不支持封裝或映射傳統消息業務數據的SIP消息或MSRP消息時,所述消息格式轉換模塊將消息的內容相互映射、或保持原描述格式;當所述第一消息或第二消息為封裝或映射有傳統消息業務數據的SIP消息或MSRP消息時,所述消息格式轉換模塊完成封裝傳統消息業務數據的SIP消息或MSRP消息到映射傳統消息業務數據的SIP消息或MSRP消息的轉換,或者映射傳統消息業務數據的SIP消息或MSRP消息的轉換到封裝傳統消息業務數據的SIP消息或MSRP消息的轉換。
所述消息格式轉換模塊將第一消息中的消息接收方標識的格式轉換為所述第二消息中的消息接收方標識的格式。
優選地,所述系統進一步包括消息格式判斷模塊,用于判斷所述第一消息和所述第二消息的消息格式。
所述消息格式判斷模塊根據所述第一消息中攜帶的消息格式指示信息來判斷第一消息的消息業務數據格式。
所述消息格式指示信息至少是下述一種信息消息業務數據媒體類型、消息業務數據指示參數。
所述消息格式判斷模塊根據消息接收方所屬的網絡、和/或消息接收方的終端能力判斷消息接收方支持的消息業務數據格式。
消息格式判斷模塊從消息接收方注冊消息中獲取消息接收方的終端能力;或者從消息接收方收到所述第二消息后返回的響應消息中獲取消息接收方的終端能力。
所述消息格式判斷模塊至少包括下面一個子模塊網絡類型判斷子模塊,用于通過所述第一消息中的消息業務信息,判斷所述消息業務信息接收方所屬網絡類型;網絡接口類型判斷子模塊,用于通過所述第一消息中的消息業務信息判斷網絡接口類型;
終端能力判斷子模塊,用于通過消息接收方所屬的網絡、和/或消息接收方的終端能力來判斷消息接收方支持的消息業務數據格式;消息業務類型判斷子模塊,用于通過所述第一消息判斷其攜帶的消息業務數據格式。
由以上本發明提供的技術方案可以看出,本發明采用封裝方式將消息業務數據封裝在SIP協議或MSRP協議的消息體中傳送,不僅可以將傳統電路域(包括GSM網絡、CDMA網絡和PSTN網絡等)SMS消息的傳輸層消息封裝傳送,而且可以將SMS消息的應用層消息和承載層消息封裝傳送,而且對于傳統電路域的其他格式的消息也可以通過封裝方式攜帶,從而實現了對各種不同類型消息業務數據的傳送。另外,本發明通過映射方式將消息業務數據在SIP協議或MSRP協議的消息頭域和/或消息體中攜帶,使固網終端無需支持GSM網的終端協議棧,即可正確解析出SIP協議或MSRP協議攜帶的消息業務數據,從而提高了固網終端的適應能力,減少了設備成本。
圖1是IMS的系統結構示意圖;圖2是本發明方法第一實施例的實現流程圖;圖3是本發明方法第二實施例的實現流程圖;圖4是本發明系統第一實施例的原理框圖;圖5是本發明系統第二實施例的原理框圖;圖6是本發明系統第三實施例的原理框圖;圖7是本發明系統第四實施例的原理框圖;圖8是本發明系統中消息格式判斷模塊中的不同功能子模塊位于不同網絡實體時消息的處理流程;圖9是本發明系統中消息格式判斷模塊及消息格式轉換模塊位于相同網絡實體時消息的處理流程;圖10是本發明系統第五實施例的原理框圖。
具體實施例方式
本發明的核心在于把消息業務數據添加到SIP協議或MSRP協議消息中,通過SIP協議或MSRP協議消息攜帶并傳送。SIP協議或MSRP協議消息攜帶消息業務數據的方式包括封裝方式和映射方式。當采用封裝方式攜帶業務數據時,如果需要傳送SMS數據,則將SMS的業務應用層數據、和/或業務傳輸層數據、和/或業務承載層數據封裝在SIP或MSRP的消息體中;如果需要傳送MMS數據,則將SMTP(簡單郵件傳輸協議)消息或者HTTP(超文本傳輸協議)消息封裝在SIP或MSRP的消息體中,所述SMTP消息可以包括SMTP命令(command)和消息內容(message content),或僅包括消息內容,所述命令可以是DATA命令。所述HTTP消息包括HTTP方法(method)、頭域(header)和消息體(body)。所述方法可用是POST方法;當需要傳送Email數據時,將簡單郵件傳輸協議SMTP消息封裝在SIP或MSRP的消息體中;所述SMTP消息包括SMTP命令和消息內容,或僅包括消息內容。當采用映射方式攜帶業務數據時,將消息業務的控制參數通過SIP或MSRP的頭域、或頭域參數、或消息體、或消息體應用字段攜帶;將消息業務的內容通過SIP或MSRP的消息體、或消息體的XML標簽攜帶。
本技術領域人員知道,傳統電路域(包括GSM網絡、CDMA網絡和PSTN網絡等)的消息業務數據可分為消息控制參數和消息內容。其中,消息控制參數可以是接收方地址信息、用戶的業務請求指示,如請求遞交報告(Deliveryreport)、請求讀取報告的指示(Read reply)。消息內容可以是消息的顯示方式和媒體內容,顯示方式是媒體內容的排列以及呈現方式的描述,媒體內容可以是文本、圖片、聲音、視頻。
在本發明中,可以將消息控制參數和消息內容采用傳統消息業務的描述格式封裝在SIP消息或MSRP消息的消息體中,也可以將消息控制參數和消息內容放在SIP消息或MSRP消息的消息頭域和/或消息體中并采用SIP消息或MSRP消息的描述格式攜帶傳送。前者在本發明中,被稱之為“消息業務數據封裝”,后者在本發明中,被稱之為“消息業務數據映射”。
對于這兩種傳送方式,下面將分別進行說明。首先說明“消息業務數據封裝”的實現方式。
為了使本技術領域的人員更好地理解本發明方案,下面結合附圖和實施方式對本發明作進一步的詳細說明。
參照圖2,圖2示出了本發明方法第一實施例的實現流程,包括以下步驟步驟201在消息發送方將消息業務數據封裝在SIP或MSRP的消息體中。
所述消息業務數據可以是GSM網絡的消息業務格式、也可以是CDMA網絡的消息業務格式,還可以是PSTN網絡的消息業務格式。
本技術領域人員知道,SIP協議提供跨越因特網的高級電話業務,用于生成、修改和終結一個或多個參與者之間的會話。這些會話包括因特網多媒體會議,因特網(或任何IP網絡)電話呼叫和多媒體發布。會話中的成員能夠通過多播或單播聯系的網絡來通信。SIP支持會話描述,它允許參與者在一組兼容媒體類型上達成一致。它同時通過代理和重定向請求到用戶當前位置來支持用戶移動性。SIP不與任何特定的會議控制協議捆綁。
如果通信各方需要進行在一段時間交換多條消息的更長時間的即時消息會話,則利用SIP協議的INVITE(邀請)消息和MSRP協議來啟動。MSRP可以傳送即時消息的文本,就像在SIP中,RTP(實時傳輸協議)用于傳送一次IP電話呼叫中的語音包。
步驟202通過SIP消息或MSRP消息將封裝后的消息業務數據傳送到消息接收方。
上面所述的消息業務數據包括消息業務的控制參數和消息業務的內容。在SIP消息中的封裝方式與在MSRP消息中的封裝方式類似。可以通過SIP/MSRP消息體中的MIME(多用途Internet郵件擴充協議)媒體類型、或MIME體字段、或消息頭域參數來指示SIP/MSRP消息體中封裝的業務消息數據信息。其中,所述MIME媒體類型、MIME體字段、頭域參數可以是SIP協議或MSRP協議中已有MIME媒體類型、MIME體字段、頭域參數的擴展應用,也可以是擴展的MIME媒體類型、MIME體字段、頭域參數。
下面以SIP域內的消息業務數據的傳送為例,說明傳統電路域消息業務數據的攜帶方式。
在需要傳送SMS業務數據時,可以將SMS的業務應用層數據、和/或業務傳輸層數據、和/或業務承載層數據封裝在SIP或MSRP的消息體中。
在需要傳送MMS業務數據時,可以將SMTP的DATA命令中的內容或者HTTP的POST方法中的內容封裝在SIP的消息體中。
封裝的具體內容,除了傳統消息業務自身的數據外,還需要指明被封裝的傳統消息內容指示信息,包括消息內容格式(如封裝的是哪個網絡的業務數據,是SMS還是MMS),還可以進一步包括消息內容所在協議層(如封裝的傳輸層數據還是承載層數據等),可以通過以下幾種方式標識,以封裝CDMA網的SMS的承載層消息為例(1)在SIP消息體中定義一個媒體類型(mediatype),格式為MIME類型,命名為application/vnd.3gpp2.sms-rl,以指示封裝的消息體中封裝的是符合3GPP2定義的SMS承載層消息內容;或者(2)在SIP頭域或消息體中定義一個傳統消息內容指示參數,如命名為version,以指示具體的封裝內容,它可以是頭域參數或消息體中的字段。
需要說明的是,上述消息內容媒體類型、消息內容指示參數是邏輯的定義,具體來說,它們可以是在SIP協議中定義的新擴展的參數和消息體應用,也可以是SIP協議中已有的參數和消息體應用的擴展使用。
下面以CDMA網的消息業務為例,進一步說明在IMS(IP多媒體子系統)域內采用本發明方法封裝的方式攜帶消息業務數據的方式。
對于CDMA網的SMS消息,將其封裝在SIP/MSRP的消息體中,封裝方式可以是封裝CDMA網SMS的承載層消息格式,即將MAP(映射)協議內容直接封裝。
封裝內容通過MIME體類型(application/vnd.3gpp2.sms-rl)指示,如下所示MESSAGE sip:receiver@example.com,SIP/2.0//向receiver@example.com發送消息Content type:application/vnd.3gpp2.sms-rl//用新增的媒體類型指示消息體中封裝的是3GPP2定義的承載層消息,即封裝MAP消息或者封裝內容使用content type頭域參數version指示,如下所示MESSAGE sip:receiver@example.com,SIP/2.0Content type:application/message,version=vnd.3gpp2.sms-rl//用Contenttype頭域參數指示,或者封裝內容使用MIME體中的字段version指示,如下所示MESSAGE sip:receiver@example.com,SIP/2.0Content type:application/message對于CDMA網的MMS消息(可以是3GPP2中定義的,也可以是開放移動聯盟OMA中定義的),將其封裝在SIP/MSRP的消息體中,封裝方式可以是直接將HTTP或SMTP中攜帶的MMS參數和消息內容打包在SIP/MRSP的消息體中。
封裝內容可以通過MIME體類型指示,如下所示MESSAGE sip:receiver@example.com,SIP/2.0Content type:application/vnd.oma.mms
封裝內容還可以通過在content type頭域中增加參數指示,如下所示MESSAGE sip:receiver@example.com,SIP/2.0Content type:application/message,version=vnd.oma.mms可以看到,GSM網絡、CDMA網絡和PSTN網絡的消息業務消息數據封裝在消息體的MIME體中,不同格式的消息業務數據可以在消息體的同一個MIME體中攜帶,以消息內容指示參數來描述不同的消息格式;或者在不同的MIME體中攜帶,以MIME媒體類型來描述不同的消息格式。
下面說明“消息業務數據映射”的實現方式。
參照圖3所示本發明方法第二實施例的實現流程,包括以下步驟步驟301在消息發送方將消息業務數據映射到SIP或MSRP的消息頭域和/或消息體中。
比如,將消息業務的控制參數通過SIP的頭域、或頭域參數、或MIME體、或MIME體字段攜帶;將消息業務的內容通過SIP或MSRP的MIME體、或MIME體的XML標簽攜帶。
同樣,在需要建立會話型消息業務時,將消息業務的控制參數通過MSRP的頭域、或頭域參數、或MIME體、或MIME體字段攜帶;將消息業務的內容通過MSRP的消息體、或MIME體的XML標簽攜帶。
步驟302通過SIP消息或MSRP消息將映射后的消息業務數據傳送到消息接收方。
上面所述消息控制參數可以是消息類型指示(Message type)、消息分類(Message class)、遞交報告指示(Delivery report)、讀取報告指示(Read reply)、標題(Subject)、答復路徑(Reply Path)等等。其中,消息類型指示標識消息類型,如發送消息、遞交消息或者是通知消息;消息分類是指示消息是私人消息、還是廣告或其他種類;遞交報告指示是指發送方請求消息中心在接收方獲得消息后通知發送方;讀取報告指示是指發送方請求接收方在讀取消息后通知發送方;標題是指消息的標題;答復路徑是指發送方請求消息中心在收到接收終端的響應后把響應發送給發送方。
因此,在具體實現時,可以根據需要傳送的消息控制參數的類型、數量等信息,在SIP/MSRP協議中定義消息控制參數頭域參數,并通過該參數攜帶所述消息控制參數;或者在SIP/MSRP協議中定義消息控制參數頭域,并通過該頭域攜帶所述消息控制參數,一個消息控制參數頭域對應一個、或部分、或全部消息控制參數;或者在SIP/MSRP協議的消息體中定義媒體類型,并通過消息體攜帶所述消息控制參數;或者在SIP/MSRP協議的消息體中定義消息控制參數字段,并通過該字段攜帶所述消息控制參數。
其中,消息頭域、頭域參數可以是SIP/MSRP協議中已有的頭域、頭域參數的擴展使用,還可以是SIP/MSRP協議中擴展的頭域、頭域參數;同樣,消息體應用字段可以是SIP/MSRP協議中已有的消息體應用的擴展使用,還可以是SIP或MSRP協議中擴展的消息體應用,所述消息體應用可以是消息體中的XML標簽和消息體字段。
下面以消息類型指示為例,舉例說明消息控制參數的攜帶方式(1)在SIP/MSRP協議中定義消息控制參數頭域參數,如消息類型指示參數,命名為Message-type-Indicator,用該參數攜帶消息類型指示。
(2)在SIP/MSRP協議中定義消息控制參數頭域,消息控制參數頭域可以與實際的消息控制參數一一對應,如消息類型指示頭域,命名為X-Message-type-Indicator,以攜帶消息類型指示,也可以對應所有或一類參數,如定義一個消息信息頭域,命名為P-Message-Header,消息類型指示參數及其他參數作為該消息頭域的參數在P-Message-Header頭域中攜帶。
(3)在SIP/MSRP消息體中定義一個媒體類型,格式為MIME類型,命名為application/message,在該消息體中通過XML標簽攜帶消息控制參數,如用message-type-indicator標簽攜帶消息類型指示。
(4)在SIP/MSRP消息體中定義多個消息控制參數字段,如消息類型指示字段,命名為X-Message-type-Indicator,以攜帶消息類型指示。
上述消息類型指示頭域、消息信息頭域、消息控制參數、消息類型指示參數、消息媒體類型和消息類型指示字段等都是邏輯的定義,具體來說,它們可以是在SIP/MSRP協議中定義的新擴展的參數、頭域、消息體應用,也可以是SIP/MSRP協議中已有的參數、頭域、消息體應用的擴展使用。
可以單獨采用上述某一種方式、或同時采用上述的多種方式組合來攜帶所需的消息控制參數。
傳統電路域中使用的消息控制參數不僅僅是上述幾種,其他消息控制參數在SIP/MSRP消息中的攜帶同樣可采用上述方式。
另外,傳統電路域的消息控制參數在SIP/MSRP消息中可以合為一個參數或者合為一類參數,然后通過上述方式攜帶,如消息類型指示參數在CDMA網、GSM網、PSTN網中的SMS消息和MMS消息中都為必選參數,但是參數的定義有差別,取值也不同,在SIP/MSRP中可以通過擴展一個頭域或者消息體中XML的一個參數來攜帶。
下面以發送消息為例,進一步說明在IMS(IP多媒體子系統)域內采用本發明方法映射的方式攜帶消息業務數據的方式。
(1)IMS域終端填寫MESSAGE消息的request URI(統一資源標識)為接收方地址(也可以是消息中心地址),消息中請求遞交報告和讀取報告等的參數指示用擴展的SIP頭域攜帶,內容類型用現有的SIP頭域Content-Type攜帶。消息內容的顯示方式在SIP消息體中用SMIL(同步多媒體集成語言)描述,消息內容在SIP消息體中直接攜帶。SIP消息中攜帶的消息業務數據如下MESSAGE sip:receiver@example.com,SIP/2.0X-Message-type-Indicator:message submit request//消息類型指示頭域X-Message-Class:personal∥消息分類頭域
X-Delivery-Report:Yes//遞交報告請求頭域X-Read-reply:Yes//讀取報告請求頭域X-Subject:Test//消息題目頭域Content-Type:multipart/related;type=″application/smil″;start=″<nXYxAE@pres.vancouver.example.com>″;boundary=″=_005A0428C1257165_=″--=_005A0428C1257165_=Content-Type:application/smil∥消息顯示方式,上面顯示test.jpeg,圖象下面顯示“This is a test!”文本Content-ID:nXYxAE@pres.vancouver.example.com<smil>
<head>
<layout>
<root-layout height=″200″width=”176″/>
<region id=″Image″height=″150″width=″176”/>
<region id=″Text″height=″50″width=″176″fit=″scroll″/>
</layout>
</head>
<body>
<par>
<image src=″test.jpeg″region=″Image″/>
<text src=″test.txt″region=″Text″/>
</par>
</body>
</smil>
--=_005A0428C1257165_=Content-Type:text/plain;name=”test.txt”∥消息中的文本內容This is a test!--=_005A0428C1257165_=Content-Type:image/jpeg;name=″test.jpg″//消息中的圖象內容.........
(2)消息中請求遞交報告和讀取報告等消息控制信息通過擴展的頭域(P-Message-Info)中的不同參數攜帶,如下所示MESSAGE sip:receiver@example.com,SIP/2.0P-Message-Info:Message-type-Indicator=message submit request,//消息類型指示參數Message-Class=personal//消息分類參數Delivery-Report=Yes//遞交報告指示參數Read-reply=Yes//讀取報告指示參數Subject=Test∥消息題目參數(3)消息中請求遞交報告和讀取報告等參數指示在消息體中用XML標識攜帶,消息內容(This is a test message!)也在XML標簽中攜帶,如下所示MES SAGE sip:receiver@example.com,SIP/2.0Content-Type:multipart/related;type=″application/message+xml″;start=″<nXYxAE@pres.vancouver.example.com>″;boundary=″=_005A0428C1257165_=″--=_005A0428C1257165_=Content-Type:application/message+xml//新增message媒體類型
Content-ID:<nXYxAE@pres.vancouver.example.com>
<?xml version=″1.0″encoding=″UTF-8″?>
<message xmlns=″urn:ietf:params:xml:ns:message″>
<message-type-indicator>message submit request<message-type-indicator>//消息類型指示XML標簽<message-class>personal<message-class>//消息分類XML標簽<delivery-report>Yes<delivery-report>//遞交報告XML標簽<read-reply>Yes<read-reply>//讀取報告XML標簽<content>This is a test message!<content>//消息內容</message>
(4)消息中請求遞交報告和讀取報告等消息控制信息通過消息體中的不同字段攜帶,如下所示MESSAGE sip:receiver@example.com,SIP/2.0Content-Type:multipart/related;type=″application/message+xml″;start=″<nXYxAE@pres.vancouver.example.com>″;boundary=″=_005A0428C1257165_=″--_005A0428C1257165_=Content-Type:application/message-paraContent-ID:<nXYxAE@pres.vancouver.example.com>
X-Message-type-Indicator:message submit request//消息體內的消息類型指示字段X-Message-Class:personalX-Delivery-Report:Yes
X-Read-reply:YesX-Subject:Test......
在本發明中,攜帶消息業務數據的消息可以是SIP MESSAGE、INFO消息,也可以是MSRP SEND消息。上述消息控制參數也可以一部分在消息頭域中攜帶,一部分在消息體中攜帶。
和前述方法類似,采用映射方式時,除了傳統消息業務數據被映射到SIP消息或MSRP消息中外,也需要在SIP消息或MSRP消息中指明的傳統消息內容指示信息,包括傳統消息內容格式等,可以通過消息內容媒體類型或消息內容指示參數來描述。
可以看到,封裝和映射的區別在于,對于前者,消息控制參數采用傳統消息業務的原有描述格式和消息的內容一起,被完整的封裝在SIP消息體或MSRP消息體中;對于后者,內容部分和消息控制參數是以SIP消息或MSRP消息中的描述格式來攜帶,如消息控制參數從傳統消息業務的描述格式被映射成SIP消息或MSRP消息中的描述格式,再如SMS的二進制的消息內容格式此時也將以文本方式描述。當IMS終端采用封裝的方式發送消息業務時,IMS終端需要支持傳統消息業務的描述格式,此時SIP消息或MSRP消息只是傳統消息業務的一個傳送通道;而IMS終端采用映射的方式發送消息業務時,IMS終端只需要支持SIP消息或MSRP消息的描述格式。
此外,還有一種特殊的映射方式,即消息控制參數采用映射方式,而消息的內容則仍采用傳統消息業務的原有描述格式進行封裝。
此外,還需要說明的是,在SIP消息或MSRP消息中,傳統消息的消息控制參數并不是必須的,可以攜帶,也可以不攜帶。
上面介紹了GSM網絡、CDMA網絡和PSTN網絡中的SMS/MMS消息數據封裝或映射在SIP消息中的應用。此外,也可以將Email消息數據封裝或映射在SIP消息中,同樣可以使用消息內容指示參數或MIME媒體類型來描述Email消息格式,由于Email消息的格式和前述各類消息格式類似,這里不再詳細說明。
本技術領域人員知道,在NGN(下一代網絡)中,需要實現各種不同網絡之間的互通,因此,消息業務數據的發送方網元和接收方網元所支持的消息格式有可能不同。
針對這種情況,本發明可以在SIP域中設置消息格式轉換模塊,由該消息格式轉換模塊對發送或接收的SIP/MSRP消息中的消息格式進行轉換,以實現支持不同消息格式的發送方網元與接收方網元之間的互通。發送方網元與接收方網元可以分別位于SIP域和電路域,也可以分別位于SIP域和其它IP域(如因特網),也可以均位于SIP域,即消息格式轉換模塊可以完成SIP域與電路域之間的消息格式的轉換,也可以完成SIP域和其它IP域之間的消息格式的轉換,也可以完成SIP域內的消息格式的轉換。消息格式轉換模塊進行的消息格式轉換包括對消息控制參數的轉換和消息內容的轉換。
對消息控制參數的轉換可以是增加參數、刪除參數、變換參數等處理。其中,增加參數可以是通過消息格式轉換模塊新增目的消息格式中需要的參數;修改參數可以是含義相同或類似的參數的變換,如發送方和接收方都是指示消息類型的參數,只進行承載協議的修改,其中還包括參數取值的變換,如消息類型從消息提交轉換成消息遞交;刪除參數可以是通過消息格式轉換模塊刪除目的消息格式中不支持的參數或者是接收方網元不需要的參數。
消息內容的轉換包括顯示方式的轉換和媒體格式的轉換,可以是新增內容、刪除內容和修改內容等處理。其中,修改消息內容可以是顯示方式描述方式的變換,也可以是媒體格式的變換,即修改消息的顯示方式描述語言為接收方支持的描述方式,修改媒體格式為接收方支持的媒體格式;新增消息內容可以是消息格式轉換模塊根據用戶簽約新增媒體內容;刪除內容可以是消息格式轉換模塊刪除目的消息格式不支持的消息內容,如顯示方式的描述。
消息格式轉換模塊與IMS(IP多媒體子系統)域內的接口是SIP接口,與IMS域外的接口可以是消息中心之間的接口,此時接口可以是SMTP(簡單郵件傳輸協議)接口。消息格式轉換模塊與IMS域內的接口也可以是IMS接口網關到消息中心之間的接口,此時接口可以是MAP(映射)接口,HTTP(超文本傳輸協議)接口。
下面以修改參數為例,進一步說明本發明方法中消息控制參數格式轉換過程。
1.假設IMS終端發送消息給GSM網終端(1)消息格式轉換模塊處于終端和消息中心之間,IMS終端發送的消息控制參數消息類型指示等用頭域攜帶,消息格式轉換模塊將上述頭域重新修改為MAP消息參數或HTTP消息參數,并不改變參數值含義。
SIP和HTTP中的消息控制參數對比示例如下表1所示表1
這里消息類型、消息分類、請求遞交報告指示和讀取報告指示被直接轉換成HTTP攜帶的參數。使用MAP攜帶的情況與此類似,在此不再詳細描述。
(2)消息格式轉換模塊處于消息中心上或消息中心之間,IMS終端發送的消息控制參數用頭域攜帶,消息格式轉換模塊修改參數內容,新的參數在MAP或SMTP中攜帶。
SIP和SMTP中的消息控制參數對比示例如下表2所示表2
其中,submit的消息類型被轉換成消息中間使用的m-forward-req消息類型。使用MAP攜帶的情況與此類似,在此不再詳細描述。
2-假設GSM網終端發關SMS到IMS域終端(1)消息格式轉換模塊處于終端和消息中心之間,消息格式轉換模塊將MAP中攜帶的參數填寫到擴展的SIP頭域中,并不改變參數含義。
MAP和SIP中的消息控制參數對比示例如下表3所示表3
在此,消息類型和答復路徑指示被直接轉換成SIP頭域。
(2)消息格式轉換模塊處于消息中心上或消息中心之間,消息格式轉換模塊接收MAP中攜帶的參數,修改參數內容,新的參數內容在SIP頭域中攜帶。
MAP和SIP中的消息控制參數對比示例如下表4所示表4
其中MAP為模擬參數,這里submit的消息類型被轉換成delivery消息類型。
3.假設CDMA網終端發送MMS到IMS域終端(1)消息格式轉換模塊處于終端和消息中心之間,消息格式轉換模塊將HTTP中攜帶的參數填寫到擴展的SIP頭域中,并不改變參數含義。
HTTP和SIP中的消息控制參數對比示例如下表5所示表5
在此,消息類型和消息分類被直接轉換成SIP頭域。
(2)消息格式轉換模塊處于消息中心上或消息中心之間,消息格式轉換模塊接收SMTP中攜帶的參數,修改參數內容,新的參數內容在SIP頭域中攜帶。
SMTP和SIP中的消息控制參數對比示例如下表6所示表6
在此,submit的消息類型被轉換成delivery消息類型。
4.假設IMS終端發送消息給IMS終端IMS終端發送消息給IMS終端,發送方發送的MESSAGE消息中通過映射的方式攜帶消息業務數據,MESSAGE消息中的相關參數示例如下,MESSAGE sip:receiver@example.com,SIP/2.0X-Message-type-Indicator:message submit requestX-Read-reply:Yes......
接收方支持封裝的方式,且消息打包的格式為CDMA網絡格式,消息格式轉換模塊位于消息中心上,消息格式轉換模塊把MESSAGE消息中的控制參數和消息內容提取出來,按CDMA網絡傳輸層消息格式進行編碼,并把其中的消息指示標識Message Identifier改為delivery,之后封裝在MESSAGE消息體中發送給消息接收方。MESSAGE消息中Content type頭域設置為Content typeapplication/vnd.3gpp2.sms-tl。
下面以增加參數為例,進一步說明本發明方法中消息控制參數格式轉換過程。
假設IMS終端發送消息給PSTN網絡終端(1)消息格式轉換模塊處于終端和消息中心之間,IMS終端發送的消息中除接收方地址外沒有攜帶其他控制參數,消息格式轉換模塊增加接收方所需的必選參數。
SIP和HTTP中的消息控制參數對比示例如下表7所示表7
在此,HTTP中消息類型參數、MMS版本為新增參數的。使用MAP攜帶的情況與此類似,在此不再詳細說明。
(2)消息格式轉換模塊處于消息中心上或消息中心之間,IMS終端發送的消息中除接收方地址外沒有攜帶其他控制參數,消息格式轉換模塊增加接收方所需參數。
SIP和SMTP中的消息控制參數對比示例如下表8所示表8
在此,SMTP中消息類型參數為新增參數的。使用MAP攜帶的情況與此類似,在此不再詳細描述。
下面以刪除參數為例,進一步說明本發明方法中消息控制參數格式轉換過程。
1、假設C網終端發送MMS給IMS終端消息格式轉換模塊處于消息中心上或消息中心之間,消息格式轉換模塊接收SMTP中攜帶的參數,刪除目的消息中不需要攜帶的參數,新的參數內容在SIP頭域中攜帶。
SMTP和SIP中的消息控制參數對比示例如下表9所示表9
在此,read-reply參數不需要在notification消息中攜帶,在此消息中刪除該參數。
2、假設IMS終端發送消息給IMS終端IMS終端發送消息給IMS終端,發送方發送的MESSAGE消息中通過映射的方式攜帶消息業務數據,MESSAGE消息中的相關參數示例如下,MESSAGE sip:receiver@example.com,SIP/2.0X-Message-type-Indicator:message submit requestX-Read-reply:Yes......
接收方不支持消息類型指示X-Message-type-Indicator等擴展參數,消息格式轉換模塊位于消息中心上,消息格式轉換模塊刪除上述消息類型指示X-Message-type-Indicator等消息控制參數,把MESSAGE消息發送給接收方。
需要說明的是,上述示例中,SIP中攜帶消息控制參數的示例都是采用頭域的方式,在具體實現過程中同樣可以采用其他攜帶方式。
下面舉例說明本發明方法中消息內容格式轉換過程。
假設GSM網終端發送SMS給IMS終端,SMS中攜帶文本和電話的小圖片,顯示方式是一排文本(hello),一排16*16的圖片(telephone),再一排文本(One small telephone here)。
GSM網消息的消息內容和顯示方式示例如下SMS User Data Header:UDHL=24,IEI=11,IEIDL=22,IED1=08,<%(small picture 32bytes)>
SMS User Data:Hello!<CR><LF><CR><LF>One small telephone here消息格式轉換模塊將顯示方式轉換為IMS域支持的SMIL語言描述,將32字節圖片轉換成IMS域支持的bmp格式圖片,并增加bmp格式的媒體。示例如下--=_005A0428C1257165_=Content-Type:application/smil<smil>
<head>
<layout>
<root-layout height=″200″width=”150″/>
<region id=″Text″height=″20″width=″150″/>
<region id=″Image″height=″20″width=″20”/>
<region id=″Text″height=″20″width=″150″/>
</layout>
</head>
<body>
<par>
<text src=″hello″region=″Text″/>
<image src=″telephone.bmp″region=″Image″/>
<text src=″One small telephone here″region=″Text″/>
</par>
</body>
</smil>
--=_005A0428C1257165_=
Content-Type:image/jpeg;name=″telephone.bmp″.........
消息內容的刪除與上述過程類似,或者可以說是修改方式的簡化,這里不給出具體的實施例。
參照圖4,圖4示出了本發明系統第一實施例的原理框圖該系統包括消息業務數據處理模塊S51、S52,在每個消息業務數據處理模塊中包括消息添加模塊S511、發送模塊S512、接收模塊S513、消息提取模塊S514。其中,消息添加模塊S511用于將消息業務數據封裝到SIP或MSRP的消息體中,或映射到SIP或MSRP的消息頭域和/或消息體中;發送模塊S512與消息添加模塊S511相連,用于通過SIP或MSRP消息將封裝或映射后的消息業務數據傳送到消息接收方;接收模塊S513用于接收SIP或MSRP消息;消息提取模塊S514與接收模塊S513相連,用于從接收的SIP或MSRP消息中提取出消息業務數據。
在消息業務數據處理模塊S52中同樣包括以上模塊,在圖中未示出。
以SIP消息為例,當消息業務數據處理模塊S51需要發送消息業務數據時,首先由消息添加模塊S511將消息業務數據封裝到SIP的消息體中,或映射到SIP消息的消息頭域和/或消息體中,具體封裝或映射方式與前面本發明方法的描述中類似,在此不再贅述。然后,將封裝或映射后的SIP消息通過發送模塊S512發送到對端網絡設備S52。
當消息業務數據處理模塊S51的接收模塊S513接收到對端消息業務數據處理模塊S52發送過來的SIP消息后,交由消息提取模塊S514,從SIP消息中提取出消息業務數據。
消息業務數據處理模塊可以位于終端設備中,也可以位于網絡設備中。
消息業務數據處理模塊中的各模塊可以位于一個設備中,也可以位于不同的設備中。所述消息添加模塊與發送模塊可以位于一個設備中,接收模塊和消息提取模塊可以位于一個設備中。
消息業務數據處理模塊所處的設備可以通過SIP網絡相連,也可以通過SIP網絡與電路域網絡相連,也可以通過SIP網絡與其它IP網絡(如因特網)相連。
由于在NGN中,需要實現各種不同網絡之間的互通,因此,消息業務數據的發送方網元和接收方網元所支持的消息格式有可能不同。
針對這種情況,本發明系統第二實施例的原理框圖如圖5所示消息業務數據處理模塊S51位于SIP域,通信設備S61位于電路域或SIP域,所述通信設備為原有電路域中處理消息業務數據的實體。為了實現對端通信設備對消息業務數據的識別,在該實施例中,還包括了消息格式轉換模塊S63,通過SIP接口或MSRP接口與SIP域網絡中的消息業務數據處理模塊S61相連。消息格式轉換模塊S63通過MAP、HTTP、SMTP接口與通信設備S62相連。
消息格式轉換模塊S53用于在發送方與接收方支持的消息格式不同時,對需要傳送的SIP/MSRP消息中的消息格式進行轉換。
發送方與接收方均在SIP域中,且支持的消息格式不同,消息格式轉換模塊S53同樣可以完成消息格式轉換,原理框圖如圖6所示。消息業務數據處理模塊S51和消息業務數據處理模塊S52分別為發送方和接收方的消息業務數據處理模塊。消息格式轉換模塊S53通過SIP接口或MSRP接口與消息業務數據處理模塊S52相連。
消息格式轉換模塊S53可作為一個獨立的實體置于SIP域的任何位置,也可以將其集成在SIP域內的網元上。
SIP域中的消息格式轉換模塊與消息業務數據的組成對應,也就是說,在網絡進行規劃時,針對網絡中的各網元支持的消息格式,進行消息格式轉換模塊的配置,使其完成所需的消息格式的轉換。
消息格式轉換模塊對不同消息格式的轉換與前面對本發明方法的描述類似,在此不再贅述。
為了進一步方便消息格式轉換模塊在不同通信設備間的使用,還可以在消息業務數據處理模塊S51和消息格式轉換模塊S53之間設置消息格式判斷模塊S54,如圖7所示。消息格式判斷模塊S54用于確定源消息格式和目的消息格式。
以SIP消息為例,消息業務數據處理模塊S51通過SIP消息攜帶消息業務數據,并將其發送到消息格式判斷模塊S54,消息格式判斷模塊S54根據SIP消息的地址,獲取接收方的屬性信息,確定目的消息格式,將源消息格式與目的消息格式通知消息格式轉換模塊S53,消息格式轉換模塊S53根據該通知將源消息格式轉換成目的消息格式,并將轉換后的消息發送給電路域的通信設備S61。
與圖6類似,消息格式轉換模塊S53可以把轉換后的消息發送給SIP域的其他消息業務數據處理模塊,以完成SIP域內的消息格式轉換。這里不再具體給出原理圖。
消息格式判斷模塊S54可以通過DNS(域名服務器)或ENUM(E.164號碼)等網絡中的公共數據庫獲取接收方的屬性信息,或者根據消息業務應用服務器的本地配置信息,判斷消息接收方所屬的網絡是IMS域還是電路域。如果是IMS域,可以根據終端能力確定目的消息格式,如支持封裝格式還是映射格式。如果是電路域,可以根據消息業務信息接收方標識判斷網絡接口類型,是GSM網、CDMA網絡還是PSTN網絡,并根據消息內容是文本還是多媒體判斷是SMS網絡還是MMS網絡。
因此,也可以根據實際應用需要,將消息格式判斷模塊分成幾個不同的子模塊。比如,將其分為網絡類型判斷子模塊、網絡接口類型判斷子模塊、消息業務類型判斷子模塊、終端能力判斷子模塊。由網絡類型判斷子模塊通過DNS(域名服務器)或ENUM等網絡中的公共數據庫獲取接收方的屬性信息,或者根據消息業務應用服務器的本地配置信息,判斷消息接收方所屬的網絡是IMS域還是電路域。如果是IMS域,由終端能力判斷子模塊根據終端能力確定消息接收方支持的消息格式,如是否支持傳統消息業務以及支持封裝格式還是映射格式、支持文本格式還是多媒體格式以及支持哪種多媒體格式等,所述消息接收方的終端能力,可以由終端能力判斷子模塊在消息接收方注冊時獲得,注冊消息中攜帶終端能力;也可以是由終端能力判斷子模塊在消息業務發往消息接收方后,消息接收方返回的響應消息中獲得,即消息業務總是先發往消息接收方,消息接收方如果不支持消息業務的格式,則在返回的響應消息中攜帶自己的終端能力。如果是電路域,由網絡接口類型判斷子模塊根據消息接收方標識判斷網絡接口類型是GSM網、CDMA網絡還是PSTN網絡。此外,還可以由消息業務類型判斷子模塊根據消息內容判斷消息發送方發送的消息業務數據格式,如可以根據前述的消息內容的MIME媒體類型、和/或消息內容指示參數等判斷。
消息格式處理模塊與IMS域外的接口可以是消息中心之間的接口,此時接口可以是SMTP接口。也可以是IMS接口網關到消息中心之間的接口,此時接口可以是MAP接口,HTTP接口。
假設網絡類型判斷子模塊及網絡接口判斷子模塊位于消息業務應用服務器上,消息業務類型判斷子模塊在IP-MESSAGE-GW(IP消息網關)上,消息格式處理模塊在IP-MESSAGE-GW上,其消息交互流程如圖8所示(1)消息業務請求消息發送方向網絡中的呼叫會話控制單元發送請求消息,例如message,并且在請求消息中攜帶文本格式的消息業務數據。消息中目的地標識為消息業務應用服務器的標識,例如,message的Request-URI為as-message@example.com。消息中通過映射的方式攜帶消息業務數據,示例如下MESSAGE sip:as-message@example.com,SIP/2.0X-Message-type-Indicator:message submit requestX-Read-reply:Yes
......
(2)呼叫會話控制單元根據消息業務信息中目的地標識,將消息業務信息通過ifc觸發到消息業務應用服務器;(3)消息業務應用服務器上的消息格式判斷模塊根據目的地標識判斷接收方屬于電路域中的GSM網絡,將目的格式類型通過擴展的Message-format頭域添加在MESSAGE消息中發送給IP-MESSAGE-GW上。示例如下MESSAGE sip:receiver@example.com,SIP/2.0Message-format:version=gsmX-Message-type-Indicator:message submit requestX-Read-reply:Yes(4)IP-MESSAGE-GW判斷消息中的消息格式頭域,并根據消息內容是文本,把消息格式轉換成GSM網絡的SMS消息,并通過MAP協議發送給消息接收方。
網絡接口類型判斷子模塊也可以位于IP-MESSAGE-GW(IP消息網關)上,這種情況下,消息業務應用服務器根據目的地標識判斷接收方屬于電路域,則把收到的MESSAGE消息直接發送給IP-MESSAGE-GW,由IP-MESSAGE-GW判斷具體的電路域網絡類型,確定目的消息格式,并進行消息格式轉換。此過程與上述流程類似,消息交互流程省略。
消息格式判斷模塊和消息格式轉換模塊可以位于同一個網元上,也可以位于不同的網元上。
假設消息格式判斷模塊和消息格式轉換模塊位于消息業務應用服務器上,其消息交互流程如圖9所示(1)消息業務請求消息發送方向網絡中的呼叫會話控制單元發送請求消息,例如message,并且在請求消息中攜帶多媒體格式的消息業務數據。消息中目的地標識為消息業務應用服務器的標識,例如,message的Request-URI為as-message@example.com。消息中通過封裝的方式攜帶消息業務數據,如Content type:application/vnd.3gpp2.sms-tl;(2)呼叫會話控制單元根據消息業務信息中目的地標識,將消息業務信息通過ifc觸發到消息業務應用服務器;(3)消息業務應用服務器上的消息格式判斷模塊根據目的地標識判斷接收方屬于IMS域,并根據接收方的終端能力得知接收方只支持映射方式的消息格式,消息格式判斷模塊通知消息格式轉換模塊將消息轉換成映射方式的消息格式,之后消息格式轉換模塊將封裝方式的消息格式轉換成映射方式的消息格式。示例如下MESSAGE sip:receiver@example.com,SIP/2.0X-Message-type-Indicator:message submit requestX-Read-reply:Yes......
(4)消息業務應用服務器將轉換后的消息發送給消息接收方。
可見,通過消息格式判斷模塊和消息格式轉換模塊,不僅可實現不同域內消息格式的轉換,還可以實現封裝方式與映射方式消息格式的轉換,從而實現對各種消息業務數據的傳輸,并使接收方能夠正確獲得消息業務數據。
總的來說,消息格式轉換模塊可以完成封裝有傳統消息業務數據的SIP消息或MSRP消息和傳統消息業務消息之間的轉換,將獲得的傳統消息業務數據封裝在SIP消息或MSRP消息中;或者,從SIP消息或MSRP消息中提取出傳統消息業務數據,進一步的,如果該傳統消息業務數據的格式和消息接收方支持的格式不一致,如提出的傳統消息業務數據的格式為GSM,而消息接收方的為CDMA,則消息格式轉換模塊還可以在這兩種傳統消息業務數據格式之間作轉換。
由于在NGN中,需要實現各種不同網絡之間的互通,包括電路域與SIP域的互通,不同能力的SIP域之間的互通,如不支持封裝映射傳統消息業務數據的SIP消息與封裝映射傳統消息業務數據的SIP消息之間的互通。
針對這種情況,本發明系統第五實施例的原理框圖如圖10所示其中,消息數據添加模塊S101和消息數據提取模塊S102位于SIP域,消息格式轉換模塊S103通過SIP接口或MSRP接口與消息數據添加模塊S101、消息數據提取模塊S102相連。消息數據添加模塊S101用于將消息數據信息添加到消息(第一消息)中并發送給消息接收方網元,消息數據提取模塊S102用于接收消息發送方網元的消息(第二消息),并提取其中攜帶的消息數據信息。消息格式轉換模塊103用于在所述第一消息與第二消息支持的消息格式不同時,對消息格式進行轉換。所述消息數據信息可以是封裝或映射在SIP或MSRP的消息中的傳統消息業務數據,也可以是普通SIP或MSRP消息的消息體中攜帶的消息信息,如支持封裝映射傳統消息業務數據的SIP或MSRP消息中攜帶的消息內容。
以SIP消息為例,消息數據添加模塊S101通過SIP消息攜帶消息業務數據,并將其發送到消息格式轉換模塊S103,消息格式轉換模塊S103將源消息格式轉換成目的消息格式,并將轉換后的消息發送給消息數據提取模塊S102。
消息數據添加模塊與消息格式轉換模塊之間的接口可以是SIP接口或MSRP接口,也可以是傳統電路域的MAP接口、SMTP接口或者是HTTP接口。消息數據提取模塊與消息格式轉換模塊之間的接口可以是SIP接口或MSRP接口,也可以是傳統電路域的MAP接口、SMTP接口或者是HTTP接口。接口為傳統電路域接口(MAP接口、SMTP接口或者是HTTP接口)時,消息的添加、提取及格式轉換過程與上述過程類似。
消息格式轉換模塊還可以完成映射有傳統消息業務的SIP消息或MSRP消息和傳統消息業務消息之間的轉換,解析獲得的傳統消息業務數據,將消息控制參數映射成SIP消息或MSRP消息的描述格式,而消息的內容則可以映射、或封裝、或保持原描述格式,攜帶于SIP消息或MSRP消息中;或者,從SIP消息或MSRP消息中解析獲得的消息控制參數,映射為傳統消息業務的描述格式,而消息內容則可以映射、或保持原描述格式,生成傳統消息數據。其中,由于傳統消息的內容也支持采用MIME媒體類型格式,如MMS、Email,因此在轉換時,可以保持消息內容的原描述格式。
消息格式轉換模塊還可以完成封裝或映射有傳統消息業務數據的SIP消息或MSRP消息和普通不支持封裝或映射傳統消息業務數據的SIP消息或MSRP消息之間的轉換,消息的內容可以被相互映射、或保持原描述格式消息格式轉換模塊還可以完成封裝傳統消息業務數據的SIP消息或MSRP消息和映射傳統消息業務數據的SIP消息或MSRP消息之間的轉換。
上述處理不同格式轉換的消息格式轉換模塊可以位于不同的網元中,也可以位于同一個網元中。
此外,當消息格式轉換模塊執行SIP消息或MSRP消息和傳統消息之間的轉換時,還完成消息接收方標識的格式的轉換,如消息發送方填寫的消息接收方標識的格式的SIP URI或Tel URI格式,例如可以是SIP URI形式sip:mike@example.com,消息格式轉換模塊需要將其轉換成E.164格式或其它格式的URI,例如可以是Email的地址形式mike@example.com,反之亦然,轉換后的消息接收方標識的格式符合消息接收方所屬網絡的格式要求,可被消息接收方所屬網絡所識別。
消息格式判斷模塊為消息格式轉換模塊的轉換執行提供觸發依據,消息格式判斷模塊需要判斷收到的來自消息發送方的消息業務的消息格式,可以依據前述的消息內容指示參數、消息內容的MIME媒體類型來判斷;消息格式判斷模塊還需要判斷消息接收方支持的消息格式,可以依據消息接收方所屬的網絡、消息接收方的終端能力等來判斷。
如果來自消息發送方的消息業務的消息格式和消息接收方支持的消息格式不匹配,則消息格式判斷模塊可以觸發消息格式轉換模塊的執行轉換功能。
上述處理不同格式判斷的消息格式判斷模塊可以位于不同的網元中,也可以位于同一個網元中。
雖然通過實施例描繪了本發明,本領域普通技術人員知道,本發明有許多變形和變化而不脫離本發明的精神,希望所附的權利要求包括這些變形和變化而不脫離本發明的精神。
權利要求
1.一種傳送消息業務數據的方法,其特征在于,所述方法包括在消息發送方將消息業務數據添加到會話初始協議SIP或消息會話中繼協議MSRP的消息中;通過SIP消息或MSRP消息將消息業務數據傳送到消息接收方。
2.根據權利要求1所述的方法,其特征在于,所述將消息業務添加到SIP或MSRP消息中的步驟具體為在消息發送方將消息業務數據封裝在會話初始協議SIP或消息會話中繼協議MSRP的消息體中。
3.根據權利要求2所述的方法,其特征在于,所述消息業務數據具體為GSM網絡的消息業務格式,或者是CDMA網絡的消息業務格式,或者是PSTN網絡的消息業務格式、或者是Email的消息業務格式。
4.根據權利要求3所述的方法,其特征在于,當需要傳送短消息業務SMS數據時,將SMS的業務應用層數據、和/或業務傳輸層數據、和/或業務承載層數據封裝在SIP或MSRP的消息體中。
5.根據權利要求3所述的方法,其特征在于,當需要傳送多媒體消息業務數據時,將簡單郵件傳輸協議SMTP消息或者超文本傳輸協議HTTP消息封裝在SIP或MSRP的消息體中;所述SMTP消息包括SMTP命令和消息內容,或僅包括消息內容;所述HTTP消息包括HTTP方法、頭域和消息體。
6.根據權利要求3所述的方法,其特征在于,當需要傳送Email數據時,將簡單郵件傳輸協議SMTP消息封裝在SIP或MSRP的消息體中;所述SMTP消息包括SMTP命令和消息內容,或僅包括消息內容。
7.根據權利要求2至6任一項所述的方法,其特征在于,所述方法進一步包括將所述業務消息數據封裝在所述消息體中的多用途因特網郵件擴充協議MIME體中。
8.根據權利要求7所述的方法,其特征在于,通過SIP或MSRP消息中的MIME媒體類型、或MIME體字段、或頭域參數指示所述業務消息數據的格式。
9.根據權利要求8所述的方法,其特征在于,所述MIME媒體類型、MIME體字段、頭域參數是SIP協議或MSRP協議中已有MIME媒體類型、MIME體字段、頭域參數的擴展應用;或者是擴展的MIME媒體類型、MIME體字段、頭域參數。
10.根據權利要求1所述的方法,其特征在于,所述將消息業務添加到SIP或MSRP消息中的步驟具體為在消息發送方將消息業務數據映射到會話初始協議SIP或消息會話中繼協議MSRP的消息頭域和/或消息體中。
11.根據權利要求10所述的方法,其特征在于,所述將消息業務數據映射到會話初始協議SIP或消息會話中繼協議MSRP的消息頭域和/或消息體中的步驟包括將消息業務的控制參數通過SIP或MSRP的消息頭域、和/或MIME體攜帶;將消息業務的內容通過SIP或MSRP的MIME體攜帶。
12.根據權利要求11所述的方法,其特征在于,所述消息業務的控制參數具體為消息類型指示、和/或消息分類、和/或遞交報告指示、和/或讀取報告指示、和/或標題、和/或答復路徑。
13.根據權利要求11所述的方法,其特征在于,所述消息頭域具體為SIP或MSRP協議中已有的頭域的擴展使用,或者為SIP或MSRP協議中擴展的頭域;所述MIME體具體為SIP或MSRP協議中已有的MIME媒體類型的擴展使用,或者擴展的MIME媒體類型。
14.根據權利要求1所述的方法,其特征在于,所述方法進一步包括當消息業務數據的發送方與接收方支持的消息格式不同時,對消息格式進行轉換。
15.根據權利要求14所述的方法,其特征在于,所述對消息格式進行轉換的步驟包括對消息控制參數和/或對消息內容進行轉換。
16.根據權利要求15所述的方法,其特征在于,所述對消息控制參數進行轉換的步驟具體為修改參數,或者增加參數,或者刪除參數。
17.根據權利要求16所述的方法,其特征在于,所述修改參數具體為參數的變換,或者是參數取值的變換。
18.根據權利要求15所述的方法,其特征在于,所述對消息內容進行轉換的步驟具體為修改消息內容,或者增加消息內容,或者刪除消息內容。
19.根據權利要求18所述的方法,其特征在于,所述消息內容具體為消息顯示方式和/或消息媒體內容。
20.一種傳送消息業務數據的系統,其特征在于,包括消息業務數據處理模塊,所述消息業務數據處理模塊包括消息添加模塊,用于將消息業務數據封裝或映射到會話初始協議SIP或消息會話中繼協議MSRP的消息頭域和/或消息體中;發送模塊,與所述消息添加模塊相連,用于通過SIP或MSRP消息攜帶消息業務數據傳送到消息接收方;接收模塊,用于接收SIP或MSRP消息;消息提取模塊,與所述接收模塊相連,用于從所述接收的SIP或MSRP消息中提取出消息業務數據。
21.根據權利要求20所述的系統,其特征在于,所述消息業務數據處理模塊或者位于終端設備中,或者位于網絡設備中。
22.根據權利要求20所述的系統,其特征在于,所述消息業務數據處理模塊中的各模塊或者位于同一個設備中,或者位于不同的設備中。
23.根據權利要求20所述的系統,其特征在于,所述消息業務數據處理模塊所處的設備通過SIP域網絡相連,或通過SIP域網絡與電路域網絡或其它IP網絡相連。
24.根據權利要求23所述的系統,其特征在于,所述系統進一步包括消息格式轉換模塊,用于在發送方與接收方支持的消息格式不同時,對消息格式進行轉換。
25.根據權利要求24所述的系統,其特征在于,所述系統進一步包括消息格式判斷模塊,用于確定源消息格式和目的消息格式。
26.根據權利要求25所述的系統,其特征在于,所述消息格式判斷模塊根據消息接收方所屬的網絡和/或消息接收方的終端能力來判斷目的消息格式。
27.一種傳送消息業務數據的系統,其特征在于,包括消息數據添加模塊,用于將消息數據信息添加到第一消息中并發送給消息接收方網元,所述第一消息是SIP域攜帶消息數據信息的消息,或者是傳統電路域攜帶消息數據信息的消息;所述消息數據信息是傳統消息業務數據,或者是SIP或MSRP消息的消息體中攜帶的消息信息;消息數據提取模塊,用于接收消息發送方網元的第二消息,并提取其中攜帶的消息數據信息,所述第二消息是SIP域攜帶消息數據信息的消息,或者是電路域攜帶消息數據信息的消息;消息格式轉換模塊,用于在所述第一消息與第二消息支持的消息格式不同時,對消息格式進行轉換。
28.根據權利要求27所述的系統,其特征在于,所述SIP域攜帶消息數據信息的消息是會話初始協議SIP消息、或消息會話中繼協議MSRP消息,所述傳統電路域攜帶消息數據信息的消息是映射MAP消息、或簡單郵件傳輸協議SMTP消息、或超文本傳輸協議HTTP消息。
29.根據權利要求27所述的系統,其特征在于,當所述第一消息為傳統電路域的消息業務消息,所述第二消息為封裝為傳統消息業務數據的SIP消息或MSRP消息時,消息格式轉換模塊將第一消息中攜帶的消息數據信息全部或部分封裝在SIP消息或MSRP消息中;當所述第一消息為封裝傳統消息業務數據的SIP消息或MSRP消息,所述第二消息為傳統消息業務消息時,消息格式轉換模塊提取消息數據信息,并將其轉換為接收方支持的傳統電路域消息格式。
30.根據權利要求27所述的系統,其特征在于,當所述第一消息為傳統電路域的消息業務消息,所述第二消息為映射傳統消息業務數據的SIP消息或MSRP消息時,所述消息格式轉換模塊解析收到的第一消息,將其中的消息控制參數映射為第二消息的格式,而將消息的內容映射、或封裝、或保持原格式,攜帶于第二消息中;當所述第一消息為映射傳統消息業務數據的SIP消息或MSRP消息,所述第二消息為傳統消息業務消息時,所述消息格式轉換模塊從收到的第二消息中解析獲得的消息控制參數,并將其映射為傳統消息業務數據格式,而將消息的內容映射、或保持原描述格式,生成第二消息。
31.根據權利要求27所述的系統,其特征在于,當所述第一消息或第二消息為封裝或映射有傳統消息業務數據的SIP消息或MSRP消息,所述第二消息或第一消息為不支持封裝或映射傳統消息業務數據的SIP消息或MSRP消息時,所述消息格式轉換模塊將消息的內容相互映射、或保持原描述格式;當所述第一消息或第二消息為封裝或映射有傳統消息業務數據的SIP消息或MSRP消息時,所述消息格式轉換模塊完成封裝傳統消息業務數據的SIP消息或MSRP消息到映射傳統消息業務數據的SIP消息或MSRP消息的轉換,或者映射傳統消息業務數據的SIP消息或MSRP消息的轉換到封裝傳統消息業務數據的SIP消息或MSRP消息的轉換。
32.根據權利要求27所述的系統,其特征在于,所述消息格式轉換模塊將第一消息中的消息接收方標識的格式轉換為所述第二消息中的消息接收方標識的格式。
33.根據權利要求27所述的系統,其特征在于,所述系統進一步包括消息格式判斷模塊,用于判斷所述第一消息和所述第二消息的消息格式。
34.根據權利要求33所述的系統,其特征在于,所述消息格式判斷模塊根據所述第一消息中攜帶的消息格式指示信息來判斷第一消息的消息業務數據格式。
35.根據權利要求34所述的系統,其特征在于,所述消息格式指示信息至少是下述一種信息消息業務數據媒體類型、消息業務數據指示參數。
36.根據權利要求33所述的系統,其特征在于,所述消息格式判斷模塊根據消息接收方所屬的網絡、和/或消息接收方的終端能力判斷消息接收方支持的消息業務數據格式。
37.根據權利要求36所述的系統,其特征在于,消息格式判斷模塊從消息接收方注冊消息中獲取消息接收方的終端能力;或者從消息接收方收到所述第二消息后返回的響應消息中獲取消息接收方的終端能力。
38.根據權利要求33所述的系統,其特征在于,所述消息格式判斷模塊至少包括下面一個子模塊網絡類型判斷子模塊,用于通過所述第一消息中的消息業務信息,判斷所述消息業務信息接收方所屬網絡類型;網絡接口類型判斷子模塊,用于通過所述第一消息中的消息業務信息判斷網絡接口類型;終端能力判斷子模塊,用于通過消息接收方所屬的網絡、和/或消息接收方的終端能力來判斷消息接收方支持的消息業務數據格式;消息業務類型判斷子模塊,用于通過所述第一消息判斷其攜帶的消息業務數據格式。
全文摘要
本發明公開了一種傳送消息業務數據的方法,在消息發送方將消息業務數據添加到會話初始協議SIP或消息會話中繼協議MSRP的消息;通過SIP或MSRP消息將消息業務數據傳送到消息接收方。本發明還公開了一種傳送消息業務數據的系統,包括消息業務數據處理模塊,所述消息業務數據處理模塊包括消息添加模塊,發送模塊,接收模塊,消息提取模塊。利用本發明,可以實現對多種不同類型消息業務數據的傳送。
文檔編號H04L29/06GK101087269SQ20061011148
公開日2007年12月12日 申請日期2006年8月22日 優先權日2006年6月9日
發明者賴昊, 施有鑄, 程華 申請人:華為技術有限公司