PushResponse Alibabacloud_Push20160801::Client::pushWithOptions()

in push-20160801/src/push_20160801.cpp [536:877]


PushResponse Alibabacloud_Push20160801::Client::pushWithOptions(shared_ptr<PushRequest> request, shared_ptr<Darabonba_Util::RuntimeOptions> runtime) {
  Darabonba_Util::Client::validateModel(request);
  shared_ptr<map<string, boost::any>> query = make_shared<map<string, boost::any>>(map<string, boost::any>());
  if (!Darabonba_Util::Client::isUnset<string>(request->androidActivity)) {
    query->insert(pair<string, string>("AndroidActivity", *request->androidActivity));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidBadgeAddNum)) {
    query->insert(pair<string, long>("AndroidBadgeAddNum", *request->androidBadgeAddNum));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidBadgeClass)) {
    query->insert(pair<string, string>("AndroidBadgeClass", *request->androidBadgeClass));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidBadgeSetNum)) {
    query->insert(pair<string, long>("AndroidBadgeSetNum", *request->androidBadgeSetNum));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidBigBody)) {
    query->insert(pair<string, string>("AndroidBigBody", *request->androidBigBody));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidBigPictureUrl)) {
    query->insert(pair<string, string>("AndroidBigPictureUrl", *request->androidBigPictureUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidBigTitle)) {
    query->insert(pair<string, string>("AndroidBigTitle", *request->androidBigTitle));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidExtParameters)) {
    query->insert(pair<string, string>("AndroidExtParameters", *request->androidExtParameters));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidHonorTargetUserType)) {
    query->insert(pair<string, long>("AndroidHonorTargetUserType", *request->androidHonorTargetUserType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidHuaweiReceiptId)) {
    query->insert(pair<string, string>("AndroidHuaweiReceiptId", *request->androidHuaweiReceiptId));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidHuaweiTargetUserType)) {
    query->insert(pair<string, long>("AndroidHuaweiTargetUserType", *request->androidHuaweiTargetUserType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidImageUrl)) {
    query->insert(pair<string, string>("AndroidImageUrl", *request->androidImageUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidInboxBody)) {
    query->insert(pair<string, string>("AndroidInboxBody", *request->androidInboxBody));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidMessageHuaweiCategory)) {
    query->insert(pair<string, string>("AndroidMessageHuaweiCategory", *request->androidMessageHuaweiCategory));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidMessageHuaweiUrgency)) {
    query->insert(pair<string, string>("AndroidMessageHuaweiUrgency", *request->androidMessageHuaweiUrgency));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidMessageOppoCategory)) {
    query->insert(pair<string, string>("AndroidMessageOppoCategory", *request->androidMessageOppoCategory));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidMessageOppoNotifyLevel)) {
    query->insert(pair<string, long>("AndroidMessageOppoNotifyLevel", *request->androidMessageOppoNotifyLevel));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidMessageVivoCategory)) {
    query->insert(pair<string, string>("AndroidMessageVivoCategory", *request->androidMessageVivoCategory));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidMusic)) {
    query->insert(pair<string, string>("AndroidMusic", *request->androidMusic));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidNotificationBarPriority)) {
    query->insert(pair<string, long>("AndroidNotificationBarPriority", *request->androidNotificationBarPriority));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidNotificationBarType)) {
    query->insert(pair<string, long>("AndroidNotificationBarType", *request->androidNotificationBarType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidNotificationChannel)) {
    query->insert(pair<string, string>("AndroidNotificationChannel", *request->androidNotificationChannel));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidNotificationGroup)) {
    query->insert(pair<string, string>("AndroidNotificationGroup", *request->androidNotificationGroup));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidNotificationHonorChannel)) {
    query->insert(pair<string, string>("AndroidNotificationHonorChannel", *request->androidNotificationHonorChannel));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidNotificationHuaweiChannel)) {
    query->insert(pair<string, string>("AndroidNotificationHuaweiChannel", *request->androidNotificationHuaweiChannel));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidNotificationNotifyId)) {
    query->insert(pair<string, long>("AndroidNotificationNotifyId", *request->androidNotificationNotifyId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidNotificationThreadId)) {
    query->insert(pair<string, string>("AndroidNotificationThreadId", *request->androidNotificationThreadId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidNotificationVivoChannel)) {
    query->insert(pair<string, string>("AndroidNotificationVivoChannel", *request->androidNotificationVivoChannel));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidNotificationXiaomiChannel)) {
    query->insert(pair<string, string>("AndroidNotificationXiaomiChannel", *request->androidNotificationXiaomiChannel));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidNotifyType)) {
    query->insert(pair<string, string>("AndroidNotifyType", *request->androidNotifyType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidOpenType)) {
    query->insert(pair<string, string>("AndroidOpenType", *request->androidOpenType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidOpenUrl)) {
    query->insert(pair<string, string>("AndroidOpenUrl", *request->androidOpenUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidPopupActivity)) {
    query->insert(pair<string, string>("AndroidPopupActivity", *request->androidPopupActivity));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidPopupBody)) {
    query->insert(pair<string, string>("AndroidPopupBody", *request->androidPopupBody));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidPopupTitle)) {
    query->insert(pair<string, string>("AndroidPopupTitle", *request->androidPopupTitle));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->androidRemind)) {
    query->insert(pair<string, bool>("AndroidRemind", *request->androidRemind));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidRenderStyle)) {
    query->insert(pair<string, long>("AndroidRenderStyle", *request->androidRenderStyle));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidTargetUserType)) {
    query->insert(pair<string, long>("AndroidTargetUserType", *request->androidTargetUserType));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->androidVivoPushMode)) {
    query->insert(pair<string, long>("AndroidVivoPushMode", *request->androidVivoPushMode));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidVivoReceiptId)) {
    query->insert(pair<string, string>("AndroidVivoReceiptId", *request->androidVivoReceiptId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidXiaoMiActivity)) {
    query->insert(pair<string, string>("AndroidXiaoMiActivity", *request->androidXiaoMiActivity));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidXiaoMiNotifyBody)) {
    query->insert(pair<string, string>("AndroidXiaoMiNotifyBody", *request->androidXiaoMiNotifyBody));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidXiaoMiNotifyTitle)) {
    query->insert(pair<string, string>("AndroidXiaoMiNotifyTitle", *request->androidXiaoMiNotifyTitle));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidXiaomiBigPictureUrl)) {
    query->insert(pair<string, string>("AndroidXiaomiBigPictureUrl", *request->androidXiaomiBigPictureUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->androidXiaomiImageUrl)) {
    query->insert(pair<string, string>("AndroidXiaomiImageUrl", *request->androidXiaomiImageUrl));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->appKey)) {
    query->insert(pair<string, long>("AppKey", *request->appKey));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->body)) {
    query->insert(pair<string, string>("Body", *request->body));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->deviceType)) {
    query->insert(pair<string, string>("DeviceType", *request->deviceType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->expireTime)) {
    query->insert(pair<string, string>("ExpireTime", *request->expireTime));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyAction)) {
    query->insert(pair<string, string>("HarmonyAction", *request->harmonyAction));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyActionType)) {
    query->insert(pair<string, string>("HarmonyActionType", *request->harmonyActionType));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->harmonyBadgeAddNum)) {
    query->insert(pair<string, long>("HarmonyBadgeAddNum", *request->harmonyBadgeAddNum));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->harmonyBadgeSetNum)) {
    query->insert(pair<string, long>("HarmonyBadgeSetNum", *request->harmonyBadgeSetNum));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyCategory)) {
    query->insert(pair<string, string>("HarmonyCategory", *request->harmonyCategory));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyExtParameters)) {
    query->insert(pair<string, string>("HarmonyExtParameters", *request->harmonyExtParameters));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyExtensionExtraData)) {
    query->insert(pair<string, string>("HarmonyExtensionExtraData", *request->harmonyExtensionExtraData));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->harmonyExtensionPush)) {
    query->insert(pair<string, bool>("HarmonyExtensionPush", *request->harmonyExtensionPush));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyImageUrl)) {
    query->insert(pair<string, string>("HarmonyImageUrl", *request->harmonyImageUrl));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyInboxContent)) {
    query->insert(pair<string, string>("HarmonyInboxContent", *request->harmonyInboxContent));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyNotificationSlotType)) {
    query->insert(pair<string, string>("HarmonyNotificationSlotType", *request->harmonyNotificationSlotType));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->harmonyNotifyId)) {
    query->insert(pair<string, long>("HarmonyNotifyId", *request->harmonyNotifyId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyReceiptId)) {
    query->insert(pair<string, string>("HarmonyReceiptId", *request->harmonyReceiptId));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->harmonyRemind)) {
    query->insert(pair<string, bool>("HarmonyRemind", *request->harmonyRemind));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyRemindBody)) {
    query->insert(pair<string, string>("HarmonyRemindBody", *request->harmonyRemindBody));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyRemindTitle)) {
    query->insert(pair<string, string>("HarmonyRemindTitle", *request->harmonyRemindTitle));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyRenderStyle)) {
    query->insert(pair<string, string>("HarmonyRenderStyle", *request->harmonyRenderStyle));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->harmonyTestMessage)) {
    query->insert(pair<string, bool>("HarmonyTestMessage", *request->harmonyTestMessage));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->harmonyUri)) {
    query->insert(pair<string, string>("HarmonyUri", *request->harmonyUri));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->idempotentToken)) {
    query->insert(pair<string, string>("IdempotentToken", *request->idempotentToken));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->jobKey)) {
    query->insert(pair<string, string>("JobKey", *request->jobKey));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->pushTime)) {
    query->insert(pair<string, string>("PushTime", *request->pushTime));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->pushType)) {
    query->insert(pair<string, string>("PushType", *request->pushType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sendChannels)) {
    query->insert(pair<string, string>("SendChannels", *request->sendChannels));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->sendSpeed)) {
    query->insert(pair<string, long>("SendSpeed", *request->sendSpeed));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->smsDelaySecs)) {
    query->insert(pair<string, long>("SmsDelaySecs", *request->smsDelaySecs));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->smsParams)) {
    query->insert(pair<string, string>("SmsParams", *request->smsParams));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->smsSendPolicy)) {
    query->insert(pair<string, long>("SmsSendPolicy", *request->smsSendPolicy));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->smsSignName)) {
    query->insert(pair<string, string>("SmsSignName", *request->smsSignName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->smsTemplateName)) {
    query->insert(pair<string, string>("SmsTemplateName", *request->smsTemplateName));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->storeOffline)) {
    query->insert(pair<string, bool>("StoreOffline", *request->storeOffline));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->target)) {
    query->insert(pair<string, string>("Target", *request->target));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->targetValue)) {
    query->insert(pair<string, string>("TargetValue", *request->targetValue));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->title)) {
    query->insert(pair<string, string>("Title", *request->title));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->trim)) {
    query->insert(pair<string, bool>("Trim", *request->trim));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSApnsEnv)) {
    query->insert(pair<string, string>("iOSApnsEnv", *request->iOSApnsEnv));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->iOSBadge)) {
    query->insert(pair<string, long>("iOSBadge", *request->iOSBadge));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->iOSBadgeAutoIncrement)) {
    query->insert(pair<string, bool>("iOSBadgeAutoIncrement", *request->iOSBadgeAutoIncrement));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSExtParameters)) {
    query->insert(pair<string, string>("iOSExtParameters", *request->iOSExtParameters));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSInterruptionLevel)) {
    query->insert(pair<string, string>("iOSInterruptionLevel", *request->iOSInterruptionLevel));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSLiveActivityAttributes)) {
    query->insert(pair<string, string>("iOSLiveActivityAttributes", *request->iOSLiveActivityAttributes));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSLiveActivityAttributesType)) {
    query->insert(pair<string, string>("iOSLiveActivityAttributesType", *request->iOSLiveActivityAttributesType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSLiveActivityContentState)) {
    query->insert(pair<string, string>("iOSLiveActivityContentState", *request->iOSLiveActivityContentState));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->iOSLiveActivityDismissalDate)) {
    query->insert(pair<string, long>("iOSLiveActivityDismissalDate", *request->iOSLiveActivityDismissalDate));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSLiveActivityEvent)) {
    query->insert(pair<string, string>("iOSLiveActivityEvent", *request->iOSLiveActivityEvent));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSLiveActivityId)) {
    query->insert(pair<string, string>("iOSLiveActivityId", *request->iOSLiveActivityId));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->iOSLiveActivityStaleDate)) {
    query->insert(pair<string, long>("iOSLiveActivityStaleDate", *request->iOSLiveActivityStaleDate));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSMusic)) {
    query->insert(pair<string, string>("iOSMusic", *request->iOSMusic));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->iOSMutableContent)) {
    query->insert(pair<string, bool>("iOSMutableContent", *request->iOSMutableContent));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSNotificationCategory)) {
    query->insert(pair<string, string>("iOSNotificationCategory", *request->iOSNotificationCategory));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSNotificationCollapseId)) {
    query->insert(pair<string, string>("iOSNotificationCollapseId", *request->iOSNotificationCollapseId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSNotificationThreadId)) {
    query->insert(pair<string, string>("iOSNotificationThreadId", *request->iOSNotificationThreadId));
  }
  if (!Darabonba_Util::Client::isUnset<double>(request->iOSRelevanceScore)) {
    query->insert(pair<string, double>("iOSRelevanceScore", *request->iOSRelevanceScore));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->iOSRemind)) {
    query->insert(pair<string, bool>("iOSRemind", *request->iOSRemind));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSRemindBody)) {
    query->insert(pair<string, string>("iOSRemindBody", *request->iOSRemindBody));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->iOSSilentNotification)) {
    query->insert(pair<string, bool>("iOSSilentNotification", *request->iOSSilentNotification));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->iOSSubtitle)) {
    query->insert(pair<string, string>("iOSSubtitle", *request->iOSSubtitle));
  }
  shared_ptr<Alibabacloud_OpenApi::OpenApiRequest> req = make_shared<Alibabacloud_OpenApi::OpenApiRequest>(map<string, boost::any>({
    {"query", boost::any(Alibabacloud_OpenApiUtil::Client::query(query))}
  }));
  shared_ptr<Alibabacloud_OpenApi::Params> params = make_shared<Alibabacloud_OpenApi::Params>(map<string, boost::any>({
    {"action", boost::any(string("Push"))},
    {"version", boost::any(string("2016-08-01"))},
    {"protocol", boost::any(string("HTTPS"))},
    {"pathname", boost::any(string("/"))},
    {"method", boost::any(string("POST"))},
    {"authType", boost::any(string("AK"))},
    {"style", boost::any(string("RPC"))},
    {"reqBodyType", boost::any(string("formData"))},
    {"bodyType", boost::any(string("json"))}
  }));
  if (Darabonba_Util::Client::isUnset<string>(_signatureVersion) || !Darabonba_Util::Client::equalString(_signatureVersion, make_shared<string>("v4"))) {
    return PushResponse(callApi(params, req, runtime));
  }
  else {
    return PushResponse(execute(params, req, runtime));
  }
}