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.MultiPartyCall;
007import com.plivo.api.models.multipartycall.MultiPartyCallRecordingStart;
008import com.plivo.api.models.multipartycall.MultiPartyCallRecordingStartResponse;
009import com.plivo.api.models.multipartycall.MultiPartyCallUtils;
010
011import java.io.IOException;
012
013public class StartRecording {
014
015  public static void main(String[] args) throws IOException, PlivoRestException, PlivoValidationException {
016    Plivo.init("<YOUR-AUTH-ID>", "<YOUR-AUTH-TOKEN>");
017
018    // You can start recording for an MPC by
019
020    // 1. either by using static recordStarter() method of MultiPartyCall class
021    MultiPartyCallRecordingStart recordingStart1 = MultiPartyCall.recordStarter(MultiPartyCallUtils.friendlyName("myMPC1"));
022    MultiPartyCallRecordingStartResponse resp1 = recordingStart1.fileFormat("wav").recordingCallbackUrl("http://status/recording/").update();
023    System.out.println(resp1.getRecordingUrl());
024    System.out.println(resp1.getRecordingId());
025
026    // 2. or calling object method start() of MultiPartyCall object
027    MultiPartyCallRecordingStart recordingStart2 = MultiPartyCall.getter(MultiPartyCallUtils.friendlyName("myInitializedMPC2")).get().recordStarter();
028    MultiPartyCallRecordingStartResponse resp2 = recordingStart2.fileFormat("mpc").update();
029    System.out.println(resp2.getRecordingUrl());
030    System.out.println(resp2.getRecordingId());
031  }
032}