LogoLogo
  • Introduction
  • Features
  • Getting Started
    • Cortex User Guide
      • Organizations
      • Log in
      • Generate an API key
      • Make your first API request
      • Configure the org settings
      • Set up a data model
        • Create custom objects
        • Add custom properties
      • One-to-many relationships
      • Read and write data
      • Making a Request
      • Handling responses
      • Authentication
      • Two-factor authentication
      • Set third-party cookies
      • Connections
      • Upload files
      • Cortex iOS
      • Get started with Swift
      • Cortex service accounts
      • Cortex developer tools
      • Automated Account Notifications
  • Cortex API
    • Overview
    • Objects
      • Objects Overview
      • Organization
      • Account
      • Connections
      • Notifications
      • Stats
      • Logs
      • Export
      • Events
      • Room
    • Object Definition
      • Object Properties
        • Any
        • Binary
        • Boolean
        • Date
        • Document
        • File
        • Geometry
        • List
        • Number
        • ObjectId
        • Reference
        • String
    • Object Types
    • Access Control
    • Querying
      • Query Operators
      • Property Selection
      • Property Access
    • Aggregating
      • Aggregation Operators
    • Scripting
      • Script Types
      • Script Limits
      • ObjectId
      • CortexObject
        • Accounts
        • Views
      • Cursors
      • Operations
      • Script Modules
        • API Module
        • Base64 Module
        • Cache Module
        • Connections Module
        • Console Module
        • Consts Module
        • Counters Module
        • Crypto Module
        • HTTP Module
        • Logger Module
        • Notifications Module
        • Request Module
        • Response Module
        • SAML Module
        • Schemas Modules
        • Script Module
        • Session Module
        • Util.id Module
        • Util.ip Module
        • Util.paths Module
        • XML Module
        • Developer
        • Config
        • Renderer
        • SFTP
        • FTP
        • DB
          • Cursors
          • Driver
      • Static Methods
        • Accounts
        • Views
        • Cursors
      • Audit
      • Environments
      • HTTP Driver
      • Notifications
        • Firebase Cloud Messaging (FCM)
        • Tencent Push Notification Service Configuration
      • Televisit
      • Transforms
      • Localization
      • Available Javascript Libraries
    • Decorators
      • Runtime
        • Acl
        • As
        • Log
        • Profile
      • Static
        • Env
        • Job
        • Object
        • On
        • Policy
        • Route
        • Transform
        • Trigger
    • Expressions
      • Primer
      • Pipelines
      • Operators
      • Accumulators
      • Variables
      • Conditionals
      • Transforms
      • Triggers
      • On
      • Events
    • Faults
      • Fault Reference
  • Releases
    • Cortex Release Notes
      • Cortex API 2.28.3 (R3.4.6)
      • Cortex API 2.28.1 (R3.4.3)
      • Cortex API 2.27.2 (R3.4.1)
      • Cortex API 2.27.1 (R3.3.5)
      • SQL DB Connector 1.3.4 (R3.3.3)
      • Cortex API 2.26.2 (R3.3.1)
      • Cortex API 2.26.1 (R3.2.2)
      • Cortex API 2.26.0 (R3.2.1)
      • SQL DB Connector 1.3.3
      • Cortex API 2.25.0 (R3.1.1)
      • SQL DB Connector 1.3.2 (R3.1.0)
      • Cortex API 2.24.2 (R3.0.2)
      • SQL DB Connector 1.3.1 (R3.0.0)
      • Cortex API 2.24.1 (R2.3.3)
      • Cortex API 2.24.0 (R2.3.2)
      • SQL DB Connector 1.3.0 (R2.3.0)
      • Cortex API 2.23.0 (R2.2.4)
      • SQL DB Connector 1.2.0 (R2.2.0)
      • Cortex API 2.22.2 (R2.1.2)
      • Cortex API 2.22.1 and SQL DB Connector 1.1.1 (R2.0.1)
      • Cortex API 2.22.0
      • Cortex API 2.21.3
      • Cortex API 2.21.2
      • Cortex Web 4.16.0
      • Cortex Web 4.15.1
      • Cortex API 2.20.1
      • Cortex Web 4.14.0
      • Cortex Renderer 1.3.3
      • Cortex API 2.19.4
      • Cortex API 2.19.3 and Cortex Web 4.13.1
      • Cortex Renderer 1.3.2
      • Cortex API 2.19.1
      • Cortex API 2.18.0
      • Cortex API 2.17.6
      • Cortex API 2.17.5
      • Cortex API 2.17.4
      • Cortex API 2.17.3
      • Cortex API 2.17.2
      • Cortex API 2.17.1
      • Cortex API 2.16.0
      • Cortex API 2.15.9
      • Cortex API 2.15.8-1
      • Cortex 2.15.8
      • Cortex API 2.18.1
      • Cortex API 2.16.1
      • Cortex Renderer 1.3.1
      • Cortex Renderer 1.3.0
      • Cortex Renderer 1.2.2
      • Cortex Renderer 1.2.1
      • Cortex Renderer 1.2.0
    • Third-Party License Attribution

© 2025 Medable, Inc. All rights reserved.

On this page
  • Requirements
  • Configuration
  • Modifications
  • Example

Was this helpful?

  1. Cortex API
  2. Scripting
  3. Notifications

Tencent Push Notification Service Configuration

For customers who cannot use APN or FCM, Medable incorporates the Tencent notification system.

Last updated 3 years ago

Was this helpful?

The Tencent push notification API has been integrated into the "endpoints.push.tpns" key of the Cortex script notification module send options.

All Android parameters are available, however, the behavior of a few has been slightly modified.

For Tencent's full API specification, please see .

Requirements

  • Cortex API 2.15.8

  • Axon 4.14.3+

  • PATAND 4.13.300 (Android app for study patients)

Configuration

  1. Obtain Tencent Push Notification Service credentials

  2. Add credentials to Android Patient App

    • Access ID

    • Secret Key

  3. For Cortex 2.16 and earlier, patch the c_axon_room_event_library Axon script

    • In the App Platform open Cortex -> Settings -> Scripts

    • Select the Axon - Room Event Library script

    • Patch the sendIncomingCallNotification function to explicitly include messageType and customContent Tencent Push Notification Service options

    • Press the "Save Script" button at the bottom of the screen

Verification

  • Log in to the Android Patient App and verify the user has a Tencent token

  • Send a test notification

Modifications

Android

  • tpns.audience_type defaults to "token"

  • tpns.message.content defaults to the value of the options.message parameter

  • tpns.message.android.custom_content is set to the value of the payload if the payload is provided

Example

const notifications = require('notifications'),
      payload = { key: 'value' },
      options = {
        message: 'message', 
        endpoints: { 
          push: { 
            tpns: { 
              upload_id: 'upload_id', 
              message_type: 'notify', 
              message: { 
                title: 'title', 
                content: 'content', 
                xg_media_resources: 'url', 
                android: {
                  n_ch_id: 'channelId', 
                  n_ch_name: 'channelName', 
                  ring: 1, 
                  ring_raw: 'ringtoneFile',
                  vibrate: 0,
                  lights: 1,
                  clearable: 1
                }
              }
            }
          }
        },
        recipient: 'accountId'
      }

return notifications.send(payload, options)
https://intl.cloud.tencent.com/document/product/1024/33764