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 | 是 | 否 | 此次訂閱中接收訊息的終端地址。 | 取值:
|
FilterTag | String | 否 | 否 | 此次訂閱中訊息過濾的標籤。 | 不超過16個字元,預設不進行訊息過濾。 說明 標籤一致的訊息才會被推送。 |
NotifyStrategy | String | 否 | 是 | 向Endpoint推送訊息出現錯誤時的重試策略。 | 取值:
重試策略詳情,請參見。 |
NotifyContentFormat | String | 否 | 否 | 向Endpoint推送的訊息格式。 | 取值:
訊息格式詳情,請參見。 |
DlqPolicy | Map | 否 | 是 | 死信策略。 | 更多資訊,請參考DlqPolicy屬性。 |
PushType | String | 否 | 否 | 終端類型。 | 取值:
|
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樣本。