AmazonSNSを使ってPythonからAndroidデバイスにPUSH通知を送信する最小限のコード

Android側の処理はこちらのサイトに詳しく説明されているのでこちらを見てください。

最小限のコード

import boto
import re
import os
import boto.sns

class PushManager(object):
    help = 'setup'


    def publish(self):
        AWS_ACCESS_KEY = settings.LOCAL_AWS_ACCESS_KEY
        AWS_SECRET_KEY = settings.LOCAL_AWS_SECRET_KEY

        arn = 'your_arn'

        sns_connection = boto.sns.connect_to_region('ap-northeast-1',
                                                    aws_access_key_id=AWS_ACCESS_KEY,
                                                    aws_secret_access_key=AWS_SECRET_KEY)

        android_token= 'Androidアプリ側のRegisteration_IDを記載'

        res = sns_connection.create_platform_endpoint(
            platform_application_arn=arn,
            token= android_token,
        custom_user_data = 'test')

        endpoint = res.get('CreatePlatformEndpointResponse').get('CreatePlatformEndpointResult').get('EndpointArn')

        sns_connection.publish(target_arn=endpoint, message=u"Hello World")

使い方

p = PushManager()
p.publish()

感想

iOSアプリと違って証明書周りは簡単だけど、逆にアプリ側の実装が面倒だ。。。

Related Contents

Pickup Contents