All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.infobip.model.SmsAdvancedTextualRequest Maven / Gradle / Ivy

/*
 * This class is auto generated from the Infobip OpenAPI specification
 * through the OpenAPI Specification Client API libraries (Re)Generator (OSCAR),
 * powered by the OpenAPI Generator (https://openapi-generator.tech).
 *
 * Do not edit manually. To learn how to raise an issue, see the CONTRIBUTING guide
 * or contact us @ [email protected].
 */

package com.infobip.model;

import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;

/**
 * Represents SmsAdvancedTextualRequest model.
 */
public class SmsAdvancedTextualRequest {

    private String bulkId;

    private List messages = new ArrayList<>();

    private SmsSendingSpeedLimit sendingSpeedLimit;

    private SmsUrlOptions urlOptions;

    private SmsTracking tracking;

    private Boolean includeSmsCountInResponse;

    /**
     * Sets bulkId.
     * 

* Field description: * Unique ID assigned to the request if messaging multiple recipients or sending multiple messages via a single API request. If not provided, it will be auto-generated and returned in the API response. Typically, used to fetch [delivery reports](#channels/sms/get-outbound-sms-message-delivery-reports) and [message logs](#channels/sms/get-outbound-sms-message-logs). * * @param bulkId * @return This {@link SmsAdvancedTextualRequest instance}. */ public SmsAdvancedTextualRequest bulkId(String bulkId) { this.bulkId = bulkId; return this; } /** * Returns bulkId. *

* Field description: * Unique ID assigned to the request if messaging multiple recipients or sending multiple messages via a single API request. If not provided, it will be auto-generated and returned in the API response. Typically, used to fetch [delivery reports](#channels/sms/get-outbound-sms-message-delivery-reports) and [message logs](#channels/sms/get-outbound-sms-message-logs). * * @return bulkId */ @JsonProperty("bulkId") public String getBulkId() { return bulkId; } /** * Sets bulkId. *

* Field description: * Unique ID assigned to the request if messaging multiple recipients or sending multiple messages via a single API request. If not provided, it will be auto-generated and returned in the API response. Typically, used to fetch [delivery reports](#channels/sms/get-outbound-sms-message-delivery-reports) and [message logs](#channels/sms/get-outbound-sms-message-logs). * * @param bulkId */ @JsonProperty("bulkId") public void setBulkId(String bulkId) { this.bulkId = bulkId; } /** * Sets messages. *

* Field description: * An array of message objects of a single message or multiple messages sent under one bulk ID. *

* The field is required. * * @param messages * @return This {@link SmsAdvancedTextualRequest instance}. */ public SmsAdvancedTextualRequest messages(List messages) { this.messages = messages; return this; } /** * Adds and item into messages. *

* Field description: * An array of message objects of a single message or multiple messages sent under one bulk ID. *

* The field is required. * * @param messagesItem The item to be added to the list. * @return This {@link SmsAdvancedTextualRequest instance}. */ public SmsAdvancedTextualRequest addMessagesItem(SmsTextualMessage messagesItem) { if (this.messages == null) { this.messages = new ArrayList<>(); } this.messages.add(messagesItem); return this; } /** * Returns messages. *

* Field description: * An array of message objects of a single message or multiple messages sent under one bulk ID. *

* The field is required. * * @return messages */ @JsonProperty("messages") public List getMessages() { return messages; } /** * Sets messages. *

* Field description: * An array of message objects of a single message or multiple messages sent under one bulk ID. *

* The field is required. * * @param messages */ @JsonProperty("messages") public void setMessages(List messages) { this.messages = messages; } /** * Sets sendingSpeedLimit. * * @param sendingSpeedLimit * @return This {@link SmsAdvancedTextualRequest instance}. */ public SmsAdvancedTextualRequest sendingSpeedLimit(SmsSendingSpeedLimit sendingSpeedLimit) { this.sendingSpeedLimit = sendingSpeedLimit; return this; } /** * Returns sendingSpeedLimit. * * @return sendingSpeedLimit */ @JsonProperty("sendingSpeedLimit") public SmsSendingSpeedLimit getSendingSpeedLimit() { return sendingSpeedLimit; } /** * Sets sendingSpeedLimit. * * @param sendingSpeedLimit */ @JsonProperty("sendingSpeedLimit") public void setSendingSpeedLimit(SmsSendingSpeedLimit sendingSpeedLimit) { this.sendingSpeedLimit = sendingSpeedLimit; } /** * Sets urlOptions. * * @param urlOptions * @return This {@link SmsAdvancedTextualRequest instance}. */ public SmsAdvancedTextualRequest urlOptions(SmsUrlOptions urlOptions) { this.urlOptions = urlOptions; return this; } /** * Returns urlOptions. * * @return urlOptions */ @JsonProperty("urlOptions") public SmsUrlOptions getUrlOptions() { return urlOptions; } /** * Sets urlOptions. * * @param urlOptions */ @JsonProperty("urlOptions") public void setUrlOptions(SmsUrlOptions urlOptions) { this.urlOptions = urlOptions; } /** * Sets tracking. * * @param tracking * @return This {@link SmsAdvancedTextualRequest instance}. */ public SmsAdvancedTextualRequest tracking(SmsTracking tracking) { this.tracking = tracking; return this; } /** * Returns tracking. * * @return tracking */ @JsonProperty("tracking") public SmsTracking getTracking() { return tracking; } /** * Sets tracking. * * @param tracking */ @JsonProperty("tracking") public void setTracking(SmsTracking tracking) { this.tracking = tracking; } /** * Sets includeSmsCountInResponse. *

* Field description: * Set to true to return smsCount in the response. Default is false. smsCount is the total count of SMS submitted in the request. SMS messages have a character limit and messages longer than that limit will be split into multiple SMS and reflected in the total count of SMS submitted. * * @param includeSmsCountInResponse * @return This {@link SmsAdvancedTextualRequest instance}. */ public SmsAdvancedTextualRequest includeSmsCountInResponse(Boolean includeSmsCountInResponse) { this.includeSmsCountInResponse = includeSmsCountInResponse; return this; } /** * Returns includeSmsCountInResponse. *

* Field description: * Set to true to return smsCount in the response. Default is false. smsCount is the total count of SMS submitted in the request. SMS messages have a character limit and messages longer than that limit will be split into multiple SMS and reflected in the total count of SMS submitted. * * @return includeSmsCountInResponse */ @JsonProperty("includeSmsCountInResponse") public Boolean getIncludeSmsCountInResponse() { return includeSmsCountInResponse; } /** * Sets includeSmsCountInResponse. *

* Field description: * Set to true to return smsCount in the response. Default is false. smsCount is the total count of SMS submitted in the request. SMS messages have a character limit and messages longer than that limit will be split into multiple SMS and reflected in the total count of SMS submitted. * * @param includeSmsCountInResponse */ @JsonProperty("includeSmsCountInResponse") public void setIncludeSmsCountInResponse(Boolean includeSmsCountInResponse) { this.includeSmsCountInResponse = includeSmsCountInResponse; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } SmsAdvancedTextualRequest smsAdvancedTextualRequest = (SmsAdvancedTextualRequest) o; return Objects.equals(this.bulkId, smsAdvancedTextualRequest.bulkId) && Objects.equals(this.messages, smsAdvancedTextualRequest.messages) && Objects.equals(this.sendingSpeedLimit, smsAdvancedTextualRequest.sendingSpeedLimit) && Objects.equals(this.urlOptions, smsAdvancedTextualRequest.urlOptions) && Objects.equals(this.tracking, smsAdvancedTextualRequest.tracking) && Objects.equals(this.includeSmsCountInResponse, smsAdvancedTextualRequest.includeSmsCountInResponse); } @Override public int hashCode() { return Objects.hash(bulkId, messages, sendingSpeedLimit, urlOptions, tracking, includeSmsCountInResponse); } @Override public String toString() { String newLine = System.lineSeparator(); return new StringBuilder() .append("class SmsAdvancedTextualRequest {") .append(newLine) .append(" bulkId: ") .append(toIndentedString(bulkId)) .append(newLine) .append(" messages: ") .append(toIndentedString(messages)) .append(newLine) .append(" sendingSpeedLimit: ") .append(toIndentedString(sendingSpeedLimit)) .append(newLine) .append(" urlOptions: ") .append(toIndentedString(urlOptions)) .append(newLine) .append(" tracking: ") .append(toIndentedString(tracking)) .append(newLine) .append(" includeSmsCountInResponse: ") .append(toIndentedString(includeSmsCountInResponse)) .append(newLine) .append("}") .toString(); } private String toIndentedString(Object o) { if (o == null) { return "null"; } String lineSeparator = System.lineSeparator(); String lineSeparatorFollowedByIndentation = lineSeparator + " "; return o.toString().replace(lineSeparator, lineSeparatorFollowedByIndentation); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy