001package com.plivo.api.xml;
002
003import javax.xml.bind.annotation.XmlAttribute;
004import javax.xml.bind.annotation.XmlRootElement;
005
006@XmlRootElement(name = "Record")
007public class Record extends PlivoXml implements ResponseNestable {
008
009  @XmlAttribute
010  private String action;
011
012  @XmlAttribute
013  private String method;
014
015  @XmlAttribute
016  private String fileFormat;
017
018  @XmlAttribute
019  private Boolean redirect;
020
021  @XmlAttribute
022  private Integer timeout;
023
024  @XmlAttribute
025  private Integer maxLength;
026
027  @XmlAttribute
028  private Boolean playBeep;
029
030  @XmlAttribute
031  private String finishOnKey;
032
033  @XmlAttribute
034  private Boolean recordSession;
035
036  @XmlAttribute
037  private Boolean startOnDialAnswer;
038
039  @XmlAttribute
040  private String transcriptionType;
041
042  @XmlAttribute
043  private String transcriptionUrl;
044
045  @XmlAttribute
046  private String transcriptionMethod;
047
048  @XmlAttribute
049  private String callbackUrl;
050
051  @XmlAttribute
052  private String callbackMethod;
053
054  public Record(String action) {
055    this.action = action;
056  }
057
058  private Record() {
059  }
060
061  public String method() {
062    return this.method;
063  }
064
065  public String fileFormat() {
066    return this.fileFormat;
067  }
068
069  public Boolean redirect() {
070    return this.redirect;
071  }
072
073  public Integer timeout() {
074    return this.timeout;
075  }
076
077  public Integer maxLength() {
078    return this.maxLength;
079  }
080
081  public Boolean playBeep() {
082    return this.playBeep;
083  }
084
085  public String finishOnKey() {
086    return this.finishOnKey;
087  }
088
089  public Boolean recordSession() {
090    return this.recordSession;
091  }
092
093  public Boolean startOnDialAnswer() {
094    return this.startOnDialAnswer;
095  }
096
097  public String transcriptionType() {
098    return this.transcriptionType;
099  }
100
101  public String transcriptionUrl() {
102    return this.transcriptionUrl;
103  }
104
105  public String transcriptionMethod() {
106    return this.transcriptionMethod;
107  }
108
109  public String callbackUrl() {
110    return this.callbackUrl;
111  }
112
113  public String callbackMethod() {
114    return this.callbackMethod;
115  }
116
117  public Record method(final String method) {
118    this.method = method;
119    return this;
120  }
121
122  public Record fileFormat(final String fileFormat) {
123    this.fileFormat = fileFormat;
124    return this;
125  }
126
127  public Record redirect(final Boolean redirect) {
128    this.redirect = redirect;
129    return this;
130  }
131
132  public Record timeout(final Integer timeout) {
133    this.timeout = timeout;
134    return this;
135  }
136
137  public Record maxLength(final Integer maxLength) {
138    this.maxLength = maxLength;
139    return this;
140  }
141
142  public Record playBeep(final Boolean playBeep) {
143    this.playBeep = playBeep;
144    return this;
145  }
146
147  public Record finishOnKey(final String finishOnKey) {
148    this.finishOnKey = finishOnKey;
149    return this;
150  }
151
152  public Record recordSession(final Boolean recordSession) {
153    this.recordSession = recordSession;
154    return this;
155  }
156
157  public Record startOnDialAnswer(final Boolean startOnDialAnswer) {
158    this.startOnDialAnswer = startOnDialAnswer;
159    return this;
160  }
161
162  public Record transcriptionType(final String transcriptionType) {
163    this.transcriptionType = transcriptionType;
164    return this;
165  }
166
167  public Record transcriptionUrl(final String transcriptionUrl) {
168    this.transcriptionUrl = transcriptionUrl;
169    return this;
170  }
171
172  public Record transcriptionMethod(final String transcriptionMethod) {
173    this.transcriptionMethod = transcriptionMethod;
174    return this;
175  }
176
177  public Record callbackUrl(final String callbackUrl) {
178    this.callbackUrl = callbackUrl;
179    return this;
180  }
181
182  public Record callbackMethod(final String callbackMethod) {
183    this.callbackMethod = callbackMethod;
184    return this;
185  }
186}