新四季網

簡訊處理方法以及裝置的製作方法

2023-08-08 07:34:46

專利名稱:簡訊處理方法以及裝置的製作方法
技術領域:
本發明涉及一種通信方法及裝置,特別是涉及一種簡訊處理方法以及裝置。
背景技術:
全球信息化為移動通信中的簡訊(SM,Short Message)通信提供極大的發展前景。據中國信息產業部2006年5月21日的最新統計顯示,2006年1至4月,手機簡訊量達到1322.5億條,比上年同期增長46.5%。
簡訊通信數量的飛速增長以及其龐大的增長基數,一方面說明簡訊通信的技術優勢明顯,另一方面也表明簡訊市場很大。由於簡訊通信已經成為移動用戶常用的通信方式,用戶為此需要負擔一定的費用。隨著簡訊使用量的激增,該類費用增長迅速。其中,長簡訊成為加重用戶費用負擔的原因之一。所述長簡訊是指其容量超出一條簡訊的最大信息容量、必須採用至少兩條簡訊發送的簡訊。相對於長簡訊來說,一次可發送全部內容的簡訊稱為非長簡訊。
現有技術簡訊一般採用PDU(Protocol Data Unit,協議數據單元)模式的7位、8位或UCS2編碼方式進行編碼。這裡,在一條簡訊內僅能採用一種編碼方式。其中,7位編碼用於發送普通的ASCII字符,它將一串7位的字符(最高位為0)編碼成8位的數據,每8個字符可「壓縮」成7個;8位編碼通常用於發送數據消息,比如圖片和鈴聲等;而UCS2編碼用於發送Unicode字符。
按照現有簡訊協議,PDU串的用戶信息(TP-UD,TP-User-Data)段最大容量是140位元組,所以在這三種編碼方式下,可以發送的一條非長簡訊的最大字符數分別是160、140和70。不管用戶發送什麼樣的內容、字符類型為何的短消息,如果超過最大字符數量,長簡訊內容將會被分割成多條去發送。這裡,將一個英文字母、一個漢字和一個數據字節都視為一個字符。
在這三種編碼中,UCS2編碼方式所包含的字符範圍最大,可以將所有的字符編碼;7位編碼方式所包含的字符範圍只有不到140個字符,7位字符集包括標準7位字符集和擴展7位字符集。擴展7位字符需要在其前面加一個轉義字符才能夠參與編碼。轉義字符是標準7位字符,只在有擴展7位字符時才會使用;8位編碼方式的範圍只有256個字符。
在PDU模式中,按照現有簡訊協議,一條長簡訊被分割以後,單條子簡訊所能夠發送的最大字符數量分別是1)在7位編碼方式下153個字符;2)在8位編碼方式下134個字符;3)UCS2編碼方式下67個字符。
與前面提到的非長簡訊三種編碼下最大字符數量160、140和70相比,長簡訊被分割後的子簡訊在每種編碼方式下的最大字符數量都少了幾個,這是因為這幾個字符要被用於存放長簡訊的一些標識信息。
在7位、8位和UCS2編碼這三種編碼下,每一個字符在存儲器中所佔用的空間分別為1)7位的編碼方式下每七位構成一個字符;2)8位編碼方式下每八位構成一個字符;3)UCS2編碼方式下每十六位構成一個字符。
其中,擴展7位字符編碼時有點特殊,一個擴展7位字符在7位編碼方式下需要在擴展字符前面加上一個轉義字符,共2個7位字符參與編碼,在存儲器中所佔長度需要14位;在8位編碼方式下,如果該擴展7位字符在8位編碼範圍內,編碼時只需要該字符參與編碼,在存儲器中所佔長度為8位;如果該字符不在8位編碼範圍內,則該字符只能用UCS2編碼,需要佔用的存儲長度為16位。因此,在本文中現有技術簡訊的編碼優先級別從低到高分別是7位、8位和UCS2編碼。最高等級編碼是UCS2編碼,除了在上述字符不在8位編碼範圍內的情況,8位編碼等級高於7位編碼等級。
所以在這三種編碼下,一條長簡訊所包含的字符數在存儲器中所佔長度為分別為1)7位編碼方式下153×7=1071位;
2)8位編碼方式下134×8=1072位;3)UCS2編碼方式下67×16=1072位。
因此,長簡訊在存儲器的最大長度為1072位。而在這三種編碼方式下,一條非長簡訊在存儲器中所佔長度最大值都是1120(160×7、或140×8、或70×16)位。如果一條簡訊所包含信息內容的位數大於1120位,則可以判斷該簡訊為長簡訊。
根據現有簡訊協議,一條非長簡訊中僅採用一種編碼方式,當一條非長簡訊中包含超過一種編碼所能處理的字符時,比如7位編碼和UCS2編碼共存在一條簡訊中時,採用包含字符範圍最大的編碼方式-UCS2進行編碼,以使得對所有簡訊內容編碼。此時,16位長度的UCS2編碼所造成的存儲浪費不能避免。也即對本來可以用7/8位編碼的字符統一為16位Unicode編碼字符,在最極端情況下會增加一倍的存儲容量,增加了簡訊分割條數。加重用戶費用負擔的同時還加重通信網絡的負擔。
例如簡訊的內容有160個字符,前150個為7位字符,後10個為Unicode字符,如果簡單地統一採用UCS2編碼方式,每個字符分配16位存儲容量,則存儲容量是160×16=2560。對於長簡訊來說,每個子簡訊的最大容量是1072,所以這160個字符必須分成3條子簡訊(67+67+26)發送。
顯然,在這樣的多種字符混雜的情況下,長簡訊簡單地統一採用UCS2編碼方式可能大大地降低單條簡訊(分割後)空間利用率。

發明內容
本發明要解決的技術問題是提供一種減少長簡訊分割條數的簡訊處理方法。
本發明要解決的技術問題是還提供一種減少長簡訊分割條數的簡訊處理裝置。
為解決上述第一技術問題,本發明的目的是通過以下技術方案實現的提供一種簡訊處理方法,在簡訊發送前,包括步驟分析簡訊內字符的類型;在一次簡訊可以發送的最大長度內,選擇能夠將該長度內所有類型字符進行編碼的一種等級較最高等級編碼方式低的編碼方式;採用所述選擇的編碼方式對該長度內字符進行編碼,以組建一條簡訊。
所述分析簡訊內字符的類型包括步驟從需發送的簡訊中逐個讀取字符;判斷當前字符所屬類型和編碼方式;所述判斷編碼方式的步驟包括比較所述當前字符編碼方式與剛好能對已讀全部字符編碼的編碼方式,在當前字符編碼方式等級較高情況下,保存當前字符編碼方式;返回讀取字符的步驟,直至已讀取字符的存儲長度達到所述最大長度;選擇一種等級大於或等於保存的編碼方式、並且低於最高等級編碼的編碼方式。
定所述最大長度的步驟為判斷簡訊類型,是長簡訊則所述最大長度為小於或等於1072位,否則所述最大長度為1120位。
在讀取一個字符後記錄本次所讀取的字符偏移量;所述判斷簡訊類型的步驟包括依據保存的編碼方式統計當前需要參與編碼的字符數量;依據保存的編碼方式與當前所統計的參與編碼的字符總數,計算所述字符總共需要佔用的存儲長度;判斷佔用的存儲長度是否小於或等於1120位,是並且已經讀完全部字符則判斷簡訊類型為非長簡訊,否則判斷簡訊類型為長簡訊。
所述判斷佔用的存儲長度小於或等於1072位、並且還剩未讀取字符時進一步包括單獨保存所讀取的字符偏移量與編碼方式的步驟,所述編碼方式用於在確定簡訊類型為非長簡訊時對字符進行編碼。
在所述佔據的存儲長度大於1072位、並且判斷簡訊類型為長簡訊時進一步包括,返回記錄本次所讀取的字符偏移量與編碼方式的步驟,所述字符偏移量作為長簡訊截取點,所述編碼方式用於對字符進行編碼。
在分析簡訊內字符的類型之前進一步包括,初始化簡訊類型為非長簡訊的步驟;在判斷簡訊類型為長簡訊時繼續進行讀取字符;在再次讀取到長簡訊一次發送的最大長度時截取該長度內的字符。
在判斷該字符所屬類型為只能用UCS2編碼的類型時,判斷整個簡訊的長度,如果整個簡訊長度大於70個字符,則判斷該簡訊的簡訊類型是長簡訊,此時判斷字符偏移量是否大於67個字符,是則將此字符前面的67個字符截取並編碼。
所述編碼方式是能夠將該長度內所有類型字符進行編碼的最低等級編碼方式。
為解決上述第二技術問題,本發明的目的是通過以下技術方案實現的提供一種簡訊處理裝置,包括字符類型分析模塊、編碼方式判斷模塊以及編碼模塊,所述字符類型分析模塊用於在簡訊發送前分析簡訊內字符的類型,所述編碼方式判斷模塊用於在一次簡訊可以發送的最大長度內,選擇能夠將該長度內所有類型字符進行編碼的一種等級較最高等級編碼方式低的編碼方式,所述編碼模塊用於採用所述選擇的編碼方式對該長度內字符進行編碼,以組建一條簡訊。
所述字符類型分析模塊包括字符讀取模塊和字符類型與編碼判斷模塊,所述編碼方式判斷模塊包括編碼方式比較模塊和編碼方式保存模塊,所述字符讀取模塊用於從需發送的簡訊中逐個讀取字符,所述字符類型與編碼判斷模塊用於判斷該字符所屬類型和當前編碼方式,所述編碼方式比較模塊用於比較所述當前字符編碼方式與剛好能對已讀全部字符編碼的編碼方式,在當前字符編碼方式等級較高情況下,保存當前字符編碼方式,並由字符讀取模塊繼續讀取字符,直至已讀取字符的存儲長度達到所述最大長度。
進一步包括簡訊類型判斷模塊,其包括字符數量統計模塊、存儲長度計算模塊以及存儲長度判斷模塊,所述字符數量統計模塊用於依據保存的編碼方式統計當前需要參與編碼的字符數量,所述存儲長度計算模塊用於依據所述保存的編碼方式與當前所統計的參與編碼的字符總數,計算該等字符總共需要佔用的存儲長度,所述存儲長度判斷模塊用於判斷佔用的存儲長度是否小於或等於1120位,是並且已經讀完全部字符則判斷簡訊類型為非長簡訊,否則判斷簡訊類型為長簡訊。
所述簡訊類型判斷模塊進一步包括字符偏移量與編碼方式單獨保存模塊304,其用於在判斷佔用的存儲長度小於或等於1072位、並且還剩未讀取字符時單獨保存所讀取的字符偏移量與編碼方式,所述編碼方式用於在確定簡訊類型為非長簡訊時對字符進行編碼。
進一步包括長簡訊截取模塊,在所述佔據的存儲長度大於1072位、並且判斷簡訊類型為長簡訊時,所述長簡訊截取模塊用於根據記錄的本次所讀取的字符偏移量與編碼方式、分別設定所述長簡訊截取點對字符進行編碼。
在字符類型分析模塊判斷該字符所屬類型為UCS2編碼時,由字符偏移量記錄模塊記錄整個簡訊的長度,在整個簡訊長度大於70字符情況下,所述簡訊類型判斷模塊判斷得到該簡訊的簡訊類型是長簡訊,並在字符偏移量記錄模塊記錄的字符偏移量大於67字符情況下,由長簡訊截取模塊將此字符前面的67個字符截取,並由編碼模塊進行編碼。
以上第一技術方案可以看出,由於本發明在多種類型字符混合的長簡訊需要發送前,對每條分割的簡訊採用較優編碼方式進行編碼,避免統一用一種編碼方式對整條簡訊編碼。也就是動態地分析每一個字符所屬的字符類型來決定一條能夠獨立發送的簡訊所應該選取的較優編碼方式、動態統計在較優編碼方式下參與編碼的字符數量最大值,取可以實現獨立發送簡訊的字符數量最多的一種編碼方式來組成一條可獨立發送的簡訊,使一條獨立發送的簡訊能夠發送最大數量的信息內容。對所述長簡訊重複使用上述方法,則對整個簡訊內容而言可能就會採用多種編碼方式與分割方式,避免簡單地對整條簡訊使用單一的編碼方式而導致長簡訊分割後發送次數多、發送的簡訊空間利用率低、用戶費用增加的情況,從而減少長簡訊的分割條數、提高空間利用率、減輕用戶費用負擔以及降低系統負擔。
以上第二技術方案可以看出,由於本發明在多種類型字符混合的長簡訊需要發送前,採用編碼方式判斷模塊和簡訊類型判斷模塊判斷出能對單條分割的子簡訊字符全部編碼的較優編碼方式,避免統一用一種編碼方式對整條簡訊編碼。也就是採用字符類型分析模塊動態地分析每一個字符所屬的字符類型,並配合編碼方式判斷模塊來決定一條能夠獨立發送的簡訊所應該選取的較優編碼方式、動態統計在較優編碼方式下參與編碼的字符數量最大值,取可以實現獨立發送簡訊的字符數量最多的一種編碼方式來組成一條可獨立發送的簡訊,使一條獨立發送的簡訊能夠發送最大數量的信息內容。避免簡單地對整條簡訊使用單一的編碼方式而導致長簡訊分割後發送次數多、發送的簡訊空間利用率低、用戶費用增加的情況,從而減少長簡訊的分割條數、提高空間利用率、降低用戶費用負擔以及降低系統負擔。


圖1是本發明簡訊處理方法第一實施方式的流程圖;圖2是判斷字符類型與編碼方式的流程圖;圖3是統計參與編碼的字符數量的流程圖;圖4是本發明簡訊處理方法第二實施方式的流程圖;圖5是本發明簡訊處理裝置的原理框圖。
具體實施例方式
本發明基本原理是在多種類型字符混合的長簡訊需要發送前,為避免簡單的對整條簡訊使用單一的編碼方式而致使發送的簡訊空間利用率低、用戶費用增加的情況。本發明提出一種在遵守現有協議的基礎上,對長簡訊內容進行簡訊分割,動態地分析每一個字符所屬的字符類型來決定一條能夠獨立發送的簡訊所應該選取的較優編碼方式、動態統計在較優編碼方式下參與編碼的字符數量最大值,取可以實現獨立發送簡訊的字符數量最多的一種編碼方式來組成一條可獨立發送的簡訊,使一條獨立發送的簡訊能夠發送最大數量的信息內容。對所述長簡訊重複使用上述方法,則對整個簡訊內容而言可能就會採用多種編碼方式與分割方式,從而減少長簡訊的分割條數、提高空間利用率、減少信息費用。
基於以上原理,本發明提供多個實施方式以實現發明目的,分別舉未知簡訊類型、已知長簡訊和長簡訊下快速處理簡訊內容的實施方式以充分說明本發明。以下結合實施方式和附圖,對本發明進行詳細描述。
參閱圖1,以下是對編輯完成的簡訊進行分割的流程,以便在分割完成之後進行發送。本發明第一實施方式是在未知該已編輯完成的簡訊是否為長簡訊類型情況進行簡訊分割的處理A、初始化需發送簡訊的編碼方式為最低等級,也就是7位編碼方式,初始化簡訊類型為非長簡訊,擴展7位字符為0。
初始化的作用在於無論簡訊內容為何,預先設定其編碼方式為最低等級並且簡訊類型為非長簡訊,如果分割結果是全部簡訊內容屬於最低等級編碼,即不需要採用較高級編碼方式,從而節省存儲空間,減少分割條數。如果最後判斷的結果是長簡訊,那麼可能進行多次分割,每次分割的流程步驟A都需要初始化需發送簡訊的編碼方式為最低等級,但簡訊類型標識僅初始化一次,即如果多次分割,第一次分割的流程需要初始化,其他分割流程不需要初始化。
以下步驟B、C和D是分析簡訊內字符類型的處理流程。
B、從需發送的簡訊內容中讀取一個字符,判斷是否字符結束標識,是則更改結束標識,直接轉到步驟M,否則繼續以下步驟。
從第一個字符開始分析,如果第一個字符就已經是簡訊結尾,說明是空簡訊,在後續循環分析中,如果該字符表明已經是簡訊結尾,則沒有必要再分析,結束循環。
C、記錄本次所讀取的字符偏移量。
所述的字符偏移量是指相對於本次分割簡訊過程的第一次讀取字符的位置來說的,比如第一次讀取字符,那麼這個字符偏移量是1,第n次讀取字符,那麼這個字符偏移量是n。讀取的間隔是16位,因為在此之前,所有屬於7位、擴展7位、8位或者UCS2編碼類型的字符都轉換成了Unicode字符。在後續的分割簡訊流程中,所述字符偏移量作為簡訊分割點的依據。每分割一次後,字符偏移量都會清零。
D、判斷該字符所屬類型和編碼方式。
即判斷該字符所屬的編碼類型,分析其屬於標準7位、擴展7位、8位或者UCS2編碼字符的哪一種,進而確定7位、8位或者UCS2編碼方式。
以下步驟E~K處理的目的是在一次簡訊可以發送的最大長度內而且不含只能採用最高等級編碼進行編碼的字符類型情況下,選擇能夠將該長度內所有類型字符進行編碼的一種等級較最高等級編碼方式低的編碼方式;如果有UCS2編碼字符,則按照UCS2編碼方式對含該UCS2編碼字符的獨立簡訊進行編碼。
E、與此前保存的較高等級編碼方式比較,如果此字符的編碼方式等級更高,則將當前編碼方式替換所保存的編碼方式。
此步驟的目的在於因為每個單獨發送的簡訊只能採用一種編碼方式,而且是採用能對全部字符進行編碼的編碼方式來進行編碼,因此這裡在分析簡訊字符的同時,將分析到的屬於較高等級的字符的編碼方式記錄下來,這樣就能得到簡訊裡面字符所屬最高等級的編碼方式,因而利於簡訊內容佔用存儲量長度計算。
本步驟具體過程請參閱圖2,具體是E1、判斷所述保存的較高等級編碼方式是否等於UCS2,如果是則進入步驟E2,否則進入步驟E3;E2、直接返回UCS2編碼方式;因為UCS2編碼為最高級別編碼,可以對任意字符編碼,並且必須採用UCS2編碼方式進行編碼,所以沒有必要再分析讀取的字符類型與編碼方式,直接返回UCS2編碼類型,分析結束。
E3、判斷較高等級編碼方式是否為8位編碼方式,是則進入步驟E4,否則進入步驟E6;8位編碼優先級是高於7位編碼的編碼方式,此處對保存的較高等級編碼方式是否為8位編碼進行判斷,是進行後續與本字符的編碼方式進行比較的前提。
E4、判斷本字符的國際字符碼值是否小於等於255,是則進入步驟E5,否則進入步驟E2;在保存的較高等級編碼方式是否為8位編碼方式和本字符的國際字符碼值是否小於等於255情況下,說明本字符的編碼方式等級不可能高於8位編碼方式等級,因此進入步驟E5,返回8位編碼方式,不需要替換已保存的較高等級編碼方式;如果大於255,則說明本字符不能用8位編碼方式進行編碼,只能用UCS2編碼方式進行編碼,因此進入步驟E2。
E5、返回8位編碼方式,分析結束;E6、判斷本字符是否為標準7位編碼字符,是則進入步驟E7,否則進入步驟E8;
在較高等級編碼不屬於UCS2和8位編碼情況下,本字符可能是8位、標準7位或擴展7位編碼字符,因此在標準7位編碼字符集中查找本字符,如果找到了本字符,進入步驟E7。
E7、返回7位編碼方式,分析結束;本步驟說明保存的較高等級編碼和本字符編碼方式一致,因此返回7位編碼方式,不需要替換保存的較高等級編碼。
E8、判斷本字符是否為擴展7位編碼字符,是則進入步驟E9,否則進入步驟E10;在本字符可能是擴展7位編碼情況下,在擴展7位編碼字符集中查找本字符,如果找到了本字符,進入步驟E9。
E9、記錄該擴展7位編碼類型,分析結束;本步驟目的並不在於替換保存的較高等級編碼,目的在於在後續統計參與編碼的字符時,作為是否將參與編碼字符數量增1的依據。
E10、判斷本字符的所屬的國際碼字符碼值是否小於等於255,如果本字符的國際字符碼值大於255,進入步驟E2,否則進入步驟E11;因為在此步驟中,本字符可能是屬於UCS2編碼,因此判斷其國際碼字符碼值是否大於255,是則進入步驟E2,返回UCS2編碼方式,否則進入步驟E11。
E11、判斷本次分割前分析的所有字符中是否有碼值大於255的字符,是則進入步驟E2,否則進入步驟E5。
在確定本字符編碼不屬於UCS2編碼下,分析本次分割前分析的所有字符中是否有碼值大於255的字符,如果有,則應該將已保存較高等級編碼方式替換為UCS2編碼,否則返回8位編碼方式,最終完成與此前保存的較高等級編碼方式比較的流程。
F、依據較高等級編碼方式統計當前需要參與編碼的字符數量。
此步驟的目的在於在每次分析字符的循環中,統計出按照當前較高等級編碼方式對應的已讀的參與編碼的字符數量,以便於用作後續判斷是否長簡訊的參數。所述的參與編碼的字符數量可能與上述本次所讀取的字符偏移量不同,比如對一個擴展7位編碼字符來說,其讀取時字符偏移量是增1,而此時參與編碼的字符數量就增2,因為字符偏移量的計算是16位步進的,而參與編碼的字符數量是按編碼來計算。擴展7位編碼字符是增加一個7位編碼字符後組成的存儲長度為14位的字符,如果最後記錄的較高等級編碼方式是7位編碼,則參與編碼的字符數多餘已記錄的字符偏移量。
本步驟具體流程請參閱圖3,包括F1、判斷7位編碼是否為保存的較高等級編碼方式,如果不是則進入步驟F2,否則進入步驟F3;判斷7位編碼是否為保存的較高等級編碼方式,目的在於得知保存的較高等級編碼方式是否為8位編碼或UCS2編碼,如果是則因為參與編碼的字符與偏移量一致,因此不需要後續的參與編碼的字符量的計算;否則需要計算參與編碼的字符量。
F2、返回本次分割前分析的字符總數;不要後續的參與編碼的字符量的計算,返回本次分割前分析的字符總數。
F3、取當前字符類型;從上述步驟E取得當前字符類型,以作為後續計算的參數。
F4、判斷是否擴展7位編碼字符,是則進入步驟F5,否則進入步驟F6;F5、本次分析的擴展7位編碼字符總數加1;由於擴展7位編碼字符是增加一個7位編碼字符後組成的存儲長度為14位的字符,因此需參與編碼字符量需要增1,因為在8位或UCS2編碼時存儲長度為14位的擴展7位編碼字符其字符量算作1個,在7位編碼方式下則必須算作2個。
F6、返回本次分析的字符總數與擴展7位編碼字符總數之和。
將統計的非擴展7位編碼的字符量,加上經過上述計算的擴展7位編碼字符總數,即可得到當前需要參與編碼的字符數量。
G、使用最優的編碼方式,與當前所統計的參與編碼的字符總數,來計算這些字符數總共需要佔用的存儲長度。
本步驟是利用上述較高等級編碼方式和已記錄的本次讀取字符偏移量,算出在所述較高等級編碼方式下這些已記錄字符數量佔據的存儲長度。比如本次循環分析到第70個字符,發現該字符是UCS2編碼字符,則70個字符都必須採用UCS2編碼方式進行編碼,那上述字符佔用的存儲長度可以這樣計算存儲長度=本次參與編碼字符數量×當前編碼方式對應的字符長度=70×16=1120位。
H、判斷佔用的存儲長度是否大於1072位,小於或等於則進入步驟I,否則進入步驟J;此步驟是預先為簡訊分割記下可能的分割點。因為一條長簡訊的子簡訊其佔用的存儲長度最大為1072位,因此如果是長簡訊則需要在需要分割的位置設定一個分割標誌。至於進行「小於或等於」的判斷,是有可能分析到此處時佔用的存儲長度剛好是1072位,也可能比1072位小一點的位置。如果有一個字符跨越了「1072位」這個位置,這時當然不能把該字符和前面的字符一起作為一條簡訊發送,只能把分割點設定在前一個字符上。之所以是可能的分割點,是因為如果是非長簡訊,那麼其存儲長度最大為1120位,如果分析完已編輯簡訊的全部字符其佔存儲長度還沒有超過1120位,則沒有必要分割簡訊,因為該已編輯簡訊可以作為一條非長簡訊發送。
I、保存本次字符偏移量和編碼方式,返回步驟B。
保存本次字符偏移量和編碼方式的目的在於為完成此次分割簡訊做準備,這些字符和編碼方式用於組建最終發送的簡訊。雖然前面步驟C和E已經進行過保存字符偏移量和編碼方式的動作,但如果該已編輯簡訊是長簡訊,並且已讀取字符所佔的存儲長度超過1072位、未超過1120位前,步驟C和E保存的字符偏移量會被修改,而編碼方式也可能被修改,這樣後續確定需分割簡訊時,會造成組建該子簡訊需要的字符偏移量和編碼方式數據錯誤,造成分割失敗,因此需要對分割點的字符偏移量和編碼方式單獨保存。
J、判斷簡訊類型標識是否為長簡訊,是長簡訊則進入步驟M,否則進入步驟K。
此步驟是當判斷佔用的存儲長度大於1072位時啟動,此時進行簡訊類型標識是否為長簡訊的判斷,目的在於將此簡訊發送標記為長簡訊發送,使得網絡或對方知道分割後的子簡訊是屬於一條長簡訊的。如果簡訊被分割,其類型標識會由第一次分割前的非長簡訊改為長簡訊。長簡訊分割後的子簡訊只能發送1072位存儲容量,因此讀取的字符所佔存儲長度單元大於1072位即可進行分割操作。如果不是長簡訊,則在存儲長度小於或等於1120位時繼續分析字符,直至最終判定是非長簡訊。
K、判斷佔用的存儲長度是否小於或等於1120位,是則單獨保存所讀取的字符偏移量與編碼方式,返回步驟B,否則進入步驟L;此步驟目的在存儲長度小於或等於1120位、繼續分析字符時判斷此已編輯簡訊是否存在非長簡訊的可能。如果此時佔用的存儲長度大於1120位,則已經確認是長簡訊。如果小於或等於1120位,並且已經讀完全部字符則判斷已編輯簡訊非長簡訊,並且單獨保存所讀取的字符偏移量與編碼方式,以用於對簡訊進行編碼。
以上的步驟F~K可以判斷簡訊類型,以確定所述的獨立簡訊所能發送的最大長度。
以下步驟L和M是採用所述選擇的編碼方式對該長度內字符進行編碼,以組建一條能獨立發送的簡訊。
L、認為已編輯簡訊需要分割,將非長簡訊類型標識更改為長簡訊。
此時記錄本次所讀取的字符偏移量與編碼方式,所述字符偏移量作為長簡訊截取點,所述編碼方式用於對字符進行編碼。
M、保存所能夠構成一條簡訊的字符串、編碼方式以及字符串長度(偏移量)等信息。
此步驟是簡訊一次分割完成,因此組建一條不超過標準長度的簡訊。如果還有字符沒有分析完,繼續以下步驟。
N、判斷是否結束標識,是則進入步驟O;否則返回步驟A。
此時分析是否到了已編輯簡訊的末端,即是否分析到了結束標識,是則應該結束簡訊分割流程,否則返回步驟A繼續下一條子簡訊的分割操作。下一條簡訊分割流程的讀取字符步驟是從上次分割過程中C步驟記錄的字符偏移量所指向的後一個字符開始,在再次讀取到長簡訊一次發送的最大長度時再次截取該長度內的字符。
O、簡訊分割結束。
這裡可以舉一個例子對本發明簡訊處理方法進行說明,例如簡訊的內容有160個字符,前153個為7位字符,後7個為Unicode字符,如果簡單地統一採用UCS2編碼方式,每個字符分配16位存儲容量,則存儲容量是160×16=2560。對於長簡訊來說,每個子簡訊的最大容量是1072,所以這160個字符必須分成3條子簡訊(67+67+26)發送。
依照本發明,則不是統一採用UCS2編碼方式對簡訊全部內容進行編碼,而是首先得知該簡訊的簡訊類型為長簡訊;然後對簡訊進行分割,第一次分割點在整條簡訊的第1071存儲位,即第153個字符。此153個字符用7位編碼方式進行編碼,並作為所述長簡訊的第一條子簡訊進行發送。還剩後面的7個字符用UCS2編碼方式進行編碼,作為所述長簡訊的第二條子簡訊進行發送,這樣就可以節省一條簡訊的發送量。
從以上可以看出,在多種類型字符混合的長簡訊需要發送前,本發明採用對長簡訊內容進行分割的方式,對每條分割的簡訊採用較優編碼方式進行編碼,避免統一用一種編碼方式對整條簡訊編碼。也就是動態地分析每一個字符所屬的字符類型來決定一條能夠獨立發送的簡訊所應該選取的較優編碼方式、動態統計在較優編碼方式下參與編碼的字符數量最大值,取可以實現獨立發送簡訊的字符數量最多的一種編碼方式來組成一條可獨立發送的簡訊,使一條獨立發送的簡訊能夠發送最大數量的信息內容。對所述長簡訊重複使用上述方法,則對整個簡訊內容而言可能就會採用多種編碼方式與分割方式,避免簡單地對整條簡訊使用單一的編碼方式而導致長簡訊分割後發送次數多、發送的簡訊空間利用率低、用戶費用增加的情況,從而減少長簡訊的分割條數和提高空間利用率。
如前所述,2006年1至4月中國手機簡訊量達到1322.5億條,如果其中有1%的長簡訊,那麼就有13.225億條,假設每條長簡訊發送都節省一次發送量,那麼就減少13.225億次,每條簡訊0.1元計,可減少信息費用1.3225億元,大大減輕了用戶費用負擔,同時由於網絡系統減少13.225億次信息傳送操作,較大程度降低系統負擔。
參閱圖4,本發明簡訊處理方法還提供第二實施方式,該實施方式是在已知該已編輯完成的簡訊是長簡訊類型情況下進行簡訊分割的處理,本實施方式類似於本發明第一實施方式,基本包括步驟A、初始化需發送簡訊的編碼方式為最低等級,也就是7位編碼方式,初始化簡訊類型為非長簡訊,擴展7位字符為0。
初始化的作用在於無論簡訊內容為何,預先設定其編碼方式為最低等級並且簡訊類型為非長簡訊,如果分割結果是全部簡訊內容屬於最低等級編碼,即不需要採用較高級編碼方式,從而節省存儲器空間,減少分割條數。如果最後判斷的結果是長簡訊,那麼可能進行多次分割,每次分割的流程步驟A都需要初始化需發送簡訊的編碼方式為最低等級,但簡訊類型標識僅初始化一次,即如果多次分割,第一次分割的流程需要初始化,其他分割流程不需要初始化。
B、從需發送的簡訊內容中讀取一個字符,判斷是否字符結束標識,是則更改結束標識,直接轉到步驟M,否則繼續以下步驟。
從第一個字符開始分析,如果第一個字符就已經是簡訊結尾,說明是空簡訊,在後續循環分析中,如果該字符表明已經是簡訊結尾,則沒有必要再分析,結束循環。
C、記錄本次所讀取的字符偏移量。
所述的字符偏移量是指相對於第一次讀取字符的位置來說的,比如第一次讀取字符,那麼這個字符偏移量是1,第n次讀取字符,那麼這個字符偏移量是n。讀取的間隔是16位,因為在此之前,所有屬於7位、擴展7位、8位或者UCS2編碼類型的字符都轉換成了Unicode字符。在後續的分割簡訊流程中,所述字符偏移量作為簡訊分割點的依據。
D、判斷該字符所屬類型和編碼方式。
即判斷該字符所屬的編碼類型,分析其屬於標準7位、擴展7位、8位或者UCS2編碼字符的哪一種,進而確定7位、8位或者UCS2編碼方式。
E、與此前保存的較高等級編碼方式比較,如果此字符的編碼方式等級更高,則將當前編碼方式替換所保存的編碼方式。
此步驟的目的在於因為每個單獨發送的簡訊只能採用一種編碼方式,而且是採用能對所有字符進行編碼的編碼方式來進行編碼,因此這裡在分析簡訊字符的同時,將分析到的屬於較高等級的字符的編碼方式記錄下來,這樣就能得到簡訊裡面字符所屬較高等級的編碼方式,因而利於後續的簡訊佔用存儲量長度計算。
F、依據較高等級編碼方式統計當前需要參與編碼的字符數量。
此步驟的目的在於在每次分析字符的循環中,統計出按照當前較高等級編碼方式對應的已讀的參與編碼的字符數量,以便於用作後續判斷是否長簡訊的參數。
G、使用最優的編碼方式,與當前所統計的參與編碼的字符總數,來計算這些字符數總共需要佔用的存儲長度。
本步驟是利用上述較高等級編碼方式和已記錄的本次讀取字符偏移量,算出在所述較高等級編碼方式下這些已記錄字符數量佔據的存儲長度。比如本次循環分析到第70個字符,發現該字符是UCS2編碼字符,則70個字符都必須採用UCS2編碼方式進行編碼,那上述字符佔用的存儲長度可以這樣計算存儲長度=本次讀取字符偏移量×當前編碼方式對應的字符長度=70×16=1120位。
H、判斷佔用的存儲長度是否大於1072位,小於或等於則進入步驟I,否則進入步驟M;此步驟是預先為簡訊分割記下分割點。因為一條長簡訊的子簡訊其佔用的存儲長度最大為1072位,因此需要在需要分割的位置設定一個分割標誌。至於進行「小於或等於」的判斷,是有可能分析到此處時佔用的存儲長度剛好是1072位,也可能比1072位小一點的位置,即有一個字符跨越了「1072位」這個位置。這時當然不能把該字符和前面的字符一起作為一條簡訊發送,只能把分割點設定在前一個字符上。
I、保存本次字符偏移量和編碼方式,返回步驟B。
保存本次字符偏移量和編碼方式的目的在於為完成此次分割簡訊做準備,這些字符偏移量和編碼方式用於組建最終發送的簡訊。雖然前面步驟C和E已經進行過保存字符偏移量和編碼方式的動作,但如果該已編輯簡訊是長簡訊,並且已讀取字符所佔的存儲長度超過1072位,步驟C和E保存的字符偏移量會被修改,而編碼方式也可能被修改,這樣後續確定需分割簡訊時,會造成組建該子簡訊需要的字符偏移量和編碼方式數據錯誤,造成分割失敗,因此需要對分割點的字符偏移量和編碼方式單獨保存。
此處省略第一實施方式中的J,K,L步驟,因為不需要進行是否長簡訊的判斷。
M、保存所能夠構成一條簡訊的字符串、編碼方式以及字符串長度(偏移量)等信息。
此步驟是簡訊一次分割完成,因此組建一條不超過標準長度的簡訊。如果還有字符沒有分析完,繼續以下步驟。
N、判斷是否結束標識,是則進入步驟O;否則返回步驟A。
此時分析是否到了已編輯簡訊的末端,即是否分析到了結束標識,是則應該結束簡訊分割流程,否則返回步驟A繼續下一條子簡訊的分割操作。下一條簡訊分割流程的讀取字符步驟是從上次分割過程中C步驟記錄的字符偏移量所指向的後一個字符開始。
O、簡訊分割結束。
從以上可以看出,由於不需要對是否長簡訊進行判斷,因此較本發明第一實施方式減少步驟。但同樣可以實現減少長簡訊的分割條數、提高空間利用率、降低用戶費用和降低系統負擔的目的。
本發明第三實施方式是在判斷整個簡訊內容當中有只能使用UCS2編碼的字符,可以在本發明第一實施方式或第二實施方式中嵌入以下方法,加快分析的速度,分析步驟如下F』、在上述本發明第一實施方式或第二實施方式的步驟D中,一旦判斷出只能使用UCS2編碼的字符,直接判斷整個簡訊的長度,類似於上述步驟F,但統計的是整個簡訊長度。
K』、如果整個簡訊長度小於等於70,將所有的字符保存,編碼方式為UCS2,保存分析信息以組建一條簡訊。
L』、如果整個簡訊長度大於70,則可以肯定整個簡訊內容是需要分割成多條子簡訊的,執行第一實施方式的步驟L,將簡訊類型標識更改為長簡訊狀態。
C』、根據上述步驟C,判斷字符偏移量是否大於67。
I』、如果字符數小於等於67個,那麼直接從起始位置開始往後截取67個字符,編碼方式為UCS2,保存分析信息以組建一條簡訊。
J』、如果大於67,將此字符前面的所有字符截取保存,編碼方式採用此字符前面分析出的較高等級編碼方式,保存分析信息以組建一條簡訊。並且還從此字符開始往後截取67個字符,不足67個字符時,截取所有剩餘的字符,編碼方式為UCS2,保存分析信息以組建一條簡訊。如果還有剩餘字符,採取以上方式繼續分割。
上述加快方法是在判斷字符類型時,一旦發現只能使用UCS2編碼的字符,則無需再進行後續判斷字符類型的步驟,直接用此編碼進行簡訊處理,實現與上述第一、第二實施方式一樣的發明效果,同時加快處理流程。
上述流程中的較高等級編碼方式可以不是唯一的,也就是說,如果統計完在最大長度內的全部字符後,發現7位或8位編碼都可以將所述全部字符編碼,按照上述流程應該選擇7位編碼對簡訊字符進行編碼然後發送,這裡可以選擇8位編碼對簡訊字符進行編碼然後發送,同樣可以減少長簡訊的分割條數。
參閱圖5,本發明還提供一種簡訊處理裝置,所述裝置包括字符類型分析模塊100、編碼方式判斷模塊200、編碼模塊400、簡訊類型判斷模塊300以及長簡訊截取模塊500。
所述字符類型分析模塊100用於在簡訊發送前分析簡訊內字符的類型,其包括字符讀取模塊101和字符類型與編碼判斷模塊102。所述字符讀取模塊101用於從需發送的簡訊中讀取一個字符,所述字符類型與編碼判斷模塊102用於判斷該字符所屬類型和當前編碼方式。
所述編碼方式判斷模塊200用於在一次簡訊可以發送的最大長度內而且不含只能採用最高等級編碼進行編碼的字符類型情況下,選擇能夠將該長度內所有類型字符進行編碼的一種等級較最高等級編碼方式低的編碼方式。所述編碼方式判斷模塊200包括編碼方式比較模塊202和編碼方式保存模塊201。所述編碼方式比較模塊202用於比較所述當前編碼方式與此前保存的編碼方式,在該字符的編碼方式等級高於所述保存的編碼方式情況下,在編碼方式保存模塊201內將當前編碼方式替換所保存的編碼方式,並由字符讀取模塊101繼續讀取字符,直至已讀取字符的存儲長度達到所述最大長度。
所述編碼模塊400用於採用所述選擇的編碼方式對該長度內字符進行編碼,以組建一條簡訊。
所述簡訊類型判斷模塊300包括字符數量統計模塊301、存儲長度計算模塊302、存儲長度判斷模塊303以及字符偏移量與編碼方式單獨保存模塊304。所述字符數量統計模塊301用於依據保存的編碼方式統計當前需要參與編碼的字符數量。所述存儲長度計算模塊302用於依據所述保存的編碼方式與當前所統計的參與編碼的字符總數,計算該等字符總共需要佔用的存儲長度。所述存儲長度判斷模塊303用於判斷佔用的存儲長度是否小於或等於1120位,是並且已經讀完全部字符則判斷簡訊類型為非長簡訊,否則判斷簡訊類型為長簡訊。所述字符偏移量與編碼方式單獨保存模塊304201用於在判斷佔用的存儲長度小於或等於1120位、並且還剩未讀取字符時單獨保存所讀取的字符偏移量與編碼方式,所述編碼方式用於在確定簡訊類型為非長簡訊時對字符進行編碼。
所述長簡訊截取模塊500在所述佔據的存儲長度大於1120位、並且判斷簡訊類型為長簡訊時,用於根據記錄的本次所讀取的字符偏移量與編碼方式、分別設定所述長簡訊截取點對字符進行編碼。
本發明簡訊處理裝置的基本運作流程是字符類型分析模塊100首先啟動,在發送前對已編輯的簡訊進行讀取字符操作。每讀取一個字符都伴隨後面的分析動作直至循環結束。
具體是所述字符讀取模塊101從需發送的簡訊中讀取一個字符並記錄字符偏移量。所述編碼判斷模塊判斷該字符所屬類型和當前編碼方式,由編碼方式比較模塊202比較所述當前編碼方式與此前保存的編碼方式,在該字符的編碼方式等級高於所述保存的編碼方式情況下,在編碼方式保存模塊201內將當前編碼方式替換所保存的編碼方式。所述字符數量統計模塊301依據保存的編碼方式統計當前需要參與編碼的字符數量,由存儲長度計算模塊302依據所述保存的編碼方式與當前所統計的參與編碼的字符總數,計算該等字符總共需要佔用的存儲長度。然後由存儲長度判斷模塊303判斷佔用的存儲長度是否小於或等於1120位,是並且已經讀完全部字符則判斷簡訊類型為非長簡訊,否則判斷簡訊類型為長簡訊。
然後,字符偏移量與編碼方式單獨保存模塊304在判斷佔用的存儲長度小於或等於1120位、並且還剩未讀取字符時單獨保存所讀取的字符偏移量與編碼方式,用於在確定簡訊類型為非長簡訊時對字符進行編碼。如果存儲長度大於1120位則由長簡訊截取模塊500根據記錄的本次所讀取的字符偏移量與編碼方式、分別設定所述長簡訊截取點對字符進行編碼。直至分析完整條已編輯的簡訊。
其中,在字符類型分析模塊100判斷該字符所屬類型為UCS2編碼時,由字符偏移量記錄模塊記錄整個簡訊的長度,在整個簡訊長度大於70情況下,所述簡訊類型判斷模塊300判斷得到該簡訊的簡訊類型是長簡訊,並在字符偏移量記錄模塊記錄的字符偏移量大於67情況下,由長簡訊截取模塊500將此字符前面的67個字符截取,並由編碼模塊400進行編碼。
從以上可以看出,在多種類型字符混合的長簡訊需要發送前,本發明採用編碼方式判斷模塊和簡訊類型判斷模塊判斷出能對單條分割的子簡訊字符全部編碼的較優編碼方式,避免統一用一種編碼方式對整條簡訊編碼。也就是採用字符類型分析模塊動態地分析每一個字符所屬的字符類型,並配合編碼方式判斷模塊來決定一條能夠獨立發送的簡訊所應該選取的較優編碼方式、動態統計在較優編碼方式下參與編碼的字符數量最大值,取可以實現獨立發送簡訊的字符數量最多的一種編碼方式來組成一條可獨立發送的簡訊,使一條獨立發送的簡訊能夠發送最大數量的信息內容。避免簡單地對整條簡訊使用單一的編碼方式而導致長簡訊分割後發送次數多、發送的簡訊空間利用率低、用戶費用增加的情況,從而減少長簡訊的分割條數、提高空間利用率、降低用戶費用負擔以及降低系統負擔。
以上對本發明所提供的一種簡訊處理方法以及裝置進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式
及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發明的限制。
權利要求
1.一種簡訊處理方法,其特徵在於,包括步驟分析簡訊內字符的類型;在一次簡訊可以發送的最大長度內,選擇能夠將該長度內對分析的所有類型的字符進行編碼的一種等級較最高等級編碼方式低的編碼方式;採用所述選擇的編碼方式對該長度內字符進行編碼,以組建一條簡訊。
2.根據權利要求1所述的簡訊處理方法,其特徵在於,所述分析簡訊內字符的類型包括步驟從需發送的簡訊中逐個讀取字符;判斷當前字符所屬類型和編碼方式;所述判斷編碼方式的步驟包括比較所述當前字符編碼方式與剛好能對已讀全部字符編碼的編碼方式,在當前字符編碼方式等級較高情況下,保存當前字符編碼方式;返回讀取字符的步驟,直至已讀取字符的存儲長度達到所述最大長度;選擇一種等級大於或等於保存的編碼方式、並且低於最高等級編碼的編碼方式。
3.根據權利要求2所述的簡訊處理方法,其特徵在於,確定所述最大長度的步驟為判斷簡訊類型,是長簡訊則所述最大長度為小於或等於1072位,否則所述最大長度為1120位。
4.根據權利要求3所述的簡訊處理方法,其特徵在於,在讀取一個字符後記錄本次所讀取的字符偏移量;所述判斷簡訊類型的步驟包括依據保存的編碼方式統計當前需要參與編碼的字符數量;依據保存的編碼方式與當前所統計的參與編碼的字符總數,計算所述字符總共需要佔用的存儲長度;判斷佔用的存儲長度是否小於或等於1120位,是並且已經讀完全部字符則判斷簡訊類型為非長簡訊,否則判斷簡訊類型為長簡訊。
5.根據權利要求4所述的簡訊處理方法,其特徵在於,所述判斷佔用的存儲長度小於或等於1072位、並且還剩未讀取字符時進一步包括單獨保存所讀取的字符偏移量與編碼方式的步驟,所述編碼方式用於在確定簡訊類型為非長簡訊時對字符進行編碼。
6.根據權利要求4所述的簡訊處理方法,其特徵在於,在所述佔據的存儲長度大於1072位、並且判斷簡訊類型為長簡訊時進一步包括,返回記錄本次所讀取的字符偏移量與編碼方式的步驟,所述字符偏移量作為長簡訊截取點,所述編碼方式用於對字符進行編碼。
7.根據權利要求4所述的簡訊處理方法,其特徵在於,在分析簡訊內字符的類型之前進一步包括,初始化簡訊類型為非長簡訊的步驟;在判斷簡訊類型為長簡訊時繼續進行讀取字符;在再次讀取到長簡訊一次發送的最大長度時截取該長度內的字符。
8.根據權利要求4所述的簡訊處理方法,其特徵在於,在判斷該字符所屬類型為只能用UCS2編碼的類型時,判斷整個簡訊的長度,如果整個簡訊長度大於70個字符,則判斷該簡訊的簡訊類型是長簡訊,此時判斷字符偏移量是否大於67個字符,是則將此字符前面的67個字符截取並編碼。
9.根據權利要求1所述的簡訊處理方法,其特徵在於,所述編碼方式是能夠將該長度內所有類型字符進行編碼的最低等級編碼方式。
10.一種簡訊處理裝置,其特徵在於,包括字符類型分析模塊、編碼方式判斷模塊以及編碼模塊,所述字符類型分析模塊用於在簡訊發送前分析簡訊內字符的類型,所述編碼方式判斷模塊用於在一次簡訊可以發送的最大長度內,選擇能夠將該長度內所有類型字符進行編碼的一種等級較最高等級編碼方式低的編碼方式,所述編碼模塊用於採用所述選擇的編碼方式對該長度內字符進行編碼,以組建一條簡訊。
11.根據權利要求10所述的簡訊處理裝置,其特徵在於,所述字符類型分析模塊包括字符讀取模塊和字符類型與編碼判斷模塊,所述編碼方式判斷模塊包括編碼方式比較模塊和編碼方式保存模塊,所述字符讀取模塊用於從需發送的簡訊中逐個讀取字符,所述字符類型與編碼判斷模塊用於判斷該字符所屬類型和當前編碼方式,所述編碼方式比較模塊用於比較所述當前字符編碼方式與剛好能對已讀全部字符編碼的編碼方式,在當前字符編碼方式等級較高情況下,保存當前字符編碼方式,並由字符讀取模塊繼續讀取字符,直至已讀取字符的存儲長度達到所述最大長度。
12.根據權利要求11所述的簡訊處理裝置,其特徵在於,進一步包括簡訊類型判斷模塊,其包括字符數量統計模塊、存儲長度計算模塊以及存儲長度判斷模塊,所述字符數量統計模塊用於依據保存的編碼方式統計當前需要參與編碼的字符數量,所述存儲長度計算模塊用於依據所述保存的編碼方式與當前所統計的參與編碼的字符總數,計算該等字符總共需要佔用的存儲長度,所述存儲長度判斷模塊用於判斷佔用的存儲長度是否小於或等於1120位,是並且已經讀完全部字符則判斷簡訊類型為非長簡訊,否則判斷簡訊類型為長簡訊。
13.根據權利要求12所述的簡訊處理裝置,其特徵在於,所述簡訊類型判斷模塊進一步包括字符偏移量與編碼方式單獨保存模塊304,其用於在判斷佔用的存儲長度小於或等於1072位、並且還剩未讀取字符時單獨保存所讀取的字符偏移量與編碼方式,所述編碼方式用於在確定簡訊類型為非長簡訊時對字符進行編碼。
14.根據權利要求12所述的簡訊處理裝置,其特徵在於,進一步包括長簡訊截取模塊,在所述佔據的存儲長度大於1072位、並且判斷簡訊類型為長簡訊時,所述長簡訊截取模塊用於根據記錄的本次所讀取的字符偏移量與編碼方式、分別設定所述長簡訊截取點對字符進行編碼。
15.根據權利要求12所述的簡訊處理裝置,其特徵在於,在字符類型分析模塊判斷該字符所屬類型為UCS2編碼時,由字符偏移量記錄模塊記錄整個簡訊的長度,在整個簡訊長度大於70字符情況下,所述簡訊類型判斷模塊判斷得到該簡訊的簡訊類型是長簡訊,並在字符偏移量記錄模塊記錄的字符偏移量大於67字符情況下,由長簡訊截取模塊將此字符前面的67個字符截取,並由編碼模塊進行編碼。
全文摘要
本發明公開一種簡訊處理方法和一種簡訊處理裝置,在簡訊發送前,所述方法包括步驟分析簡訊內字符的類型;在一次簡訊可以發送的最大長度內,選擇能夠將該長度內所有類型字符進行編碼的一種等級較最高等級編碼方式低的編碼方式;採用所述選擇的編碼方式對該長度內字符進行編碼,以組建一條簡訊。本發明可減少長簡訊的分割條數、提高空間利用率、降低用戶費用負擔以及降低系統負擔。
文檔編號G06F17/00GK101047733SQ20061009144
公開日2007年10月3日 申請日期2006年6月16日 優先權日2006年6月16日
發明者唐志雄 申請人:華為技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀