為 SP 端提供短信業務,基於 CMPP 3.0 協議重構開源 CMPP30 類:標準化異步模式、支持 Provision 接口、打包發布供交流學習。
public event EventHandler SMS; // 所有交互觸發
public CMPP30(string spid, string password, string address, int port);
Start():啟動服務Stop():停止服務(單調用,需重新實例化)Send(CMPP_SUBMIT submit):同步發送,返回 CMPP_SUBMIT_RESP(含 MsgID)Send(string text, ...):參數化同步發送BeginSend(CMPP_SUBMIT, AsyncCallback, object):標準 APM 異步發送BeginSend(string text, ..., AsyncCallback, object):參數化異步發送EndSend(IAsyncResult):結束異步,返回響應| 特性 | 說明 |
|---|---|
| 標準異步模式 | Begin/EndSend 符合 .NET APM,可轉 Task |
| 直接返回響應 | 同步 Send 返回 Submit_Resp,無需事件匹配 MsgID |
| 事件驅動 | 所有網絡交互觸發 SMS 事件,攜帶 SMS_EVENT 枚舉 |
| 單調用限制 | Start/Stop 僅可調用一次,避免狀態混亂 |
Provision 抽象基類dsmp.wsdl本文提供 CMPP 3.0 SP 端核心類的完整 API 設計總覽,確立了標準異步、直接響應、事件驅動、單調用四大工程原則,為後續 Provision 接口實現奠定架構基礎。