xjconline 2 anni fa
parent
commit
b8003978fc
1 ha cambiato i file con 19 aggiunte e 12 eliminazioni
  1. 19 12
      src/utils/aliyunpush.py

+ 19 - 12
src/utils/aliyunpush.py

@@ -1,9 +1,9 @@
 #-*-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
+from aliyunsdkpush.request.v20160801.PushNoticeToAndroidRequest import PushNoticeToAndroidRequest
 
 class AliyunPush(object):
     def __init__(self):
@@ -11,15 +11,21 @@ class AliyunPush(object):
         self.ACCESSKEYSECRET = "OdGWSBRjkJxaPjgmE38eQ8nzkI6nRk"
         self.REGIONID = "cn-shenzhen"
         self.client = AcsClient(self.ACCESSKEYID,self.ACCESSKEYSECRET,self.REGIONID)
-        self.request = PushRequest()
-        self.request.set_accept_format("json")
-        self.request.set_iOSApnsEnv('DEV')
-        self.request.set_AppKey("333793060")
-        print(dir(self.request),1111111111)
 
-    def push_notice_by_userid(self,user_id,title,body,params):
-        self.request.set_PushType("NOTICE")
-        self.request.set_DeviceType("ALL")
+    def push_notice_by_userid(self,user_id,title,body,params,platform):
+        if platform == "ios":
+            self.request = PushRequest()
+            self.request.set_AppKey("333793060")
+            self.request.set_iOSApnsEnv('DEV')
+            self.request.set_iOSExtParameters(params)
+            self.request.set_PushType("NOTICE")
+
+            self.request.set_DeviceType("ALL")
+        else:
+            self.request = PushNoticeToAndroidRequest()
+            self.request.set_AppKey("333793063")
+            self.request.set_ExtParameters(params)
+
         if user_id == "ALL":
             self.request.set_Target("ALL")
             self.request.set_TargetValue("ALL")
@@ -27,9 +33,10 @@ class AliyunPush(object):
             self.request.set_Target("ACCOUNT")
             self.request.set_TargetValue(str(user_id))
 
+        self.request.set_accept_format("json")
         self.request.set_Body(body)
         self.request.set_Title(title)
-        self.request.set_iOSExtParameters(params)
+
         response = self.client.do_action_with_exception(self.request)
         return response
 
@@ -37,10 +44,10 @@ aliyunpush = AliyunPush()
 
 
 if __name__ == "__main__":
-    user_id = 6209
+    user_id = 15103
     title = "测试"
     body = "测试"
     params = {"type":"message","id":user_id}
-    res = aliyunpush.push_notice_by_userid(user_id,title,body,params)
+    res = aliyunpush.push_notice_by_userid(user_id,title,body,params,"android")
     print(params,res)