001package com.plivo.api.models.conference; 002 003import com.plivo.api.PlivoClient; 004import com.plivo.api.exceptions.PlivoRestException; 005import java.io.IOException; 006import retrofit2.Call; 007 008public class ConferenceMemberSpeakCreator extends 009 ConferenceMemberCreatorAction<ConferenceMemberActionResponse> { 010 011 private final String text; 012 private String voice; 013 private String language; 014 015 public ConferenceMemberSpeakCreator(String conferenceName, String memberId, String text) { 016 super(conferenceName, memberId); 017 this.text = text; 018 } 019 020 public String text() { 021 return this.text; 022 } 023 024 public String voice() { 025 return this.voice; 026 } 027 028 public String language() { 029 return this.language; 030 } 031 032 public ConferenceMemberSpeakCreator voice(final String voice) { 033 this.voice = voice; 034 return this; 035 } 036 037 public ConferenceMemberSpeakCreator language(final String language) { 038 this.language = language; 039 return this; 040 } 041 042 043 @Override 044 protected Call<ConferenceMemberActionResponse> obtainCall() { 045 return client().getVoiceApiService() 046 .conferenceMemberSpeakCreate(client().getAuthId(), conferenceName, memberId, this); 047 } 048 049 @Override 050 protected Call<ConferenceMemberActionResponse> obtainFallback1Call() { 051 return client().getVoiceFallback1Service() 052 .conferenceMemberSpeakCreate(client().getAuthId(), conferenceName, memberId, this); 053 } 054 055 @Override 056 protected Call<ConferenceMemberActionResponse> obtainFallback2Call() { 057 return client().getVoiceFallback2Service() 058 .conferenceMemberSpeakCreate(client().getAuthId(), conferenceName, memberId, this); 059 } 060 061 public ConferenceMemberActionResponse speak() throws IOException, PlivoRestException { 062 return create(); 063 } 064 065 @Override 066 public ConferenceMemberSpeakCreator client(final PlivoClient plivoClient) { 067 this.plivoClient = plivoClient; 068 return this; 069 } 070 071}