MassPushRequest.cc 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. /*
  2. * Copyright 2009-2017 Alibaba Cloud All rights reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #include <alibabacloud/push/model/MassPushRequest.h>
  17. using AlibabaCloud::Push::Model::MassPushRequest;
  18. MassPushRequest::MassPushRequest()
  19. : RpcServiceRequest("push", "2016-08-01", "MassPush") {
  20. setMethod(HttpRequest::Method::Post);
  21. }
  22. MassPushRequest::~MassPushRequest() {}
  23. std::string MassPushRequest::getAccessKeyId() const {
  24. return accessKeyId_;
  25. }
  26. void MassPushRequest::setAccessKeyId(const std::string &accessKeyId) {
  27. accessKeyId_ = accessKeyId;
  28. setParameter(std::string("AccessKeyId"), accessKeyId);
  29. }
  30. std::vector<MassPushRequest::PushTask> MassPushRequest::getPushTask() const {
  31. return pushTask_;
  32. }
  33. void MassPushRequest::setPushTask(const std::vector<MassPushRequest::PushTask> &pushTask) {
  34. pushTask_ = pushTask;
  35. for(int dep1 = 0; dep1 != pushTask.size(); dep1++) {
  36. auto pushTaskObj = pushTask.at(dep1);
  37. std::string pushTaskObjStr = std::string("PushTask") + "." + std::to_string(dep1 + 1);
  38. setBodyParameter(pushTaskObjStr + ".AndroidNotificationBarType", std::to_string(pushTaskObj.androidNotificationBarType));
  39. setBodyParameter(pushTaskObjStr + ".Body", pushTaskObj.body);
  40. setBodyParameter(pushTaskObjStr + ".DeviceType", pushTaskObj.deviceType);
  41. setBodyParameter(pushTaskObjStr + ".PushTime", pushTaskObj.pushTime);
  42. setBodyParameter(pushTaskObjStr + ".SendSpeed", std::to_string(pushTaskObj.sendSpeed));
  43. setBodyParameter(pushTaskObjStr + ".AndroidNotificationHuaweiChannel", pushTaskObj.androidNotificationHuaweiChannel);
  44. setBodyParameter(pushTaskObjStr + ".AndroidPopupActivity", pushTaskObj.androidPopupActivity);
  45. setBodyParameter(pushTaskObjStr + ".iOSRemindBody", pushTaskObj.iOSRemindBody);
  46. setBodyParameter(pushTaskObjStr + ".Trim", pushTaskObj.trim ? "true" : "false");
  47. setBodyParameter(pushTaskObjStr + ".AndroidMessageVivoCategory", pushTaskObj.androidMessageVivoCategory);
  48. setBodyParameter(pushTaskObjStr + ".AndroidNotifyType", pushTaskObj.androidNotifyType);
  49. setBodyParameter(pushTaskObjStr + ".AndroidPopupTitle", pushTaskObj.androidPopupTitle);
  50. setBodyParameter(pushTaskObjStr + ".AndroidMessageHuaweiCategory", pushTaskObj.androidMessageHuaweiCategory);
  51. setBodyParameter(pushTaskObjStr + ".iOSMusic", pushTaskObj.iOSMusic);
  52. setBodyParameter(pushTaskObjStr + ".iOSApnsEnv", pushTaskObj.iOSApnsEnv);
  53. setBodyParameter(pushTaskObjStr + ".iOSMutableContent", pushTaskObj.iOSMutableContent ? "true" : "false");
  54. setBodyParameter(pushTaskObjStr + ".AndroidNotificationBarPriority", std::to_string(pushTaskObj.androidNotificationBarPriority));
  55. setBodyParameter(pushTaskObjStr + ".ExpireTime", pushTaskObj.expireTime);
  56. setBodyParameter(pushTaskObjStr + ".AndroidImageUrl", pushTaskObj.androidImageUrl);
  57. setBodyParameter(pushTaskObjStr + ".AndroidHonorTargetUserType", std::to_string(pushTaskObj.androidHonorTargetUserType));
  58. setBodyParameter(pushTaskObjStr + ".AndroidNotificationVivoChannel", pushTaskObj.androidNotificationVivoChannel);
  59. setBodyParameter(pushTaskObjStr + ".iOSNotificationCategory", pushTaskObj.iOSNotificationCategory);
  60. setBodyParameter(pushTaskObjStr + ".AndroidNotificationXiaomiChannel", pushTaskObj.androidNotificationXiaomiChannel);
  61. setBodyParameter(pushTaskObjStr + ".StoreOffline", pushTaskObj.storeOffline ? "true" : "false");
  62. setBodyParameter(pushTaskObjStr + ".iOSRelevanceScore", std::to_string(pushTaskObj.iOSRelevanceScore));
  63. setBodyParameter(pushTaskObjStr + ".AndroidVivoPushMode", std::to_string(pushTaskObj.androidVivoPushMode));
  64. setBodyParameter(pushTaskObjStr + ".AndroidInboxBody", pushTaskObj.androidInboxBody);
  65. setBodyParameter(pushTaskObjStr + ".JobKey", pushTaskObj.jobKey);
  66. setBodyParameter(pushTaskObjStr + ".AndroidOpenUrl", pushTaskObj.androidOpenUrl);
  67. setBodyParameter(pushTaskObjStr + ".AndroidXiaoMiNotifyBody", pushTaskObj.androidXiaoMiNotifyBody);
  68. setBodyParameter(pushTaskObjStr + ".iOSSubtitle", pushTaskObj.iOSSubtitle);
  69. setBodyParameter(pushTaskObjStr + ".AndroidXiaomiBigPictureUrl", pushTaskObj.androidXiaomiBigPictureUrl);
  70. setBodyParameter(pushTaskObjStr + ".iOSRemind", pushTaskObj.iOSRemind ? "true" : "false");
  71. setBodyParameter(pushTaskObjStr + ".iOSNotificationThreadId", pushTaskObj.iOSNotificationThreadId);
  72. setBodyParameter(pushTaskObjStr + ".AndroidHuaweiTargetUserType", std::to_string(pushTaskObj.androidHuaweiTargetUserType));
  73. setBodyParameter(pushTaskObjStr + ".AndroidMusic", pushTaskObj.androidMusic);
  74. setBodyParameter(pushTaskObjStr + ".iOSNotificationCollapseId", pushTaskObj.iOSNotificationCollapseId);
  75. setBodyParameter(pushTaskObjStr + ".AndroidMessageHuaweiUrgency", pushTaskObj.androidMessageHuaweiUrgency);
  76. setBodyParameter(pushTaskObjStr + ".PushType", pushTaskObj.pushType);
  77. setBodyParameter(pushTaskObjStr + ".iOSInterruptionLevel", pushTaskObj.iOSInterruptionLevel);
  78. setBodyParameter(pushTaskObjStr + ".AndroidExtParameters", pushTaskObj.androidExtParameters);
  79. setBodyParameter(pushTaskObjStr + ".iOSBadge", std::to_string(pushTaskObj.iOSBadge));
  80. setBodyParameter(pushTaskObjStr + ".AndroidBigBody", pushTaskObj.androidBigBody);
  81. setBodyParameter(pushTaskObjStr + ".iOSBadgeAutoIncrement", pushTaskObj.iOSBadgeAutoIncrement ? "true" : "false");
  82. setBodyParameter(pushTaskObjStr + ".AndroidOpenType", pushTaskObj.androidOpenType);
  83. setBodyParameter(pushTaskObjStr + ".Title", pushTaskObj.title);
  84. setBodyParameter(pushTaskObjStr + ".AndroidRenderStyle", pushTaskObj.androidRenderStyle);
  85. setBodyParameter(pushTaskObjStr + ".iOSExtParameters", pushTaskObj.iOSExtParameters);
  86. setBodyParameter(pushTaskObjStr + ".AndroidHuaweiReceiptId", pushTaskObj.androidHuaweiReceiptId);
  87. setBodyParameter(pushTaskObjStr + ".AndroidNotificationHonorChannel", pushTaskObj.androidNotificationHonorChannel);
  88. setBodyParameter(pushTaskObjStr + ".AndroidXiaomiImageUrl", pushTaskObj.androidXiaomiImageUrl);
  89. setBodyParameter(pushTaskObjStr + ".AndroidTargetUserType", std::to_string(pushTaskObj.androidTargetUserType));
  90. setBodyParameter(pushTaskObjStr + ".AndroidPopupBody", pushTaskObj.androidPopupBody);
  91. setBodyParameter(pushTaskObjStr + ".AndroidBigPictureUrl", pushTaskObj.androidBigPictureUrl);
  92. setBodyParameter(pushTaskObjStr + ".iOSSilentNotification", pushTaskObj.iOSSilentNotification ? "true" : "false");
  93. setBodyParameter(pushTaskObjStr + ".AndroidNotificationGroup", pushTaskObj.androidNotificationGroup);
  94. setBodyParameter(pushTaskObjStr + ".SendChannels", pushTaskObj.sendChannels);
  95. setBodyParameter(pushTaskObjStr + ".Target", pushTaskObj.target);
  96. setBodyParameter(pushTaskObjStr + ".AndroidBigTitle", pushTaskObj.androidBigTitle);
  97. setBodyParameter(pushTaskObjStr + ".AndroidNotificationChannel", pushTaskObj.androidNotificationChannel);
  98. setBodyParameter(pushTaskObjStr + ".AndroidRemind", pushTaskObj.androidRemind ? "true" : "false");
  99. setBodyParameter(pushTaskObjStr + ".AndroidActivity", pushTaskObj.androidActivity);
  100. setBodyParameter(pushTaskObjStr + ".AndroidNotificationNotifyId", std::to_string(pushTaskObj.androidNotificationNotifyId));
  101. setBodyParameter(pushTaskObjStr + ".TargetValue", pushTaskObj.targetValue);
  102. setBodyParameter(pushTaskObjStr + ".AndroidXiaoMiNotifyTitle", pushTaskObj.androidXiaoMiNotifyTitle);
  103. setBodyParameter(pushTaskObjStr + ".AndroidXiaoMiActivity", pushTaskObj.androidXiaoMiActivity);
  104. }
  105. }
  106. long MassPushRequest::getAppKey() const {
  107. return appKey_;
  108. }
  109. void MassPushRequest::setAppKey(long appKey) {
  110. appKey_ = appKey;
  111. setParameter(std::string("AppKey"), std::to_string(appKey));
  112. }