001package com.plivo.api.models.multipartycall; 002 003import com.plivo.api.exceptions.PlivoValidationException; 004import com.plivo.api.models.base.VoiceUpdater; 005import com.plivo.api.validators.UrlValues; 006import com.plivo.api.validators.Validate; 007import retrofit2.Call; 008 009public class MultiPartyCallStartPlayAudio extends VoiceUpdater<MultiPartyCallStartPlayAudioResponse> { 010 011 @UrlValues 012 private String url; 013 014 public MultiPartyCallStartPlayAudio(String mpcId, String secondaryId) { 015 super(mpcId, secondaryId); 016 } 017 018 @Override 019 protected Call<MultiPartyCallStartPlayAudioResponse> obtainCall() throws PlivoValidationException { 020 MultiPartyCallUtils.validMultiPartyCallId(id); 021 Validate.check(this); 022 return client().getVoiceApiService().mpcStartPlayAudio(client().getAuthId(), id, secondaryId, this); 023 } 024 025 @Override 026 protected Call<MultiPartyCallStartPlayAudioResponse> obtainFallback1Call() throws PlivoValidationException { 027 MultiPartyCallUtils.validMultiPartyCallId(id); 028 Validate.check(this); 029 return client().getVoiceFallback1Service().mpcStartPlayAudio(client().getAuthId(), id, secondaryId, this); 030 } 031 032 @Override 033 protected Call<MultiPartyCallStartPlayAudioResponse> obtainFallback2Call() throws PlivoValidationException { 034 MultiPartyCallUtils.validMultiPartyCallId(id); 035 Validate.check(this); 036 return client().getVoiceFallback1Service().mpcStartPlayAudio(client().getAuthId(), id, secondaryId, this); 037 } 038 039 public String url() { 040 return url; 041 } 042 043 public MultiPartyCallStartPlayAudio url(String url) { 044 this.url = url; 045 return this; 046 } 047}