有關運作方式的假設
為此範例,我們假定需要以下運作方式:
傳送至以下位址的電子郵件
sms-id@sms.domain.com
會被傳送至 SMS 位址
sms-id
並被給定唯一 SMS 來源位址,範圍為 000nnnnnnnnnn。
傳送至 SMS 位址 000 的行動電話 SMS 郵件會透過閘道傳送至電子郵件位址擷取自 SMS 郵件文字開頭的電子郵件。
例如,如果 SMS 郵件文字為:
jdoe@domain.com Interested in a movie?
然後郵件「Interested in a movie?」將傳送至 jdoe@domain.com。
傳送至 000nnnnnnnnnn 的 SMS 通知會透過閘道傳送至電子郵件,並導向將接收的郵件之創建者。
為了引發此運作方式,應進行以下假定和指定
進一步假設和指定
MTA 的 SMS 通道使用網域名稱 sms.domain.com。
SMS 閘道伺服器在主機 gateway.domain.com 上執行並使用:
TCP 連接埠 503 作為其 SMPP 轉送器
TCP 連接埠 504 作為其 SMPP 伺服器
遠端 SMSC 的 SMPP 伺服器在主機 smpp.domain.com 上執行並偵聽 TCP 連接埠 377。
遠端 SMSC 的預設字元集為 UCS2 (aka,UTF-16)。
SMS 通道配置
若要使上述運作方式生效,可以在 imta.cnf 檔案中使用以下 SMS 通道配置 (將以下行增加至檔案結尾處):
(blank line) sms sms.domain.com
SMS 通道選項檔案
通道的選項檔案 sms_option 可以包含以下設定:
SMPP_SERVER=gateway.domain.com SMPP_PORT=503 USE_HEADER_FROM=0 DEFAULT_SOURCE_ADDRESS=000 GATEWAY_PROFILE=sms1 SMSC_DEFAULT_CHARSET=UCS2
SMS 閘道伺服器配置
最後,閘道伺服器配置檔案 sms_gateway.cnf 應如下所示:
HISTORY_FILE_DIRECTORY=/sms_gateway_cache/ [SMPP_RELAY=relay1] LISTEN_PORT=503SERVER_HOST=smpp.domain.com SERVER_PORT=377 [SMPP_SERVER=server1] LISTEN_PORT=504 [GATEWAY_PROFILE=sms1] SELECT_RE=000([0-9]{10,10}){0,1} SMSC_DEFAULT_CHARSET=UCS2 |
測試此配置
如果沒有 SMSC 可供測試,您可能會想執行某些回返測試。透過 sms_option 檔案中的一些額外設定,便可以為上述配置執行一些簡單的迴路測試。
sms_option 檔案的額外設定為:
! So that we don’t add text to the body of the SMS message FROM_FORMAT= SUBJECT_FORMAT= CONTENT_PREFIX=
如果沒有這些設定,則包含:
user@domain.com (Sample subject) Sample text
的電子郵件將會轉換成 SMS 郵件:
From:user@domain.com Subject:Sample Subject Msg:Sample text
反之將不會使用行動電話至電子郵件程式碼預期的格式,而是:
user@domain.com (Sample subject) Sample text
因此,需要 (對於迴路測試) 為 FROM_FORMAT、SUBJECT_FORMAT 以及 CONTENT_PREFIX 選項指定空白字串。
傳送定址至 000@sms.domain.com 的測試電子郵件,例如:
user@domain.com (Test message) This is a test message which should loop back
結果是這封電子郵件應路由回電子郵件收件者 user@domain.com。請確定已將 sms.domain.com 增加到您的 DNS 或主機表中,以進行測試。