001package com.plivo.examples.multipartycall;
002
003import com.plivo.api.Plivo;
004import com.plivo.api.exceptions.PlivoValidationException;
005import com.plivo.api.exceptions.PlivoRestException;
006import com.plivo.api.models.base.ListResponse;
007import com.plivo.api.models.multipartycall.MultiPartyCall;
008import com.plivo.api.models.multipartycall.MultiPartyCallParticipant;
009import com.plivo.api.models.multipartycall.MultiPartyCallParticipantList;
010import com.plivo.api.models.multipartycall.MultiPartyCallUtils;
011
012import java.io.IOException;
013
014public class ListParticipants {
015
016  public static void main(String[] args) throws IOException, PlivoRestException, PlivoValidationException {
017    Plivo.init("<YOUR-AUTH-ID>", "<YOUR-AUTH-TOKEN>");
018
019    // You can list MPC participants by
020
021    // 1. either by using static participantList() method of MultiPartyCall class
022    MultiPartyCallParticipantList participantList1 = MultiPartyCall.participantList(MultiPartyCallUtils.mpcUuid("myMPCUuid1"));
023    ListResponse<MultiPartyCallParticipant> resp1 = participantList1.callUuid("<your-call-uuid-1>").list();
024    System.out.printf("Participants are properly fetched: %s", resp1.getObjects().stream().allMatch(p -> {
025      try {
026        return (p.getId().equals("myMPCUuid1") && p.getCallUuid().equals("<your-call-uuid-2>"));
027      } catch (PlivoValidationException e) {
028        e.printStackTrace();
029        return false;
030      }
031    }));
032
033
034    // 2. or calling object method participantList() of MultiPartyCall object
035    MultiPartyCallParticipantList participantList2 = MultiPartyCall.getter(MultiPartyCallUtils.friendlyName("myMPCUuid2")).get().participantList();
036    ListResponse<MultiPartyCallParticipant> resp2 = participantList2.callUuid("<your-call-uuid-2>").list();
037    System.out.printf("Participants are properly fetched: %s", resp1.getObjects().stream().allMatch(p -> {
038      try {
039        return (p.getId().equals("myMPCUuid2") && p.getCallUuid().equals("<your-call-uuid-2>"));
040      } catch (PlivoValidationException e) {
041        e.printStackTrace();
042        return false;
043      }
044    }));
045  }
046}