Updated on 2023-10-16 GMT+08:00

SMN

SMN charges messages separately. For details, see SMN Pricing Details.

Function Overview

  • A topic is a specified event for message publishing or subscription notification. It serves as a message sending channel, where publishers and subscribers can interact with each other. Before configuring notifications, you must create a topic.
  • VOD notification types include Transcoding completed, Snapshot captured, Review completed, Video uploaded, Audio extraction completed, and Thumbnail created. Subscription is to associate a subscriber to a topic. A user can have multiple topics, and each topic has multiple subscribers.

Process Flow

Figure 1 shows the process of configuring notifications.

Figure 1 Process of configuring notifications
  1. Create an SMN Topic on the SMN console.
  2. Configure a topic policy to authorize VOD to publish messages to the topic.
  3. Configure notifications on the VOD console so that you can receive notifications during operations such as transcoding, snapshot capturing, and review.

Creating an SMN Topic

  1. Log in to the SMN console. In the navigation pane, choose Topic Management > Topics. The Topics page is displayed.
  2. Click Create Topic in the upper right corner.
  3. In the displayed dialog box, configure topic information by referring to Table 1. Click OK.

    Table 1 Topic parameters

    Parameter

    Description

    Topic Name

    • This parameter is mandatory.
    • A topic name can include only letters, digits, hyphens (-), and underscores (_) and must start with a letter or digit.
    • Length: 1–256 characters

    Display Name

    This parameter is optional. When sending an email:

    • If the display name is not set, the sender is displayed as username@example.com.
    • Otherwise, the email sender is presented as Display name<username@example.com>.

    Tag

    Identifies cloud resources. This parameter is optional.

  4. Click Add Subscription in the Operation column.
  5. Configure the subscription protocol and endpoints. See Figure 2.

    Figure 2 Adding a subscription

    Table 2 describes the subscription parameters.

    Table 2 Subscription parameters

    Parameter

    Description

    Topic Name

    Name of the topic to be subscribed to. Retain the default value.

    Protocol

    Message notification method. Select a protocol from the drop-down list.

    The common protocols used by MPC are SMS, email, and HTTP/HTTPS.

    Endpoint

    Subscription endpoint. You can enter up to 10 SMS, email, HTTP, or HTTPS endpoints, one in each line.

    • SMS: Enter one or more valid phone numbers.

      The phone number must be preceded by a plus sign (+) and a country code.

      Examples:

      +8600000000000

      +8600000000001

    • Email: Enter one or more valid email addresses.

      Examples:

      username@example.com

      username2@example.com

    • HTTP or HTTPS: Enter one or more public network URLs. HTTPS is recommended, as it is more secure than HTTP.

      Examples:

      https://example.com/notification/action

      https://example2.com/notification/action

  6. Receive a subscription confirmation message and confirm subscription. If the subscription endpoint is an email address, the page shown in Figure 3 is displayed. Then, the subscription endpoints can receive messages published to the topic.

    Figure 3 Message subscription confirmation

Configuring a Topic Policy

  1. In the navigation pane of the SMN console, choose Topic Management > Topics.
  2. Click More > Configure Topic Policy in the Operation column.
  3. Configure topic policy parameters by referring to Figure 4.

    Figure 4 Configuring a topic policy

    Topic policies are classified into basic mode and advanced mode. The basic mode simply specifies which users or cloud services have permissions to publish messages to a topic. See Figure 4.

    Table 3 Description for configuring a topic policy in basic mode

    Item

    Settings

    Description

    Users who can publish messages to this topic

    Topic creator

    Only the topic creator has permission to publish messages to the topic.

    All users

    All users have permission to publish messages to the topic.

    Specified user accounts

    Only specified users have permission to publish messages to the topic.

    Users are specified in the format urn:csp:iam::domainId:root,

    in which domainId indicates the account ID of a user. Every two users are separated with a comma (,). SMN does not limit the number of users you can specify, but the total length of a topic policy cannot exceed 30 KB.
    NOTE:
    • Enter the account ID of the user and click OK. Other information is automatically supplemented by the system.
    • To obtain a user's account ID, log in to the SMN console, hover the mouse over the username in the upper right corner and choose My Credentials from the drop-down list.

    Services that can publish messages to this topic

    See Figure 4.

    Select VOD. VOD has the permissions to access the topic.

Configuring Notifications

  1. Log in to the VOD console.
  2. In the navigation pane, choose Global Settings > Notification Settings.

    Figure 5 Configuring notifications

  3. Select one or more events.
  4. Select one or more message types.

    If Template message and JSON message are both selected, you will receive template messages via SMS and email, and receive JSON messages via HTTP and HTTPS.

    • Select Template message. Table 2 describes what a template message looks like. The variables in the notification text message are subject to the actual operation.
      Table 4 Template message

      Event

      Status

      Message Body

      Transcoding completed

      Completed

      Dear user, your video transcoding task has been completed. Video ID: {asset_id}; name: {title}. Log in to the VOD console or call a VOD API to view transcoding details.

      Failed

      Dear user, an error occurred when transcoding your video. Video ID: {asset_id}; name: {title}; error code: {err_code}; error information: {err_msg}.

      Snapshot captured

      Completed

      Dear user, your snapshot task has been completed. Video ID: {asset_id}; name: {title}. Log in to the VOD console or call a VOD API to view snapshot details.

      Failed

      Dear user, an error occurred when processing your snapshot task. Video ID: {asset_id}; name: {title}; error code: {err_code}; error information: {err_msg}.

      Review completed

      Completed

      Dear user, your review task has been completed. Video ID: {asset_id}; name: {title}; review advice: {suggestion}. Log in to the VOD console or call a VOD API to view review details.

      Failed

      Dear user, an error occurred when reviewing your video. Video ID: {asset_id}; name: {title}; error code: {err_code}; error information: {err_msg}.

      Video uploaded

      Completed

      Dear user, your video has been uploaded. Video ID: {asset_id}; name: {title}. Log in to the VOD console or call a VOD API to view video details.

      Failed

      Dear user, an error occurred when uploading your video. Video ID: {asset_id}; name: {title}; error code: {err_code}; error information: {err_msg}.

      Audio extraction completed

      Completed

      Dear user, your audio extraction task has been completed. Audio ID: {asset_id}; name: {title}. Log in to the VOD console or call a VOD API to view audio details.

      Failed

      Dear user, an error occurred when processing your audio extraction task. Audio ID: {asset_id}; name: {title}; error code: {err_code}; error information: {err_msg}.

      Thumbnail created

      Completed

      Dear user, your video thumbnail has been created. Video ID: {asset_id}; name: {title}. Log in to the VOD console or call a VOD API to view video details.

      Failed

      Dear user, your video thumbnail fails to be created. Video ID: {asset_id}; name: {title}; error code: {err_code}; error information: {err_msg}.

      Parse complete

      Completed

      Dear user, your video has been parsed. Video ID: {asset_id}; name: {title}. Log in to the VOD console or call a VOD API to view video details.

      Failed

      Dear user, an error occurred when parsing your video. Video ID: {asset_id}; name: {title}; error code: {err_code}; error information: {err_msg}.

    • Select JSON message. Table 3 describes what a template message looks like.
      Table 5 JSON message

      Parameter

      Description

      Type

      event_type

      Event type. The options are as follows:

      • transcodeComplete: transcoding (encryption) completed
      • thumbnailComplete: snapshot captured
      • reviewComplete: review completed
      • createComplete: media file created
      • audioExtractComplete: audio extracted
      • coverComplete: thumbnail created
      • parseComplete: media file parsed

      String

      transcode_info

      Transcoding (including encryption) message. For details, see Transcoding Message Body.

      TranscodeInfo

      thumbnail_info

      Snapshot message. For details, see Snapshot Message Body.

      ThumbnailInfo

      review_info

      Review message. For details, see Review Message Body.

      ReviewInfo

      create_info

      Media file upload message. For details, see Media Upload and Audio Extraction Message Body.

      AssetInfo

      audio_extract_info

      Audio extraction message. For details, see Media Upload and Audio Extraction Message Body.

      AssetInfo

      cover_info

      Thumbnail message. For details, see Thumbnail Message Body.

      CoverInfo

      parse_info

      Media file parsing completion message. This parameter is available only when a media file has been parsed. For details, see Media File Parsing Message Body.

      ParseInfo

  5. Select an SMN topic.
  6. Click OK.