001package com.plivo.examples.multipartycall;
002
003import com.plivo.api.Plivo;
004import com.plivo.api.exceptions.PlivoRestException;
005import com.plivo.api.exceptions.PlivoValidationException;
006import com.plivo.api.models.multipartycall.*;
007import com.plivo.api.util.Utils;
008
009import java.io.IOException;
010
011public class ParticipantActions {
012
013  public static void main(String[] args) throws IOException, PlivoRestException, PlivoValidationException {
014    Plivo.init("<YOUR-AUTH-ID>", "<YOUR-AUTH-TOKEN>");
015
016    // Get participant by name and participantID
017    MultiPartyCallParticipant participant = MultiPartyCall.participantGetter(MultiPartyCallUtils.friendlyName("myMPC"), "23").get();
018    System.out.printf("Fetched correct participant: %s",
019      (participant.getId().equals(MultiPartyCallUtils.friendlyName("myMPC"))
020        && participant.getSecondaryId().equals("myMPC")));
021
022    // Update participant by fetched resource
023    MultiPartyCallParticipantUpdate updateAction = participant.update();
024    MultiPartyCallParticipantUpdateResponse resp = updateAction.coachMode(true).hold(true).mute(true).update();
025    Utils.anyNotNull(resp.getCoachMode(), resp.getHold(), resp.getMute());
026
027    // Kick participant by fetched resource
028    participant.kick();
029  }
030}