1. 获取AccessKey

为了保证云服务的安全,您需要创建一个能访问移动推送资源的RAM子账号,获取该子账号的AccessKey,并使用这个RAM子账号调用移动推送的OpenAPI。

操作步骤

  1. 创建RAM子账号,操作方法请参见创建RAM用户

  2. 授予RAM子账号管理移动推送(MPush)的权限,操作方法请参见为RAM用户授权

  3. 获取子账号的AccessKey信息请参见获取AccessKey

重要
  • AccessKey包含AccessKey ID和AccessKey Secret。

  • 调用接口前,需配置环境变量,通过环境变量读取访问凭证。配置方法:

    export CC_AK_ENV=<access_key_id>
    export CC_SK_ENV=<access_key_secret>

    <access_key_id>替换为您RAM用户的AccessKey ID,<access_key_secret>替换为AccessKey Secret。

2. 获取AppKey

登录EMAS控制台,在首页我的产品模块单击您的应用,进入应用管理页面,应用管理页面即可查看AppKey。

3. 安装SDK

完成以下操作安装Python SDK。

1、安装SDK核心库:

说明

推荐使用pip命令,安装阿里云SDK核心库。

pip install aliyun-python-sdk-core

2、安装移动推送SDK:

pip install aliyun-python-sdk-push
说明

您也可以在GitHub下载移动推送的SDK。

4. 示例代码

说明

示例代码中的AppKey需替换为您在步骤2中获取到的值。

您也可以使用可视化调试工具OpenAPI Explorer,获取代码示例。

#!/usr/bin/env python
#coding=utf-8

from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.acs_exception.exceptions import ClientException
from aliyunsdkcore.acs_exception.exceptions import ServerException
from aliyunsdkpush.request.v20160801.PushRequest import PushRequest
// 配置SDK Profile
// 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
// 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取AccessKey,来实现API访问的身份验证。
client = AcsClient(os.getenv("CC_AK_ENV"), os.getenv("CC_SK_ENV"), 'cn-hangzhou')

request = PushRequest()
request.set_accept_format('json')

request.set_AppKey("appKey")
request.set_PushType("NOTICE")
request.set_DeviceType("ALL")
request.set_Target("DEVICE")
request.set_TargetValue("deviceIds")
request.set_Body("ALi Push Title")
request.set_Title("Ali Push Body")

response = client.do_action_with_exception(request)
# python2:  print(response) 
print(str(response, encoding='utf-8'))