001package com.plivo.api.models.recording;
002
003import com.plivo.api.models.base.BaseResource;
004
005public class Recording extends BaseResource {
006
007  private String addTime;
008  private String callUuid;
009  private String conferenceName;
010  private String recordingDurationMs;
011  private String recordingEndMs;
012  private String recordingFormat;
013  private String recordingStartMs;
014  private String recordingType;
015  private String recordingUrl;
016  private String resourceUri;
017  private String recordingId;
018
019  public static RecordingGetter getter(String id) {
020    return new RecordingGetter(id);
021  }
022
023  public static RecordingLister lister() {
024    return new RecordingLister();
025  }
026
027  public static RecordingDeleter deleter(String id) {
028    return new RecordingDeleter(id);
029  }
030
031  /**
032   * @return The ID of the recording.
033   */
034  public String getRecordingId() {
035    return recordingId;
036  }
037
038  /**
039   * @return The datetime string on which the recording was created on your account.
040   */
041  public String getAddTime() {
042    return addTime;
043  }
044
045  /**
046   * @return The ID of the call on Plivo which was recorded.
047   */
048  public String getCallUuid() {
049    return callUuid;
050  }
051
052  /**
053   * @return The name of the conference room which was recorded. This value will be null if it was a
054   * regular recording.
055   */
056  public String getConferenceName() {
057    return conferenceName;
058  }
059
060  /**
061   * @return The duration of the recording in milliseconds.
062   */
063  public String getRecordingDurationMs() {
064    return recordingDurationMs;
065  }
066
067  public String getRecordingEndMs() {
068    return recordingEndMs;
069  }
070
071  /**
072   * @return The format of the recording file. This can be either 'wav' or 'mp3'.
073   */
074  public String getRecordingFormat() {
075    return recordingFormat;
076  }
077
078  public String getRecordingStartMs() {
079    return recordingStartMs;
080  }
081
082  /**
083   * @return The type of the recording. In the case where a conference was recorded, this value will
084   * be 'conference' or it will be 'normal' in case of a regular call.
085   */
086  public String getRecordingType() {
087    return recordingType;
088  }
089
090  /**
091   * @return The URL of the recorded file. All our recordings are hosted on Amazon S3.
092   */
093  public String getRecordingUrl() {
094    return recordingUrl;
095  }
096
097  public String getResourceUri() {
098    return resourceUri;
099  }
100
101  public RecordingDeleter deleter() {
102    return Recording.deleter(recordingId);
103  }
104
105  @Override
106  public String getId() {
107    return getRecordingId();
108  }
109}