有一家 SIP Provider (VoIP Innovations) 的 DID 號碼服務有支援 SMS 的功能。
寫一個 dialplan 用來接收 SMS 的訊息。
接收 SMS 時的 SIP Header 資訊,如下圖
exten => 12072094926,1,GotoIf("${SipHeader(Request-Line):7}"="MESSAGE"?sms) exten => 12072094926,n,Dial(sip/14124402007@64.136.174.30) exten => 12072094926,n,Hangup exten => 12072094926,n(sms),Verbose(Received SMS from ${CALLERID(num)} to ${EXTEN}) exten => 12072094926,n,Set(SMS=${MESSAGE(body)}) exten => 12072094926,n,Set(SMSTEXT=${URIENCODE(${SMS})}) exten => 12072094926,n,Set(FILE(/var/spool/asterisk/sms/${STRFTIME(${EPOCH},,%F-%T)}-${CALLERID(num)}-${EXTEN}.txt,a)=${MESSAGE(body)}) exten => 12072094926,n,Hangup