Updated on 2024-04-19 GMT+08:00

Publishing a JSON Message

Scenarios

You can publish a JSON message to an SMN topic to broadcast the message to different types of subscription endpoints in the topic.

To start your experience with SMN, this topic describes how to create a topic and publish a JSON message.

We will walk you through the following operations in the example:

  • Create a topic Mytopic.
  • Add SMS and email subscriptions to the topic.
  • Publish a message "Dear Sir or Madam, this is an SMS message." to the SMS subscriber.
  • Publish a message "Dear Sir or Madam, this is an email message." to the email subscriber.

Operation Process

Figure 1 shows the process to publish a JSON message.

Figure 1 Process of publishing a JSON message

Step 1. Create a Topic

  1. Log in to the management console.
  2. Click on the upper left to select the desired region and project.
  3. Under Management & Governance, select Simple Message Notification.

    The SMN console is displayed.

  4. In the navigation pane, choose Topic Management > Topics.
  5. In the upper right corner, click Create Topic.
    Figure 2 Create Topic
  6. Set Topic Name to Mytopic.

    For details about the parameter requirements, see Creating a Topic.

  7. Click OK.

    After a topic is created, the system generates a topic URN, which uniquely identifies the topic and cannot be changed. The topic you created is displayed in the topic list.

  8. Click the name of the topic to view its details, including the topic URN, display name, and subscriptions.

Step 2. Add a Subscription

  1. In the navigation pane, choose Topic Management > Subscriptions.
  2. On the Subscriptions page, click Add Subscription.

    The Add Subscription dialog box is displayed.

    Figure 3 Add Subscription
  3. Add an SMS subscription to a topic.
    1. Click beside the Topic Name box to select Mytopic.
    2. Select SMS from the Protocol drop-down list.
    3. In the Endpoint box, enter the subscription endpoint, for example, +8618512345678.
      Enter one endpoint on a separate line.
      Figure 4 Add Subscription (SMS)
    4. Click OK.
  4. Add an email subscription to a topic.
    1. Click beside the Topic Name box to select Mytopic.
    2. Select Email from the Protocol drop-down list.
    3. In the Endpoint box, enter the subscription endpoint.
      Enter one endpoint on a separate line.
      Figure 5 Add Subscription (Email)
    4. Click OK.

      After a subscription is added, the subscription endpoint receives a confirmation message. Confirm the subscription so that the endpoint can receive messages published to the topic.

    • For more details, see Adding a Subscription.
    • To prevent malicious users from attacking subscription endpoints, SMN limits the number of confirmation messages that can be sent to an endpoint within a specified period of time. For details, see section "Traffic Control on Subscription Confirmation" in Simple Message Notification User Guide.
    • SMN does not check whether subscription endpoints exist when you add subscriptions. However, subscribers will not receive notification messages until they confirm their subscriptions.
    • After you add a subscription, SMN sends a confirmation message to the subscription endpoint. The message contains a link for confirming the subscription. The subscription confirmation link is valid within 48 hours. Confirm the subscription on your mobile phone, mailbox, or other endpoints in time.

Step 3. Publish a Message

  1. In the navigation pane, choose Topic Management > Topics.

    The Topics page is displayed.

  2. Locate Mytopic and click Publish Message in the Operation column.
  3. On the Publish Message page, configure the following parameters:
    • Topic Name: The topic name is displayed by default.
    • Message Format: JSON
    • Message:
      {
        "default": "Dear Sir or Madam, this is a default message.",
        "sms": "Dear Sir or Madam, this is an SMS message.",
        "email": "Dear Sir or Madam, this is an Email message."
      }

      For more details, see Publishing a JSON Message.

    Figure 6 Publishing a JSON Message
  4. Click OK to deliver your message to all subscription endpoints.

    For details about messages, see Messages of Different Protocols.

Step 4. Receive the Message

Subscription endpoints of different protocols receive different messages.
  • Email Message

    Email messages contain the message subject, content, and a link to unsubscribe.

  • SMS Message

    SMS messages only contain the message content.