全部產品
Search
文件中心

:ALIYUN::MNS::Subscription

更新時間:May 30, 2025

ALIYUN::MNS::Subscription類型用於描述一個訂閱關係,包括被訂閱的主題和接收訊息的終端地址(Endpoint)。

文法

{
  "Type": "ALIYUN::MNS::Subscription",
  "Properties": {
    "Endpoint": String,
    "NotifyStrategy": String,
    "FilterTag": String,
    "NotifyContentFormat": String,
    "SubscriptionName": String,
    "TopicName": String,
    "DlqPolicy": Map,
    "PushType": String
  }
}

屬性

屬性名稱

類型

必須

允許更新

描述

約束

TopicName

String

主題名稱。

同一帳號同一地區下,主題名稱不能重複。

長度不超過256個字元。必須以英文字母開頭,可包含英文字母、數字和短劃線(-)。

SubscriptionName

String

訂閱名稱。

長度不超過256個字元。必須以英文字母開頭,可包含英文字母、數字和短劃線(-)。

Endpoint

String

此次訂閱中接收訊息的終端地址。

取值:

  • HttpEndpoint:必須以http://作為首碼。

  • QueueEndpoint:格式為acs:mns:{REGION}:{AccountID}:queues/{QueueName}

  • MailEndpoint:格式為mail:directmail:{MailAddress}

  • SmsEndpoint:格式為sms:directsms:anonymoussms:directsms:{Phone}

FilterTag

String

此次訂閱中訊息過濾的標籤。

不超過16個字元,預設不進行訊息過濾。

說明

標籤一致的訊息才會被推送。

NotifyStrategy

String

向Endpoint推送訊息出現錯誤時的重試策略。

取值:

  • BACKOFF_RETRY(預設值)

  • EXPONENTIAL_DECAY_RETRY

重試策略詳情,請參見。

NotifyContentFormat

String

向Endpoint推送的訊息格式。

取值:

  • XML(預設值)

  • JSON

  • SIMPLIFIED

訊息格式詳情,請參見。

DlqPolicy

Map

死信策略。

更多資訊,請參考DlqPolicy屬性。

PushType

String

終端類型。

取值:

  • http:HTTP 推送類型。

  • queue:隊列推送類型。

  • mpush:Alibaba Cloud Mobile Push類型。

  • alisms:阿里簡訊推送類型。

  • email:郵箱推送類型。

DlqPolicy文法

"DlqPolicy": {
  "DeadLetterTargetQueue": String,
  "Enabled": Boolean
}

DlqPolicy屬性

屬性名稱

類型

必須

允許更新

描述

約束

DeadLetterTargetQueue

String

死信訊息投遞目標隊列。

Enabled

Boolean

是否開啟死信訊息投遞。

傳回值

Fn::GetAtt

  • SubscriptionUrl:建立的訂閱URL。

  • SubscriptionName:訂閱名稱。

  • TopicName:主題名稱。

樣本

ROSTemplateFormatVersion: '2015-09-01'
Parameters: {}
Resources:
  Subscription:
    Type: ALIYUN::MNS::Subscription
    Properties:
      TopicName: TestTopic
      SubscriptionName: TestSubscription
      Endpoint: http://endpoint.com
Outputs:
  SubscriptionUrl:
    Description: URL of created subscription
    Value:
      Fn::GetAtt:
        - Subscription
        - SubscriptionUrl
  SubscriptionName:
    Description: Subscription name
    Value:
      Fn::GetAtt:
        - Subscription
        - SubscriptionName
  TopicName:
    Description: Topic name
    Value:
      Fn::GetAtt:
        - Subscription
        - TopicName
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
  },
  "Resources": {
    "Subscription": {
      "Type": "ALIYUN::MNS::Subscription",
      "Properties": {
        "TopicName": "TestTopic",
        "SubscriptionName": "TestSubscription",
        "Endpoint": "http://endpoint.com"
      }
    }
  },
  "Outputs": {
    "SubscriptionUrl": {
      "Description": "URL of created subscription",
      "Value": {
        "Fn::GetAtt": [
          "Subscription",
          "SubscriptionUrl"
        ]
      }
    },
    "SubscriptionName": {
      "Description": "Subscription name",
      "Value": {
        "Fn::GetAtt": [
          "Subscription",
          "SubscriptionName"
        ]
      }
    },
    "TopicName": {
      "Description": "Topic name",
      "Value": {
        "Fn::GetAtt": [
          "Subscription",
          "TopicName"
        ]
      }
    }
  }
}

更多樣本,請參見建立主題、建立訊息佇列和描述訂閱關係的組合YAML樣本