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

com.bandwidth.voice.models.CallCallback Maven / Gradle / Ivy

Go to download

The official client SDK for Bandwidth's Voice, Messaging, MFA, and WebRTC APIs

There is a newer version: 12.0.0
Show newest version
/*
 * BandwidthLib
 *
 * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
 */

package com.bandwidth.voice.models;

import com.fasterxml.jackson.annotation.JsonGetter;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonSetter;

/**
 * This is a model class for CallCallback type.
 */
public class CallCallback {
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String eventType;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String eventTime;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String accountId;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String applicationId;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String from;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String to;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String direction;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String callId;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String callUrl;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String startTime;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String answerTime;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String transferCallerId;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String transferTo;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String cause;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String errorMessage;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String errorId;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String endTime;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String digit;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String parentCallId;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String recordingId;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String duration;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String fileFormat;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String mediaUrl;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String tag;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private Integer channels;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String status;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String digits;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String terminatingDigit;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private Transcription transcription;
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private Diversion diversion;

    /**
     * Default constructor.
     */
    public CallCallback() {
    }

    /**
     * Initialization constructor.
     * @param  eventType  String value for eventType.
     * @param  eventTime  String value for eventTime.
     * @param  accountId  String value for accountId.
     * @param  applicationId  String value for applicationId.
     * @param  from  String value for from.
     * @param  to  String value for to.
     * @param  direction  String value for direction.
     * @param  callId  String value for callId.
     * @param  callUrl  String value for callUrl.
     * @param  startTime  String value for startTime.
     * @param  answerTime  String value for answerTime.
     * @param  transferCallerId  String value for transferCallerId.
     * @param  transferTo  String value for transferTo.
     * @param  cause  String value for cause.
     * @param  errorMessage  String value for errorMessage.
     * @param  errorId  String value for errorId.
     * @param  endTime  String value for endTime.
     * @param  digit  String value for digit.
     * @param  parentCallId  String value for parentCallId.
     * @param  recordingId  String value for recordingId.
     * @param  duration  String value for duration.
     * @param  fileFormat  String value for fileFormat.
     * @param  mediaUrl  String value for mediaUrl.
     * @param  tag  String value for tag.
     * @param  channels  Integer value for channels.
     * @param  status  String value for status.
     * @param  digits  String value for digits.
     * @param  terminatingDigit  String value for terminatingDigit.
     * @param  transcription  Transcription value for transcription.
     * @param  diversion  Diversion value for diversion.
     */
    public CallCallback(
            String eventType,
            String eventTime,
            String accountId,
            String applicationId,
            String from,
            String to,
            String direction,
            String callId,
            String callUrl,
            String startTime,
            String answerTime,
            String transferCallerId,
            String transferTo,
            String cause,
            String errorMessage,
            String errorId,
            String endTime,
            String digit,
            String parentCallId,
            String recordingId,
            String duration,
            String fileFormat,
            String mediaUrl,
            String tag,
            Integer channels,
            String status,
            String digits,
            String terminatingDigit,
            Transcription transcription,
            Diversion diversion) {
        this.eventType = eventType;
        this.eventTime = eventTime;
        this.accountId = accountId;
        this.applicationId = applicationId;
        this.from = from;
        this.to = to;
        this.direction = direction;
        this.callId = callId;
        this.callUrl = callUrl;
        this.startTime = startTime;
        this.answerTime = answerTime;
        this.transferCallerId = transferCallerId;
        this.transferTo = transferTo;
        this.cause = cause;
        this.errorMessage = errorMessage;
        this.errorId = errorId;
        this.endTime = endTime;
        this.digit = digit;
        this.parentCallId = parentCallId;
        this.recordingId = recordingId;
        this.duration = duration;
        this.fileFormat = fileFormat;
        this.mediaUrl = mediaUrl;
        this.tag = tag;
        this.channels = channels;
        this.status = status;
        this.digits = digits;
        this.terminatingDigit = terminatingDigit;
        this.transcription = transcription;
        this.diversion = diversion;
    }

    /**
     * Getter for EventType.
     * @return Returns the String
     */
    @JsonGetter("eventType")
    public String getEventType() {
        return eventType;
    }

    /**
     * Setter for EventType.
     * @param eventType Value for String
     */
    @JsonSetter("eventType")
    public void setEventType(String eventType) {
        this.eventType = eventType;
    }

    /**
     * Getter for EventTime.
     * @return Returns the String
     */
    @JsonGetter("eventTime")
    public String getEventTime() {
        return eventTime;
    }

    /**
     * Setter for EventTime.
     * @param eventTime Value for String
     */
    @JsonSetter("eventTime")
    public void setEventTime(String eventTime) {
        this.eventTime = eventTime;
    }

    /**
     * Getter for AccountId.
     * @return Returns the String
     */
    @JsonGetter("accountId")
    public String getAccountId() {
        return accountId;
    }

    /**
     * Setter for AccountId.
     * @param accountId Value for String
     */
    @JsonSetter("accountId")
    public void setAccountId(String accountId) {
        this.accountId = accountId;
    }

    /**
     * Getter for ApplicationId.
     * @return Returns the String
     */
    @JsonGetter("applicationId")
    public String getApplicationId() {
        return applicationId;
    }

    /**
     * Setter for ApplicationId.
     * @param applicationId Value for String
     */
    @JsonSetter("applicationId")
    public void setApplicationId(String applicationId) {
        this.applicationId = applicationId;
    }

    /**
     * Getter for From.
     * @return Returns the String
     */
    @JsonGetter("from")
    public String getFrom() {
        return from;
    }

    /**
     * Setter for From.
     * @param from Value for String
     */
    @JsonSetter("from")
    public void setFrom(String from) {
        this.from = from;
    }

    /**
     * Getter for To.
     * @return Returns the String
     */
    @JsonGetter("to")
    public String getTo() {
        return to;
    }

    /**
     * Setter for To.
     * @param to Value for String
     */
    @JsonSetter("to")
    public void setTo(String to) {
        this.to = to;
    }

    /**
     * Getter for Direction.
     * @return Returns the String
     */
    @JsonGetter("direction")
    public String getDirection() {
        return direction;
    }

    /**
     * Setter for Direction.
     * @param direction Value for String
     */
    @JsonSetter("direction")
    public void setDirection(String direction) {
        this.direction = direction;
    }

    /**
     * Getter for CallId.
     * @return Returns the String
     */
    @JsonGetter("callId")
    public String getCallId() {
        return callId;
    }

    /**
     * Setter for CallId.
     * @param callId Value for String
     */
    @JsonSetter("callId")
    public void setCallId(String callId) {
        this.callId = callId;
    }

    /**
     * Getter for CallUrl.
     * @return Returns the String
     */
    @JsonGetter("callUrl")
    public String getCallUrl() {
        return callUrl;
    }

    /**
     * Setter for CallUrl.
     * @param callUrl Value for String
     */
    @JsonSetter("callUrl")
    public void setCallUrl(String callUrl) {
        this.callUrl = callUrl;
    }

    /**
     * Getter for StartTime.
     * @return Returns the String
     */
    @JsonGetter("startTime")
    public String getStartTime() {
        return startTime;
    }

    /**
     * Setter for StartTime.
     * @param startTime Value for String
     */
    @JsonSetter("startTime")
    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }

    /**
     * Getter for AnswerTime.
     * @return Returns the String
     */
    @JsonGetter("answerTime")
    public String getAnswerTime() {
        return answerTime;
    }

    /**
     * Setter for AnswerTime.
     * @param answerTime Value for String
     */
    @JsonSetter("answerTime")
    public void setAnswerTime(String answerTime) {
        this.answerTime = answerTime;
    }

    /**
     * Getter for TransferCallerId.
     * @return Returns the String
     */
    @JsonGetter("transferCallerId")
    public String getTransferCallerId() {
        return transferCallerId;
    }

    /**
     * Setter for TransferCallerId.
     * @param transferCallerId Value for String
     */
    @JsonSetter("transferCallerId")
    public void setTransferCallerId(String transferCallerId) {
        this.transferCallerId = transferCallerId;
    }

    /**
     * Getter for TransferTo.
     * @return Returns the String
     */
    @JsonGetter("transferTo")
    public String getTransferTo() {
        return transferTo;
    }

    /**
     * Setter for TransferTo.
     * @param transferTo Value for String
     */
    @JsonSetter("transferTo")
    public void setTransferTo(String transferTo) {
        this.transferTo = transferTo;
    }

    /**
     * Getter for Cause.
     * @return Returns the String
     */
    @JsonGetter("cause")
    public String getCause() {
        return cause;
    }

    /**
     * Setter for Cause.
     * @param cause Value for String
     */
    @JsonSetter("cause")
    public void setCause(String cause) {
        this.cause = cause;
    }

    /**
     * Getter for ErrorMessage.
     * @return Returns the String
     */
    @JsonGetter("errorMessage")
    public String getErrorMessage() {
        return errorMessage;
    }

    /**
     * Setter for ErrorMessage.
     * @param errorMessage Value for String
     */
    @JsonSetter("errorMessage")
    public void setErrorMessage(String errorMessage) {
        this.errorMessage = errorMessage;
    }

    /**
     * Getter for ErrorId.
     * @return Returns the String
     */
    @JsonGetter("errorId")
    public String getErrorId() {
        return errorId;
    }

    /**
     * Setter for ErrorId.
     * @param errorId Value for String
     */
    @JsonSetter("errorId")
    public void setErrorId(String errorId) {
        this.errorId = errorId;
    }

    /**
     * Getter for EndTime.
     * @return Returns the String
     */
    @JsonGetter("endTime")
    public String getEndTime() {
        return endTime;
    }

    /**
     * Setter for EndTime.
     * @param endTime Value for String
     */
    @JsonSetter("endTime")
    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    /**
     * Getter for Digit.
     * @return Returns the String
     */
    @JsonGetter("digit")
    public String getDigit() {
        return digit;
    }

    /**
     * Setter for Digit.
     * @param digit Value for String
     */
    @JsonSetter("digit")
    public void setDigit(String digit) {
        this.digit = digit;
    }

    /**
     * Getter for ParentCallId.
     * @return Returns the String
     */
    @JsonGetter("parentCallId")
    public String getParentCallId() {
        return parentCallId;
    }

    /**
     * Setter for ParentCallId.
     * @param parentCallId Value for String
     */
    @JsonSetter("parentCallId")
    public void setParentCallId(String parentCallId) {
        this.parentCallId = parentCallId;
    }

    /**
     * Getter for RecordingId.
     * @return Returns the String
     */
    @JsonGetter("recordingId")
    public String getRecordingId() {
        return recordingId;
    }

    /**
     * Setter for RecordingId.
     * @param recordingId Value for String
     */
    @JsonSetter("recordingId")
    public void setRecordingId(String recordingId) {
        this.recordingId = recordingId;
    }

    /**
     * Getter for Duration.
     * @return Returns the String
     */
    @JsonGetter("duration")
    public String getDuration() {
        return duration;
    }

    /**
     * Setter for Duration.
     * @param duration Value for String
     */
    @JsonSetter("duration")
    public void setDuration(String duration) {
        this.duration = duration;
    }

    /**
     * Getter for FileFormat.
     * @return Returns the String
     */
    @JsonGetter("fileFormat")
    public String getFileFormat() {
        return fileFormat;
    }

    /**
     * Setter for FileFormat.
     * @param fileFormat Value for String
     */
    @JsonSetter("fileFormat")
    public void setFileFormat(String fileFormat) {
        this.fileFormat = fileFormat;
    }

    /**
     * Getter for MediaUrl.
     * @return Returns the String
     */
    @JsonGetter("mediaUrl")
    public String getMediaUrl() {
        return mediaUrl;
    }

    /**
     * Setter for MediaUrl.
     * @param mediaUrl Value for String
     */
    @JsonSetter("mediaUrl")
    public void setMediaUrl(String mediaUrl) {
        this.mediaUrl = mediaUrl;
    }

    /**
     * Getter for Tag.
     * @return Returns the String
     */
    @JsonGetter("tag")
    public String getTag() {
        return tag;
    }

    /**
     * Setter for Tag.
     * @param tag Value for String
     */
    @JsonSetter("tag")
    public void setTag(String tag) {
        this.tag = tag;
    }

    /**
     * Getter for Channels.
     * @return Returns the Integer
     */
    @JsonGetter("channels")
    public Integer getChannels() {
        return channels;
    }

    /**
     * Setter for Channels.
     * @param channels Value for Integer
     */
    @JsonSetter("channels")
    public void setChannels(Integer channels) {
        this.channels = channels;
    }

    /**
     * Getter for Status.
     * @return Returns the String
     */
    @JsonGetter("status")
    public String getStatus() {
        return status;
    }

    /**
     * Setter for Status.
     * @param status Value for String
     */
    @JsonSetter("status")
    public void setStatus(String status) {
        this.status = status;
    }

    /**
     * Getter for Digits.
     * @return Returns the String
     */
    @JsonGetter("digits")
    public String getDigits() {
        return digits;
    }

    /**
     * Setter for Digits.
     * @param digits Value for String
     */
    @JsonSetter("digits")
    public void setDigits(String digits) {
        this.digits = digits;
    }

    /**
     * Getter for TerminatingDigit.
     * @return Returns the String
     */
    @JsonGetter("terminatingDigit")
    public String getTerminatingDigit() {
        return terminatingDigit;
    }

    /**
     * Setter for TerminatingDigit.
     * @param terminatingDigit Value for String
     */
    @JsonSetter("terminatingDigit")
    public void setTerminatingDigit(String terminatingDigit) {
        this.terminatingDigit = terminatingDigit;
    }

    /**
     * Getter for Transcription.
     * @return Returns the Transcription
     */
    @JsonGetter("transcription")
    public Transcription getTranscription() {
        return transcription;
    }

    /**
     * Setter for Transcription.
     * @param transcription Value for Transcription
     */
    @JsonSetter("transcription")
    public void setTranscription(Transcription transcription) {
        this.transcription = transcription;
    }

    /**
     * Getter for Diversion.
     * @return Returns the Diversion
     */
    @JsonGetter("diversion")
    public Diversion getDiversion() {
        return diversion;
    }

    /**
     * Setter for Diversion.
     * @param diversion Value for Diversion
     */
    @JsonSetter("diversion")
    public void setDiversion(Diversion diversion) {
        this.diversion = diversion;
    }

    /**
     * Converts this CallCallback into string format.
     * @return String representation of this class
     */
    @Override
    public String toString() {
        return "CallCallback [" + "eventType=" + eventType + ", eventTime=" + eventTime
                + ", accountId=" + accountId + ", applicationId=" + applicationId + ", from=" + from
                + ", to=" + to + ", direction=" + direction + ", callId=" + callId + ", callUrl="
                + callUrl + ", startTime=" + startTime + ", answerTime=" + answerTime
                + ", transferCallerId=" + transferCallerId + ", transferTo=" + transferTo
                + ", cause=" + cause + ", errorMessage=" + errorMessage + ", errorId=" + errorId
                + ", endTime=" + endTime + ", digit=" + digit + ", parentCallId=" + parentCallId
                + ", recordingId=" + recordingId + ", duration=" + duration + ", fileFormat="
                + fileFormat + ", mediaUrl=" + mediaUrl + ", tag=" + tag + ", channels=" + channels
                + ", status=" + status + ", digits=" + digits + ", terminatingDigit="
                + terminatingDigit + ", transcription=" + transcription + ", diversion=" + diversion
                + "]";
    }

    /**
     * Builds a new {@link CallCallback.Builder} object.
     * Creates the instance with the state of the current model.
     * @return a new {@link CallCallback.Builder} object
     */
    public Builder toBuilder() {
        Builder builder = new Builder()
                .eventType(getEventType())
                .eventTime(getEventTime())
                .accountId(getAccountId())
                .applicationId(getApplicationId())
                .from(getFrom())
                .to(getTo())
                .direction(getDirection())
                .callId(getCallId())
                .callUrl(getCallUrl())
                .startTime(getStartTime())
                .answerTime(getAnswerTime())
                .transferCallerId(getTransferCallerId())
                .transferTo(getTransferTo())
                .cause(getCause())
                .errorMessage(getErrorMessage())
                .errorId(getErrorId())
                .endTime(getEndTime())
                .digit(getDigit())
                .parentCallId(getParentCallId())
                .recordingId(getRecordingId())
                .duration(getDuration())
                .fileFormat(getFileFormat())
                .mediaUrl(getMediaUrl())
                .tag(getTag())
                .channels(getChannels())
                .status(getStatus())
                .digits(getDigits())
                .terminatingDigit(getTerminatingDigit())
                .transcription(getTranscription())
                .diversion(getDiversion());
        return builder;
    }

    /**
     * Class to build instances of {@link CallCallback}.
     */
    public static class Builder {
        private String eventType;
        private String eventTime;
        private String accountId;
        private String applicationId;
        private String from;
        private String to;
        private String direction;
        private String callId;
        private String callUrl;
        private String startTime;
        private String answerTime;
        private String transferCallerId;
        private String transferTo;
        private String cause;
        private String errorMessage;
        private String errorId;
        private String endTime;
        private String digit;
        private String parentCallId;
        private String recordingId;
        private String duration;
        private String fileFormat;
        private String mediaUrl;
        private String tag;
        private Integer channels;
        private String status;
        private String digits;
        private String terminatingDigit;
        private Transcription transcription;
        private Diversion diversion;



        /**
         * Setter for eventType.
         * @param  eventType  String value for eventType.
         * @return Builder
         */
        public Builder eventType(String eventType) {
            this.eventType = eventType;
            return this;
        }

        /**
         * Setter for eventTime.
         * @param  eventTime  String value for eventTime.
         * @return Builder
         */
        public Builder eventTime(String eventTime) {
            this.eventTime = eventTime;
            return this;
        }

        /**
         * Setter for accountId.
         * @param  accountId  String value for accountId.
         * @return Builder
         */
        public Builder accountId(String accountId) {
            this.accountId = accountId;
            return this;
        }

        /**
         * Setter for applicationId.
         * @param  applicationId  String value for applicationId.
         * @return Builder
         */
        public Builder applicationId(String applicationId) {
            this.applicationId = applicationId;
            return this;
        }

        /**
         * Setter for from.
         * @param  from  String value for from.
         * @return Builder
         */
        public Builder from(String from) {
            this.from = from;
            return this;
        }

        /**
         * Setter for to.
         * @param  to  String value for to.
         * @return Builder
         */
        public Builder to(String to) {
            this.to = to;
            return this;
        }

        /**
         * Setter for direction.
         * @param  direction  String value for direction.
         * @return Builder
         */
        public Builder direction(String direction) {
            this.direction = direction;
            return this;
        }

        /**
         * Setter for callId.
         * @param  callId  String value for callId.
         * @return Builder
         */
        public Builder callId(String callId) {
            this.callId = callId;
            return this;
        }

        /**
         * Setter for callUrl.
         * @param  callUrl  String value for callUrl.
         * @return Builder
         */
        public Builder callUrl(String callUrl) {
            this.callUrl = callUrl;
            return this;
        }

        /**
         * Setter for startTime.
         * @param  startTime  String value for startTime.
         * @return Builder
         */
        public Builder startTime(String startTime) {
            this.startTime = startTime;
            return this;
        }

        /**
         * Setter for answerTime.
         * @param  answerTime  String value for answerTime.
         * @return Builder
         */
        public Builder answerTime(String answerTime) {
            this.answerTime = answerTime;
            return this;
        }

        /**
         * Setter for transferCallerId.
         * @param  transferCallerId  String value for transferCallerId.
         * @return Builder
         */
        public Builder transferCallerId(String transferCallerId) {
            this.transferCallerId = transferCallerId;
            return this;
        }

        /**
         * Setter for transferTo.
         * @param  transferTo  String value for transferTo.
         * @return Builder
         */
        public Builder transferTo(String transferTo) {
            this.transferTo = transferTo;
            return this;
        }

        /**
         * Setter for cause.
         * @param  cause  String value for cause.
         * @return Builder
         */
        public Builder cause(String cause) {
            this.cause = cause;
            return this;
        }

        /**
         * Setter for errorMessage.
         * @param  errorMessage  String value for errorMessage.
         * @return Builder
         */
        public Builder errorMessage(String errorMessage) {
            this.errorMessage = errorMessage;
            return this;
        }

        /**
         * Setter for errorId.
         * @param  errorId  String value for errorId.
         * @return Builder
         */
        public Builder errorId(String errorId) {
            this.errorId = errorId;
            return this;
        }

        /**
         * Setter for endTime.
         * @param  endTime  String value for endTime.
         * @return Builder
         */
        public Builder endTime(String endTime) {
            this.endTime = endTime;
            return this;
        }

        /**
         * Setter for digit.
         * @param  digit  String value for digit.
         * @return Builder
         */
        public Builder digit(String digit) {
            this.digit = digit;
            return this;
        }

        /**
         * Setter for parentCallId.
         * @param  parentCallId  String value for parentCallId.
         * @return Builder
         */
        public Builder parentCallId(String parentCallId) {
            this.parentCallId = parentCallId;
            return this;
        }

        /**
         * Setter for recordingId.
         * @param  recordingId  String value for recordingId.
         * @return Builder
         */
        public Builder recordingId(String recordingId) {
            this.recordingId = recordingId;
            return this;
        }

        /**
         * Setter for duration.
         * @param  duration  String value for duration.
         * @return Builder
         */
        public Builder duration(String duration) {
            this.duration = duration;
            return this;
        }

        /**
         * Setter for fileFormat.
         * @param  fileFormat  String value for fileFormat.
         * @return Builder
         */
        public Builder fileFormat(String fileFormat) {
            this.fileFormat = fileFormat;
            return this;
        }

        /**
         * Setter for mediaUrl.
         * @param  mediaUrl  String value for mediaUrl.
         * @return Builder
         */
        public Builder mediaUrl(String mediaUrl) {
            this.mediaUrl = mediaUrl;
            return this;
        }

        /**
         * Setter for tag.
         * @param  tag  String value for tag.
         * @return Builder
         */
        public Builder tag(String tag) {
            this.tag = tag;
            return this;
        }

        /**
         * Setter for channels.
         * @param  channels  Integer value for channels.
         * @return Builder
         */
        public Builder channels(Integer channels) {
            this.channels = channels;
            return this;
        }

        /**
         * Setter for status.
         * @param  status  String value for status.
         * @return Builder
         */
        public Builder status(String status) {
            this.status = status;
            return this;
        }

        /**
         * Setter for digits.
         * @param  digits  String value for digits.
         * @return Builder
         */
        public Builder digits(String digits) {
            this.digits = digits;
            return this;
        }

        /**
         * Setter for terminatingDigit.
         * @param  terminatingDigit  String value for terminatingDigit.
         * @return Builder
         */
        public Builder terminatingDigit(String terminatingDigit) {
            this.terminatingDigit = terminatingDigit;
            return this;
        }

        /**
         * Setter for transcription.
         * @param  transcription  Transcription value for transcription.
         * @return Builder
         */
        public Builder transcription(Transcription transcription) {
            this.transcription = transcription;
            return this;
        }

        /**
         * Setter for diversion.
         * @param  diversion  Diversion value for diversion.
         * @return Builder
         */
        public Builder diversion(Diversion diversion) {
            this.diversion = diversion;
            return this;
        }

        /**
         * Builds a new {@link CallCallback} object using the set fields.
         * @return {@link CallCallback}
         */
        public CallCallback build() {
            return new CallCallback(eventType, eventTime, accountId, applicationId, from, to,
                    direction, callId, callUrl, startTime, answerTime, transferCallerId, transferTo,
                    cause, errorMessage, errorId, endTime, digit, parentCallId, recordingId,
                    duration, fileFormat, mediaUrl, tag, channels, status, digits, terminatingDigit,
                    transcription, diversion);
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy