1. 程式人生 > >物聯網通訊與普通簡訊通訊的區別和要注意的地方

物聯網通訊與普通簡訊通訊的區別和要注意的地方

CMPP3.0中號碼欄位增加到32位,還增加了號碼型別欄位,可能是為了擴充套件不同型別的卡。

Dest_terminal_Id

32*DestUsr_tl

Octet String

接收簡訊的MSISDN號碼。

Dest_terminal_type

1

Unsigned Integer

接收簡訊的使用者的號碼型別,0:真實號碼;1:偽碼。

可是用CMPP3.0協議,也就是說傳送簡訊到物聯網絡卡、從物聯網絡卡回覆簡訊回來,都可以直接用這套CMPP3.0協議。那麼跟發手機簡訊有何不同之處呢,以下就是幾點不同:

1.關於編碼格式

目前物聯網絡卡通訊,如果是英文內容,則只支援Ascii碼,也就是Msg_Fmt必須設定成0

Msg_Fmt

1

Unsigned Integer

資訊格式:

0:ASCII串;

3:簡訊寫卡操作;

4:二進位制資訊;

8:UCS2編碼;

15:含GB漢字。。。。。。

如果是傳送中文內容,則只支援UCS2編碼,即Msg_Fmt必須設定成8

另外有個特別費解的問題是,如果是發中文內容,簡訊閘道器會自動在簡訊後面加上一串尾巴,類似【ayf】等。這個問題在開發的時候必須注意,以免傳送的指令不能解析,需要做一些邏輯處理把尾巴去掉。

2.關於長簡訊

我們知道一條簡訊只能發140個位元組的內容,如果實際要發的內容超過這個數,就必須拆成多條傳送,這樣會有一些影響。為了髮長簡訊,我們的CMPP傳送程式必須做一些改造,具體請參考我的另一篇博文CMPP3.0 長簡訊實現方案

而對於物聯網絡卡來說,收發長簡訊必須使用  7 位的協議頭格式:06 08 04 XX XX MM NN

這也是要注意的一點,否則解析傳送都會出錯。

3.關於使用者號碼型別

物聯網的使用者號碼型別選擇Dest_terminal_type=0即可。若選擇1會報錯。

其他

如遇到簡訊閘道器返回碼,可查詢以下網址看返回碼解釋 

常見返回碼:173  是物聯網絡卡沒開通簡訊功能造成的。

這就是開發物聯網通訊過程中的經驗。

相關推薦

聯網通訊普通簡訊通訊區別注意地方

CMPP3.0中號碼欄位增加到32位,還增加了號碼型別欄位,可能是為了擴充套件不同型別的卡。 Dest_terminal_Id 32*DestUsr_tl Octet String 接收簡訊的MSISDN號碼。 Dest_terminal_ty

聯網通訊普通短信通訊區別註意的地方

手機短信 如果 solid ack .com 查詢 報錯 ron sisd CMPP3.0中號碼字段增加到32位,還增加了號碼類型字段,可能是為了擴展不同類型的卡。 Dest_terminal_Id 32*DestUsr_tl Octe

聯網資料卡系統原始碼——通訊模組整體概述

在這個萬物互聯的時代,物聯網應用以及深入到我們生活的方方面面,大到智慧城市、智慧交通,小到行車記錄儀,各種穿戴裝置,智慧家居,都有物聯網應用的身影,讓我們感受到生活品質和檔次的提升。 那麼作為程式設計師的我們,物聯網通訊到底如何做呢?  本系列文章即將帶您一起走進物聯網系統開發的世界。也希望同行一起分享和

面向移動網際網路聯網應用的下一代行動通訊

2017年12月摘要移動通訊系統在過去三十年時間裡迅猛發展,其主要業務已經從語音通話轉向資料通訊,行動通訊與網路工程之間的差異日漸減小。目前的LTE網路已經能滿足移動網際網路應用的需求,而下一代行動通訊將關注廣闊的物聯網應用。移動通訊系統的改進可以分為無線傳輸技術和網路技術兩

聯網應用企業級應用的區別

post web 代理 反向代理 OS 發生 不能 pos 基於   企業應用系統從封閉走向開放,由局域網轉到互聯網,隨著涉眾面的極大擴展,新的企業應用要求多瀏覽器支持(IE,FireFox),國際化支持,全球業務的互聯互通。這樣就要求企業應用不能滿足簡單的表單、表格、樹、

centos中的內建命令普通命令的區別

命令centos中的內建命令與普通命令的區別

eNSP分析OSPF分析stub區域普通區域的區別,並驗證stub區域的特性

命令 pla outer 外部網絡 watermark ner 分析 比較 work 實驗目的:分析stub區域與普通區域LSA通告以及路由條目的區別思路:建立ospf區域,並註入外部路由,分析各區域的LSA以及路由信息,然後將沒有註入外部路由的普通區域設置成stub區域,

新加坡註冊非盈利基金會普通公司的區別

做區塊鏈ico專案到底應該註冊普通公司還是公眾公司?普通公司行不行?普通公司和非盈利基金會有什麼區別,做區塊鏈ico註冊哪種有優勢?這些問題都是我們準備註冊基金會的時候會遇到的 首先在名稱上有個直觀的區別。 1. 普通公司以PTE.LTD.結尾(哪怕公司名稱中含有基金或者基金會這種字眼,只要

工業相機介紹及其普通相機的區別

 工業相機基本介紹 一、鏡頭介面 工業相機的十種鏡頭介面 1. C-Mount 2. CS-Mount 3. NF (Sony) 4. F-Mount 5. Cannon 6. Leica 7. T2 8. Pentax 9. M58

JS中建構函式普通函式的區別及JS建構函式、原型例項的關係

JS中建構函式與普通函式的區別: https://www.cnblogs.com/cindy79/p/7245566.html JS建構函式、原型和例項的關係: https://blog.csdn.net/u012443286/article/details/78823955 Java

聯網,雲端計算,大資料人工智慧,之間的區別關係

物聯網,雲端計算,大資料,人工智慧是近兩年科技、產業界的熱門話題。分別什麼意思?之間又有什麼關係呢?今天把個人的理解給大家整理了一下,一起來看看: 物聯網IoT(Internet of things) 物聯網是網際網路的應用拓展,與其說物聯網是網路,不如說物聯網是業務和應用。因此,應用創新是

程序通訊 執行緒通訊

1)程序: 每個程序有自己的地址空間。兩個程序中的地址即使值相同,實際指向的位置也不同。 程序間通訊一般通過作業系統的公共區進行。 2)執行緒 同一程序中的執行緒因屬同一地址空間,可直接通訊。 不僅是系統內部獨立執行的實體,而且是獨立競爭資源的實體。 執行緒也被稱為輕權程序,同一程序的執行緒共享

C# 靜態變數普通變數的區別

靜態變數與普通變數的區別 全域性變數(外部變數)的說明之前再冠以static 就構成了靜態的全域性變數。全域性變數本身就是靜態儲存方式, 靜態全域性變數當然也是靜態儲存方式。這兩者在儲存方式上並無不同。這兩者的區別雖在於非靜態全域性變數的作用域是整個源程式, 當一個源程式

學習筆記--static變數普通變數的區別

靜態全域性變數與普通全域性變數:兩者的儲存方式相同,都儲存在靜態區,靜態全域性變數的作用域是定義該變數的原始檔,普通全域性變數的作用域則是多個原始檔的源程式,靜態全域性變數只初始化一次。、 靜態區域性變數與普通區域性變數:兩者的作用域相同,儲存方式不同,靜態區域性變數儲存在靜態區,普通區域性變數儲存在棧

建構函式 匿名函式 普通函式的區別 以及啥是閉包

//普通函式 function person2 (name,age) { this.name=name; this.age=age; this.sayName=function () { console.log(this.name); } console.lo

箭頭函式普通函式的區別

普通函式中的this:    1. this總是代表它的直接呼叫者, 例如 obj.func ,那麼func中的this就是obj    2.在預設情況(非嚴格模式下,未使用 'use strict'),沒找到直接呼叫者,則this指的是 window    3.在嚴格模式下

巨集函式普通函式的區別

我們由問題展開: 1.什麼是巨集函式? 2.巨集函式與普通函式的相同點?不同點? 3.巨集函式與普通函式的優缺點? 什麼是巨集函式? 在這之前看一下巨集的定義: 巨集 巨集是根據一系列預定義的規則替換一定的文字模式。 #define

列舉類普通類的區別

主要區別:使用enum定義的列舉類預設繼承了java.lang.Enum類列舉類的構造器只能使用private列舉類的每個例項必須在列舉類中顯示的列出(,分隔   ;結尾) 列出的例項系統會自動新增public static final修飾所有的列舉類都定義了一個values

C++虛繼承普通繼承的區別

虛繼承的時候在子類的物件中會多出一個叫虛類指標的大小,有的資料說這個指標指向的記憶體裡面包含了該子類的偏移量和到基類的距離。但是我跟蹤過這段記憶體,發現裡面的資料沒有規律,也找不到更多的支撐材料,權且先知道子類的物件裡面會有這麼一個東西吧。 先總結虛擬繼承中比較特殊的地方,

Sql盲注普通注入的區別

          在學習sql注入的時候,好多同學都是不弄清楚原理,去瀏覽器上狂搜一下注入語句,就開始對老師給的靶機注入,雖然能注入成功,但是不清楚原理,對以後的學習和工作沒有多大的好處。現在我就講一下sql盲注與普通注入的區別! (adsbygoogle = window.ads