From 363fa8abb2049992f69e3f7070627dc9ab46a918 Mon Sep 17 00:00:00 2001 From: Yukari Dumburs <45432538+ydumburs@users.noreply.github.com> Date: Tue, 22 Apr 2025 14:13:25 +0100 Subject: [PATCH 01/28] Add video API snippets, Fix fatJar errors, and Add JsonPrinter utility - Created a 'video' folder in src/main/java/com/vonage/quickstart/ and added video code snippets. - Added related environment variables to .env-example and src/main/java/com/vonage/quickstart/EnvironmentVariables.java. - Fixed .env-example: corrected VOICE_LANGUAGE value to avoid fatJar failure. See https://javadoc.io/doc/com.vonage/server-sdk/latest/com/vonage/client/voice/TextToSpeechLanguage.html - Fixed EnvironmentVariables.java: resolved conflict where numbers.Feature was mistaken for CatalogFeatures. - Created a 'util' folder under src/main/java/com/vonage/quickstart/ and added JsonPrinter utility class for pretty-printing JSON using Jackson. --- .env-example | 10 ++++++- .../quickstart/EnvironmentVariables.java | 14 ++++++--- .../vonage/quickstart/util/JsonPrinter.java | 18 ++++++++++++ .../quickstart/video/AddArchiveStream.java | 19 ++++++++++++ .../quickstart/video/AddBroadcastStream.java | 19 ++++++++++++ .../quickstart/video/CreateArchive.java | 28 ++++++++++++++++++ .../quickstart/video/CreateBroadcast.java | 29 +++++++++++++++++++ .../quickstart/video/CreateSession.java | 25 ++++++++++++++++ .../quickstart/video/DeleteArchive.java | 19 ++++++++++++ .../quickstart/video/ForceDisconnect.java | 19 ++++++++++++ .../vonage/quickstart/video/ForceMute.java | 19 ++++++++++++ .../quickstart/video/GenerateToken.java | 27 +++++++++++++++++ .../vonage/quickstart/video/GetArchive.java | 21 ++++++++++++++ .../vonage/quickstart/video/GetBroadcast.java | 21 ++++++++++++++ .../vonage/quickstart/video/GetStream.java | 21 ++++++++++++++ .../vonage/quickstart/video/ListArchives.java | 23 +++++++++++++++ .../quickstart/video/ListBroadcasts.java | 23 +++++++++++++++ .../vonage/quickstart/video/ListStreams.java | 23 +++++++++++++++ .../quickstart/video/RemoveArchiveStream.java | 19 ++++++++++++ .../video/RemoveBroadcastStream.java | 19 ++++++++++++ .../vonage/quickstart/video/SendSignal.java | 24 +++++++++++++++ .../quickstart/video/SetStreamLayout.java | 22 ++++++++++++++ .../com/vonage/quickstart/video/SipDial.java | 25 ++++++++++++++++ .../vonage/quickstart/video/StopArchive.java | 19 ++++++++++++ .../quickstart/video/StopBroadcast.java | 19 ++++++++++++ .../quickstart/video/UpdateArchiveLayout.java | 20 +++++++++++++ .../video/UpdateBroadcastLayout.java | 20 +++++++++++++ 27 files changed, 560 insertions(+), 5 deletions(-) create mode 100644 src/main/java/com/vonage/quickstart/util/JsonPrinter.java create mode 100644 src/main/java/com/vonage/quickstart/video/AddArchiveStream.java create mode 100644 src/main/java/com/vonage/quickstart/video/AddBroadcastStream.java create mode 100644 src/main/java/com/vonage/quickstart/video/CreateArchive.java create mode 100644 src/main/java/com/vonage/quickstart/video/CreateBroadcast.java create mode 100644 src/main/java/com/vonage/quickstart/video/CreateSession.java create mode 100644 src/main/java/com/vonage/quickstart/video/DeleteArchive.java create mode 100644 src/main/java/com/vonage/quickstart/video/ForceDisconnect.java create mode 100644 src/main/java/com/vonage/quickstart/video/ForceMute.java create mode 100644 src/main/java/com/vonage/quickstart/video/GenerateToken.java create mode 100644 src/main/java/com/vonage/quickstart/video/GetArchive.java create mode 100644 src/main/java/com/vonage/quickstart/video/GetBroadcast.java create mode 100644 src/main/java/com/vonage/quickstart/video/GetStream.java create mode 100644 src/main/java/com/vonage/quickstart/video/ListArchives.java create mode 100644 src/main/java/com/vonage/quickstart/video/ListBroadcasts.java create mode 100644 src/main/java/com/vonage/quickstart/video/ListStreams.java create mode 100644 src/main/java/com/vonage/quickstart/video/RemoveArchiveStream.java create mode 100644 src/main/java/com/vonage/quickstart/video/RemoveBroadcastStream.java create mode 100644 src/main/java/com/vonage/quickstart/video/SendSignal.java create mode 100644 src/main/java/com/vonage/quickstart/video/SetStreamLayout.java create mode 100644 src/main/java/com/vonage/quickstart/video/SipDial.java create mode 100644 src/main/java/com/vonage/quickstart/video/StopArchive.java create mode 100644 src/main/java/com/vonage/quickstart/video/StopBroadcast.java create mode 100644 src/main/java/com/vonage/quickstart/video/UpdateArchiveLayout.java create mode 100644 src/main/java/com/vonage/quickstart/video/UpdateBroadcastLayout.java diff --git a/.env-example b/.env-example index 88bab12..02584de 100644 --- a/.env-example +++ b/.env-example @@ -148,7 +148,7 @@ VERIFY_TEMPLATE_FRAGMENT_ID="aaaaaaaa-bbbb-4ccc-8ddd-0123456789ab" VOICE_CALL_ID="aaaaaaaa-bbbb-4ccc-8ddd-0123456789ab" VOICE_TO_NUMBER="447700900000" VOICE_TEXT="Hello from Vonage! Would you like to learn more?" -VOICE_LANGUAGE="en-US" +VOICE_LANGUAGE="AMERICAN_ENGLISH" VOICE_DTMF_DIGITS="2468#" VOICE_CONFERENCE_NAME="My conference call room" VOICE_NCCO_URL="https://nexmo-community.github.io/ncco-examples/talk.json" @@ -156,3 +156,11 @@ VOICE_ANSWER_URL="https://nexmo-community.github.io/ncco-examples/transfer.json" VOICE_STREAM_URL="https://nexmo-community.github.io/ncco-examples/silent-loop.json" VOICE_RECORDING_URL="https://api.nexmo.com/v1/files/bbbbbbbb-aaaa-cccc-dddd-0123456789ab.wav" VOICE_EVENT_URL="https://example.org/webhooks/voice/event" + +# Video +VIDEO_SESSION_ID="" +VIDEO_TOKEN="" +VIDEO_CONNECTION_ID="" +VIDEO_STREAM_ID="" +VIDEO_ARCHIVE_ID="" +VIDEO_BROADCAST_ID="" diff --git a/src/main/java/com/vonage/quickstart/EnvironmentVariables.java b/src/main/java/com/vonage/quickstart/EnvironmentVariables.java index 9ff0910..dd3ceeb 100644 --- a/src/main/java/com/vonage/quickstart/EnvironmentVariables.java +++ b/src/main/java/com/vonage/quickstart/EnvironmentVariables.java @@ -158,7 +158,13 @@ public static String envVar(String key) { VOICE_NCCO_URL = envVar("VOICE_NCCO_URL"), VOICE_ANSWER_URL = envVar("VOICE_ANSWER_URL"), VOICE_EVENT_URL = envVar("VOICE_EVENT_URL"), - VOICE_STREAM_URL = envVar("VOICE_STREAM_URL"); + VOICE_STREAM_URL = envVar("VOICE_STREAM_URL"), + VIDEO_SESSION_ID = envVar("VIDEO_SESSION_ID"), + VIDEO_TOKEN = envVar("VIDEO_TOKEN"), + VIDEO_CONNECTION_ID = envVar("VIDEO_CONNECTION_ID"), + VIDEO_STREAM_ID = envVar("VIDEO_STREAM_ID"), + VIDEO_ARCHIVE_ID = envVar("VIDEO_ARCHIVE_ID"), + VIDEO_BROADCAST_ID = envVar("VIDEO_BROADCAST_ID"); public static final byte[] VONAGE_PRIVATE_KEY_CONTENTS = envVar("VONAGE_PRIVATE_KEY_CONTENTS").getBytes(); @@ -189,10 +195,10 @@ public static String envVar(String key) { public static final Type NUMBER_TYPE = Type.fromString(envVar("NUMBER_TYPE")); - public static final Feature[] + public static final com.vonage.client.numbers.Feature[] NUMBER_FEATURES = Arrays.stream(envVar("NUMBER_FEATURES").split(",")) - .map(Feature::fromString) - .toArray(Feature[]::new); + .map(com.vonage.client.numbers.Feature::fromString) + .toArray(com.vonage.client.numbers.Feature[]::new); public static final SearchPattern NUMBER_SEARCH_PATTERN = SearchPattern.values()[Integer.parseInt(envVar("NUMBER_SEARCH_PATTERN"))]; diff --git a/src/main/java/com/vonage/quickstart/util/JsonPrinter.java b/src/main/java/com/vonage/quickstart/util/JsonPrinter.java new file mode 100644 index 0000000..548ca0c --- /dev/null +++ b/src/main/java/com/vonage/quickstart/util/JsonPrinter.java @@ -0,0 +1,18 @@ +package com.vonage.quickstart.util; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; + +public class JsonPrinter { + public static final ObjectMapper mapper = new ObjectMapper().enable(SerializationFeature.INDENT_OUTPUT); + + public static void print(Object obj) { + try { + String json = mapper.writeValueAsString(obj); + System.out.println(json); + } catch (Exception e) { + System.out.println("Failed to convert object to JSON: "); + e.printStackTrace(); + } + } +} diff --git a/src/main/java/com/vonage/quickstart/video/AddArchiveStream.java b/src/main/java/com/vonage/quickstart/video/AddArchiveStream.java new file mode 100644 index 0000000..2223f5c --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/AddArchiveStream.java @@ -0,0 +1,19 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class AddArchiveStream { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + videoClient.addArchiveStream(VIDEO_ARCHIVE_ID, VIDEO_STREAM_ID); + + System.out.println("Added archive stream"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/AddBroadcastStream.java b/src/main/java/com/vonage/quickstart/video/AddBroadcastStream.java new file mode 100644 index 0000000..0a9bc0b --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/AddBroadcastStream.java @@ -0,0 +1,19 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class AddBroadcastStream { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + videoClient.addBroadcastStream(VIDEO_BROADCAST_ID, VIDEO_STREAM_ID); + + System.out.println("Added broadcast stream"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/CreateArchive.java b/src/main/java/com/vonage/quickstart/video/CreateArchive.java new file mode 100644 index 0000000..62ff306 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/CreateArchive.java @@ -0,0 +1,28 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; +import com.vonage.quickstart.util.JsonPrinter; + +public class CreateArchive { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + Archive archive = videoClient.createArchive( + Archive.builder(VIDEO_SESSION_ID) + .streamMode(StreamMode.AUTO) + .hasVideo(true) + .hasAudio(true) + .resolution(Resolution.HD_LANDSCAPE) + .outputMode(OutputMode.COMPOSED).name("My recording") + .build()); + + System.out.println("Started archive: "); + JsonPrinter.print(archive); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java b/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java new file mode 100644 index 0000000..8fa38c3 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java @@ -0,0 +1,29 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; +import com.vonage.quickstart.util.JsonPrinter; + +import java.time.Duration; + +public class CreateBroadcast { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + Broadcast broadcast = videoClient.createBroadcast( + Broadcast.builder(VIDEO_SESSION_ID) + .hls(Hls.builder().lowLatency(true).build()) + .resolution(Resolution.HD_LANDSCAPE) + .streamMode(StreamMode.AUTO) + .maxDuration(Duration.ofMinutes(45)) + .build()); + + System.out.println("Started broadcast: "); + JsonPrinter.print(broadcast); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/CreateSession.java b/src/main/java/com/vonage/quickstart/video/CreateSession.java new file mode 100644 index 0000000..5a1729b --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/CreateSession.java @@ -0,0 +1,25 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; +import com.vonage.quickstart.util.JsonPrinter; + +public class CreateSession { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + CreateSessionResponse session = videoClient.createSession( + CreateSessionRequest.builder() + .mediaMode(MediaMode.ROUTED) + .archiveMode(ArchiveMode.MANUAL) + .build()); + + System.out.println("Created session: "); + JsonPrinter.print(session); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/DeleteArchive.java b/src/main/java/com/vonage/quickstart/video/DeleteArchive.java new file mode 100644 index 0000000..8343f64 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/DeleteArchive.java @@ -0,0 +1,19 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class DeleteArchive { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + videoClient.deleteArchive(VIDEO_ARCHIVE_ID); + + System.out.println("Deleted archive"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/ForceDisconnect.java b/src/main/java/com/vonage/quickstart/video/ForceDisconnect.java new file mode 100644 index 0000000..a9ddd97 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/ForceDisconnect.java @@ -0,0 +1,19 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class ForceDisconnect { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + videoClient.forceDisconnect(VIDEO_SESSION_ID, VIDEO_CONNECTION_ID); + + System.out.println("Force disconnected"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/ForceMute.java b/src/main/java/com/vonage/quickstart/video/ForceMute.java new file mode 100644 index 0000000..77d10d0 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/ForceMute.java @@ -0,0 +1,19 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class ForceMute { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + videoClient.muteStream(VIDEO_SESSION_ID, VIDEO_STREAM_ID); + + System.out.println("Force muted"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/GenerateToken.java b/src/main/java/com/vonage/quickstart/video/GenerateToken.java new file mode 100644 index 0000000..c0b5d84 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/GenerateToken.java @@ -0,0 +1,27 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +import java.time.Duration; + +public class GenerateToken { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + TokenOptions tokenOptions = TokenOptions.builder() + .role(Role.MODERATOR) + .expiryLength(Duration.ofHours(6)) + .data("name=John,id=123") + .build(); + + String jwt = videoClient.generateToken(VIDEO_SESSION_ID, tokenOptions); + + System.out.println("Generated token: " + jwt); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/GetArchive.java b/src/main/java/com/vonage/quickstart/video/GetArchive.java new file mode 100644 index 0000000..7e94506 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/GetArchive.java @@ -0,0 +1,21 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; +import com.vonage.quickstart.util.JsonPrinter; + +public class GetArchive { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + Archive archive = videoClient.getArchive(VIDEO_ARCHIVE_ID); + + System.out.println("Retrieved archive: "); + JsonPrinter.print(archive); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/GetBroadcast.java b/src/main/java/com/vonage/quickstart/video/GetBroadcast.java new file mode 100644 index 0000000..9c74634 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/GetBroadcast.java @@ -0,0 +1,21 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; +import com.vonage.quickstart.util.JsonPrinter; + +public class GetBroadcast { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + Broadcast broadcast = videoClient.getBroadcast(VIDEO_BROADCAST_ID); + + System.out.println("Retrieved broadcast: "); + JsonPrinter.print(broadcast); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/GetStream.java b/src/main/java/com/vonage/quickstart/video/GetStream.java new file mode 100644 index 0000000..9361cfc --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/GetStream.java @@ -0,0 +1,21 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; +import com.vonage.quickstart.util.JsonPrinter; + +public class GetStream { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + GetStreamResponse stream = videoClient.getStream(VIDEO_SESSION_ID, VIDEO_STREAM_ID); + + System.out.println("Retrieved stream: "); + JsonPrinter.print(stream); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/ListArchives.java b/src/main/java/com/vonage/quickstart/video/ListArchives.java new file mode 100644 index 0000000..0a3546d --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/ListArchives.java @@ -0,0 +1,23 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; +import com.vonage.quickstart.util.JsonPrinter; + +import java.util.List; + +public class ListArchives { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + List archives = videoClient.listArchives(); + + System.out.println("Retrieved list of archives: "); + JsonPrinter.print(archives); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/ListBroadcasts.java b/src/main/java/com/vonage/quickstart/video/ListBroadcasts.java new file mode 100644 index 0000000..4d505c4 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/ListBroadcasts.java @@ -0,0 +1,23 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; +import com.vonage.quickstart.util.JsonPrinter; + +import java.util.List; + +public class ListBroadcasts { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + List broadcasts = videoClient.listBroadcasts(); + + System.out.println("Retrieved list of broadcasts: "); + JsonPrinter.print(broadcasts); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/ListStreams.java b/src/main/java/com/vonage/quickstart/video/ListStreams.java new file mode 100644 index 0000000..6520065 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/ListStreams.java @@ -0,0 +1,23 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; +import com.vonage.quickstart.util.JsonPrinter; + +import java.util.List; + +public class ListStreams { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + List streams = videoClient.listStreams(VIDEO_SESSION_ID); + + System.out.println("Retrieved list of archives: "); + JsonPrinter.print(streams); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/RemoveArchiveStream.java b/src/main/java/com/vonage/quickstart/video/RemoveArchiveStream.java new file mode 100644 index 0000000..355c9f4 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/RemoveArchiveStream.java @@ -0,0 +1,19 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class RemoveArchiveStream { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + videoClient.removeArchiveStream(VIDEO_ARCHIVE_ID, VIDEO_STREAM_ID); + + System.out.println("Removed archive stream"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/RemoveBroadcastStream.java b/src/main/java/com/vonage/quickstart/video/RemoveBroadcastStream.java new file mode 100644 index 0000000..697c0f8 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/RemoveBroadcastStream.java @@ -0,0 +1,19 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class RemoveBroadcastStream { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + videoClient.removeBroadcastStream(VIDEO_BROADCAST_ID, VIDEO_STREAM_ID); + + System.out.println("Removed broadcast stream"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/SendSignal.java b/src/main/java/com/vonage/quickstart/video/SendSignal.java new file mode 100644 index 0000000..33614eb --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/SendSignal.java @@ -0,0 +1,24 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class SendSignal { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + SignalRequest signal = SignalRequest.builder() + .type("chat") + .data("Hello, World!") + .build(); + + videoClient.signalAll(VIDEO_SESSION_ID, signal); + + System.out.println("Sent signal"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/SetStreamLayout.java b/src/main/java/com/vonage/quickstart/video/SetStreamLayout.java new file mode 100644 index 0000000..7a73b79 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/SetStreamLayout.java @@ -0,0 +1,22 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class SetStreamLayout { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + SessionStream stream = SessionStream.builder(VIDEO_STREAM_ID) + .layoutClassList("full", "focus").build(); + + videoClient.setStreamLayout(VIDEO_SESSION_ID, stream); + + System.out.println("Set stream layout"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/SipDial.java b/src/main/java/com/vonage/quickstart/video/SipDial.java new file mode 100644 index 0000000..ad874ae --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/SipDial.java @@ -0,0 +1,25 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +import java.net.URI; + +public class SipDial { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + SipDialRequest request = SipDialRequest.builder() + .uri(URI.create("sip:user@sip.partner.com"), false) + .sessionId(VIDEO_SESSION_ID).token(VIDEO_TOKEN).build(); + + SipDialResponse parsed = videoClient.sipDial(request); + + System.out.println("Dialed sip"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/StopArchive.java b/src/main/java/com/vonage/quickstart/video/StopArchive.java new file mode 100644 index 0000000..6530334 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/StopArchive.java @@ -0,0 +1,19 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class StopArchive { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + Archive archive = videoClient.stopArchive(VIDEO_ARCHIVE_ID); + + System.out.println("Stopped archive: " + archive.getId()); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/StopBroadcast.java b/src/main/java/com/vonage/quickstart/video/StopBroadcast.java new file mode 100644 index 0000000..ebb94c7 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/StopBroadcast.java @@ -0,0 +1,19 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class StopBroadcast { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + Broadcast broadcast = videoClient.stopBroadcast(VIDEO_BROADCAST_ID); + + System.out.println("Stopped broadcast: " + broadcast.getId()); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/UpdateArchiveLayout.java b/src/main/java/com/vonage/quickstart/video/UpdateArchiveLayout.java new file mode 100644 index 0000000..320d66c --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/UpdateArchiveLayout.java @@ -0,0 +1,20 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class UpdateArchiveLayout { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + StreamCompositionLayout layout = StreamCompositionLayout.standardLayout(ScreenLayoutType.VERTICAL); + videoClient.updateArchiveLayout(VIDEO_ARCHIVE_ID, layout); + + System.out.println("Updated archive layout"); + } +} diff --git a/src/main/java/com/vonage/quickstart/video/UpdateBroadcastLayout.java b/src/main/java/com/vonage/quickstart/video/UpdateBroadcastLayout.java new file mode 100644 index 0000000..e227b89 --- /dev/null +++ b/src/main/java/com/vonage/quickstart/video/UpdateBroadcastLayout.java @@ -0,0 +1,20 @@ +package com.vonage.quickstart.video; + +import com.vonage.client.VonageClient; +import com.vonage.client.video.*; +import static com.vonage.quickstart.EnvironmentVariables.*; + +public class UpdateBroadcastLayout { + public static void main(String[] args) throws Exception { + + VideoClient videoClient = VonageClient.builder() + .applicationId(VONAGE_APPLICATION_ID) + .privateKeyPath(VONAGE_PRIVATE_KEY_PATH) + .build().getVideoClient(); + + StreamCompositionLayout layout = StreamCompositionLayout.standardLayout(ScreenLayoutType.VERTICAL); + videoClient.updateBroadcastLayout(VIDEO_BROADCAST_ID, layout); + + System.out.println("Updated broadcast layout"); + } +} From 56f2a32b93566026585148f57bf8a7b6ffb07fb6 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:02:22 +0100 Subject: [PATCH 02/28] Update EnvironmentVariables order --- .../com/vonage/quickstart/EnvironmentVariables.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/EnvironmentVariables.java b/src/main/java/com/vonage/quickstart/EnvironmentVariables.java index dd3ceeb..182664e 100644 --- a/src/main/java/com/vonage/quickstart/EnvironmentVariables.java +++ b/src/main/java/com/vonage/quickstart/EnvironmentVariables.java @@ -150,6 +150,12 @@ public static String envVar(String key) { VERIFY_FROM_EMAIL = envVar("VERIFY_FROM_EMAIL"), VERIFY_WHATSAPP_NUMBER = envVar("VERIFY_WHATSAPP_NUMBER"), VERIFY_TEMPLATE_NAME = envVar("VERIFY_TEMPLATE_NAME"), + VIDEO_SESSION_ID = envVar("VIDEO_SESSION_ID"), + VIDEO_TOKEN = envVar("VIDEO_TOKEN"), + VIDEO_CONNECTION_ID = envVar("VIDEO_CONNECTION_ID"), + VIDEO_STREAM_ID = envVar("VIDEO_STREAM_ID"), + VIDEO_ARCHIVE_ID = envVar("VIDEO_ARCHIVE_ID"), + VIDEO_BROADCAST_ID = envVar("VIDEO_BROADCAST_ID"); VOICE_CALL_ID = envVar("VOICE_CALL_ID"), VOICE_TO_NUMBER = envVar("VOICE_TO_NUMBER"), VOICE_TEXT = envVar("VOICE_TEXT"), @@ -159,12 +165,6 @@ public static String envVar(String key) { VOICE_ANSWER_URL = envVar("VOICE_ANSWER_URL"), VOICE_EVENT_URL = envVar("VOICE_EVENT_URL"), VOICE_STREAM_URL = envVar("VOICE_STREAM_URL"), - VIDEO_SESSION_ID = envVar("VIDEO_SESSION_ID"), - VIDEO_TOKEN = envVar("VIDEO_TOKEN"), - VIDEO_CONNECTION_ID = envVar("VIDEO_CONNECTION_ID"), - VIDEO_STREAM_ID = envVar("VIDEO_STREAM_ID"), - VIDEO_ARCHIVE_ID = envVar("VIDEO_ARCHIVE_ID"), - VIDEO_BROADCAST_ID = envVar("VIDEO_BROADCAST_ID"); public static final byte[] VONAGE_PRIVATE_KEY_CONTENTS = envVar("VONAGE_PRIVATE_KEY_CONTENTS").getBytes(); From 59e49bc1ff3eb27d95d6471791659e4a664c4fbe Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:05:05 +0100 Subject: [PATCH 03/28] Update CreateArchive.java --- .../quickstart/video/CreateArchive.java | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/CreateArchive.java b/src/main/java/com/vonage/quickstart/video/CreateArchive.java index 62ff306..5119d2f 100644 --- a/src/main/java/com/vonage/quickstart/video/CreateArchive.java +++ b/src/main/java/com/vonage/quickstart/video/CreateArchive.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; @@ -20,9 +35,9 @@ public static void main(String[] args) throws Exception { .hasAudio(true) .resolution(Resolution.HD_LANDSCAPE) .outputMode(OutputMode.COMPOSED).name("My recording") - .build()); + .build() + ); - System.out.println("Started archive: "); - JsonPrinter.print(archive); + System.out.println("Started archive: " + archive); } } From 0552daa47c03319b470f494a730805795cb81ae1 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:06:10 +0100 Subject: [PATCH 04/28] Update EnvironmentVariables.java --- .../com/vonage/quickstart/EnvironmentVariables.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/EnvironmentVariables.java b/src/main/java/com/vonage/quickstart/EnvironmentVariables.java index 182664e..3b98a7c 100644 --- a/src/main/java/com/vonage/quickstart/EnvironmentVariables.java +++ b/src/main/java/com/vonage/quickstart/EnvironmentVariables.java @@ -150,12 +150,12 @@ public static String envVar(String key) { VERIFY_FROM_EMAIL = envVar("VERIFY_FROM_EMAIL"), VERIFY_WHATSAPP_NUMBER = envVar("VERIFY_WHATSAPP_NUMBER"), VERIFY_TEMPLATE_NAME = envVar("VERIFY_TEMPLATE_NAME"), - VIDEO_SESSION_ID = envVar("VIDEO_SESSION_ID"), - VIDEO_TOKEN = envVar("VIDEO_TOKEN"), - VIDEO_CONNECTION_ID = envVar("VIDEO_CONNECTION_ID"), VIDEO_STREAM_ID = envVar("VIDEO_STREAM_ID"), VIDEO_ARCHIVE_ID = envVar("VIDEO_ARCHIVE_ID"), - VIDEO_BROADCAST_ID = envVar("VIDEO_BROADCAST_ID"); + VIDEO_BROADCAST_ID = envVar("VIDEO_BROADCAST_ID"), + VIDEO_CONNECTION_ID = envVar("VIDEO_CONNECTION_ID"), + VIDEO_SESSION_ID = envVar("VIDEO_SESSION_ID"), + VIDEO_TOKEN = envVar("VIDEO_TOKEN"), VOICE_CALL_ID = envVar("VOICE_CALL_ID"), VOICE_TO_NUMBER = envVar("VOICE_TO_NUMBER"), VOICE_TEXT = envVar("VOICE_TEXT"), @@ -164,7 +164,7 @@ public static String envVar(String key) { VOICE_NCCO_URL = envVar("VOICE_NCCO_URL"), VOICE_ANSWER_URL = envVar("VOICE_ANSWER_URL"), VOICE_EVENT_URL = envVar("VOICE_EVENT_URL"), - VOICE_STREAM_URL = envVar("VOICE_STREAM_URL"), + VOICE_STREAM_URL = envVar("VOICE_STREAM_URL"); public static final byte[] VONAGE_PRIVATE_KEY_CONTENTS = envVar("VONAGE_PRIVATE_KEY_CONTENTS").getBytes(); From 323a735e1eb1128e31a6072e233295b0bffb4d16 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:06:46 +0100 Subject: [PATCH 05/28] Update AddArchiveStream.java --- .../vonage/quickstart/video/AddArchiveStream.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/com/vonage/quickstart/video/AddArchiveStream.java b/src/main/java/com/vonage/quickstart/video/AddArchiveStream.java index 2223f5c..3a244fc 100644 --- a/src/main/java/com/vonage/quickstart/video/AddArchiveStream.java +++ b/src/main/java/com/vonage/quickstart/video/AddArchiveStream.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; From bd1ead4883f25ab82fe37829e4ff62d0ff043e23 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:07:02 +0100 Subject: [PATCH 06/28] Update AddBroadcastStream.java --- .../quickstart/video/AddBroadcastStream.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/com/vonage/quickstart/video/AddBroadcastStream.java b/src/main/java/com/vonage/quickstart/video/AddBroadcastStream.java index 0a9bc0b..24ba890 100644 --- a/src/main/java/com/vonage/quickstart/video/AddBroadcastStream.java +++ b/src/main/java/com/vonage/quickstart/video/AddBroadcastStream.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; From 6ffce1176c7d5943c811e93d270ed02762b1f047 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:07:51 +0100 Subject: [PATCH 07/28] Update CreateBroadcast.java --- .../quickstart/video/CreateBroadcast.java | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java b/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java index 8fa38c3..dff7537 100644 --- a/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java +++ b/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java @@ -1,10 +1,24 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; import com.vonage.quickstart.util.JsonPrinter; - import java.time.Duration; public class CreateBroadcast { @@ -21,9 +35,9 @@ public static void main(String[] args) throws Exception { .resolution(Resolution.HD_LANDSCAPE) .streamMode(StreamMode.AUTO) .maxDuration(Duration.ofMinutes(45)) - .build()); + .build() + ); - System.out.println("Started broadcast: "); - JsonPrinter.print(broadcast); + System.out.println("Started broadcast: " + broadcast.toJson()); } } From bba35e96349c2c9d9afccdd5b9dd07e9ece3b3d5 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:08:31 +0100 Subject: [PATCH 08/28] Update CreateSession.java --- .../quickstart/video/CreateSession.java | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/CreateSession.java b/src/main/java/com/vonage/quickstart/video/CreateSession.java index 5a1729b..0684a81 100644 --- a/src/main/java/com/vonage/quickstart/video/CreateSession.java +++ b/src/main/java/com/vonage/quickstart/video/CreateSession.java @@ -1,9 +1,23 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; -import com.vonage.quickstart.util.JsonPrinter; public class CreateSession { public static void main(String[] args) throws Exception { @@ -17,9 +31,9 @@ public static void main(String[] args) throws Exception { CreateSessionRequest.builder() .mediaMode(MediaMode.ROUTED) .archiveMode(ArchiveMode.MANUAL) - .build()); + .build() + ); - System.out.println("Created session: "); - JsonPrinter.print(session); + System.out.println("Created session: " + session.toJson()); } } From 66427af9e9955d38a8425c81396f61ba8dd0bf09 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:08:55 +0100 Subject: [PATCH 09/28] Update CreateArchive.java --- src/main/java/com/vonage/quickstart/video/CreateArchive.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/CreateArchive.java b/src/main/java/com/vonage/quickstart/video/CreateArchive.java index 5119d2f..7217a73 100644 --- a/src/main/java/com/vonage/quickstart/video/CreateArchive.java +++ b/src/main/java/com/vonage/quickstart/video/CreateArchive.java @@ -18,7 +18,6 @@ import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; -import com.vonage.quickstart.util.JsonPrinter; public class CreateArchive { public static void main(String[] args) throws Exception { @@ -38,6 +37,6 @@ public static void main(String[] args) throws Exception { .build() ); - System.out.println("Started archive: " + archive); + System.out.println("Started archive: " + archive.toJson()); } } From 2c7a8e6dc1001fcaa89eff15b96e1dba3087437e Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:09:33 +0100 Subject: [PATCH 10/28] Update GetArchive.java --- .../vonage/quickstart/video/GetArchive.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/GetArchive.java b/src/main/java/com/vonage/quickstart/video/GetArchive.java index 7e94506..662fbe7 100644 --- a/src/main/java/com/vonage/quickstart/video/GetArchive.java +++ b/src/main/java/com/vonage/quickstart/video/GetArchive.java @@ -1,9 +1,23 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; -import com.vonage.quickstart.util.JsonPrinter; public class GetArchive { public static void main(String[] args) throws Exception { @@ -15,7 +29,6 @@ public static void main(String[] args) throws Exception { Archive archive = videoClient.getArchive(VIDEO_ARCHIVE_ID); - System.out.println("Retrieved archive: "); - JsonPrinter.print(archive); + System.out.println("Retrieved archive: " + archive.toJson()); } } From bf3e71440941f546fe1693d6aa956e140887024b Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:10:03 +0100 Subject: [PATCH 11/28] Update GetBroadcast.java --- .../vonage/quickstart/video/GetBroadcast.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/GetBroadcast.java b/src/main/java/com/vonage/quickstart/video/GetBroadcast.java index 9c74634..e5a1754 100644 --- a/src/main/java/com/vonage/quickstart/video/GetBroadcast.java +++ b/src/main/java/com/vonage/quickstart/video/GetBroadcast.java @@ -1,9 +1,23 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; -import com.vonage.quickstart.util.JsonPrinter; public class GetBroadcast { public static void main(String[] args) throws Exception { @@ -15,7 +29,6 @@ public static void main(String[] args) throws Exception { Broadcast broadcast = videoClient.getBroadcast(VIDEO_BROADCAST_ID); - System.out.println("Retrieved broadcast: "); - JsonPrinter.print(broadcast); + System.out.println("Retrieved broadcast: " + broadcast.toJson()); } } From 67b4435b49d0c936a28493e189e44a7a7771280d Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:10:34 +0100 Subject: [PATCH 12/28] Update GetStream.java --- .../vonage/quickstart/video/GetStream.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/GetStream.java b/src/main/java/com/vonage/quickstart/video/GetStream.java index 9361cfc..bb706a3 100644 --- a/src/main/java/com/vonage/quickstart/video/GetStream.java +++ b/src/main/java/com/vonage/quickstart/video/GetStream.java @@ -1,9 +1,23 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; -import com.vonage.quickstart.util.JsonPrinter; public class GetStream { public static void main(String[] args) throws Exception { @@ -15,7 +29,6 @@ public static void main(String[] args) throws Exception { GetStreamResponse stream = videoClient.getStream(VIDEO_SESSION_ID, VIDEO_STREAM_ID); - System.out.println("Retrieved stream: "); - JsonPrinter.print(stream); + System.out.println("Retrieved stream: " + stream.toJson()); } } From 83ee95d33d715e28d5253474408326e80aa3d95f Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:11:29 +0100 Subject: [PATCH 13/28] Update ListArchives.java --- .../vonage/quickstart/video/ListArchives.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/ListArchives.java b/src/main/java/com/vonage/quickstart/video/ListArchives.java index 0a3546d..1954ef2 100644 --- a/src/main/java/com/vonage/quickstart/video/ListArchives.java +++ b/src/main/java/com/vonage/quickstart/video/ListArchives.java @@ -1,10 +1,23 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; -import com.vonage.quickstart.util.JsonPrinter; - import java.util.List; public class ListArchives { @@ -17,7 +30,6 @@ public static void main(String[] args) throws Exception { List archives = videoClient.listArchives(); - System.out.println("Retrieved list of archives: "); - JsonPrinter.print(archives); + System.out.println("Retrieved list of archives: " + archives); } } From 5c5f6c7808b1f6b99d54f4fa70ff426d356d1e05 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:12:07 +0100 Subject: [PATCH 14/28] Update ListBroadcasts.java --- .../quickstart/video/ListBroadcasts.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/ListBroadcasts.java b/src/main/java/com/vonage/quickstart/video/ListBroadcasts.java index 4d505c4..793fe24 100644 --- a/src/main/java/com/vonage/quickstart/video/ListBroadcasts.java +++ b/src/main/java/com/vonage/quickstart/video/ListBroadcasts.java @@ -1,10 +1,23 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; -import com.vonage.quickstart.util.JsonPrinter; - import java.util.List; public class ListBroadcasts { @@ -17,7 +30,6 @@ public static void main(String[] args) throws Exception { List broadcasts = videoClient.listBroadcasts(); - System.out.println("Retrieved list of broadcasts: "); - JsonPrinter.print(broadcasts); + System.out.println("Retrieved list of broadcasts: " + broadcasts); } } From d80ea030e76effbf66544f7e61916cdd20edda5e Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:53:45 +0100 Subject: [PATCH 15/28] Update ListStreams.java --- .../vonage/quickstart/video/ListStreams.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/vonage/quickstart/video/ListStreams.java b/src/main/java/com/vonage/quickstart/video/ListStreams.java index 6520065..3f77ba7 100644 --- a/src/main/java/com/vonage/quickstart/video/ListStreams.java +++ b/src/main/java/com/vonage/quickstart/video/ListStreams.java @@ -1,9 +1,23 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; -import com.vonage.quickstart.util.JsonPrinter; import java.util.List; @@ -17,7 +31,6 @@ public static void main(String[] args) throws Exception { List streams = videoClient.listStreams(VIDEO_SESSION_ID); - System.out.println("Retrieved list of archives: "); - JsonPrinter.print(streams); + System.out.println("Retrieved list of archives: " + streams); } } From 68cfd1b4cd69626c81cba76436409446e0caa81f Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:54:42 +0100 Subject: [PATCH 16/28] Update ListStreams.java --- src/main/java/com/vonage/quickstart/video/ListStreams.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/vonage/quickstart/video/ListStreams.java b/src/main/java/com/vonage/quickstart/video/ListStreams.java index 3f77ba7..99eacac 100644 --- a/src/main/java/com/vonage/quickstart/video/ListStreams.java +++ b/src/main/java/com/vonage/quickstart/video/ListStreams.java @@ -31,6 +31,6 @@ public static void main(String[] args) throws Exception { List streams = videoClient.listStreams(VIDEO_SESSION_ID); - System.out.println("Retrieved list of archives: " + streams); + System.out.println("Retrieved list of streams: " + streams); } } From c0f8db192461ab0a739ba28516f08058ae804c75 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:55:25 +0100 Subject: [PATCH 17/28] Update RemoveArchiveStream.java --- .../quickstart/video/RemoveArchiveStream.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/com/vonage/quickstart/video/RemoveArchiveStream.java b/src/main/java/com/vonage/quickstart/video/RemoveArchiveStream.java index 355c9f4..865f567 100644 --- a/src/main/java/com/vonage/quickstart/video/RemoveArchiveStream.java +++ b/src/main/java/com/vonage/quickstart/video/RemoveArchiveStream.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; From ffbb7c576566568a2f02fb291c496e9f865270d7 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:55:43 +0100 Subject: [PATCH 18/28] Update RemoveBroadcastStream.java --- .../quickstart/video/RemoveBroadcastStream.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/com/vonage/quickstart/video/RemoveBroadcastStream.java b/src/main/java/com/vonage/quickstart/video/RemoveBroadcastStream.java index 697c0f8..3a32222 100644 --- a/src/main/java/com/vonage/quickstart/video/RemoveBroadcastStream.java +++ b/src/main/java/com/vonage/quickstart/video/RemoveBroadcastStream.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; From 847a9c9939be6984e24a4910b22087e97fde2f7d Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:56:18 +0100 Subject: [PATCH 19/28] Update SendSignal.java --- .../com/vonage/quickstart/video/SendSignal.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/vonage/quickstart/video/SendSignal.java b/src/main/java/com/vonage/quickstart/video/SendSignal.java index 33614eb..7cfaf63 100644 --- a/src/main/java/com/vonage/quickstart/video/SendSignal.java +++ b/src/main/java/com/vonage/quickstart/video/SendSignal.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; @@ -19,6 +34,6 @@ public static void main(String[] args) throws Exception { videoClient.signalAll(VIDEO_SESSION_ID, signal); - System.out.println("Sent signal"); + System.out.println("Sent signal to all participants"); } } From 233adda7121baa0f28df15ee7545a4d170c65366 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:56:42 +0100 Subject: [PATCH 20/28] Update SetStreamLayout.java --- .../quickstart/video/SetStreamLayout.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/vonage/quickstart/video/SetStreamLayout.java b/src/main/java/com/vonage/quickstart/video/SetStreamLayout.java index 7a73b79..e2ade1a 100644 --- a/src/main/java/com/vonage/quickstart/video/SetStreamLayout.java +++ b/src/main/java/com/vonage/quickstart/video/SetStreamLayout.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; @@ -17,6 +32,6 @@ public static void main(String[] args) throws Exception { videoClient.setStreamLayout(VIDEO_SESSION_ID, stream); - System.out.println("Set stream layout"); + System.out.println("Set session stream layout"); } } From 8aa40c94c61ac56e80069d16f694497b3d59155b Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:58:45 +0100 Subject: [PATCH 21/28] Update SipDial.java --- .../com/vonage/quickstart/video/SipDial.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/vonage/quickstart/video/SipDial.java b/src/main/java/com/vonage/quickstart/video/SipDial.java index ad874ae..ea14968 100644 --- a/src/main/java/com/vonage/quickstart/video/SipDial.java +++ b/src/main/java/com/vonage/quickstart/video/SipDial.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; @@ -20,6 +35,6 @@ public static void main(String[] args) throws Exception { SipDialResponse parsed = videoClient.sipDial(request); - System.out.println("Dialed sip"); + System.out.println("Initiated SIP connection: " + parsed.toJson()); } } From fea9dfc0e1f05001c7c21e5d53bb919b22a29b21 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:59:21 +0100 Subject: [PATCH 22/28] Update StopArchive.java --- .../com/vonage/quickstart/video/StopArchive.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/com/vonage/quickstart/video/StopArchive.java b/src/main/java/com/vonage/quickstart/video/StopArchive.java index 6530334..0ee842d 100644 --- a/src/main/java/com/vonage/quickstart/video/StopArchive.java +++ b/src/main/java/com/vonage/quickstart/video/StopArchive.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; From ee6f0a33dac5ffb3da87dfbe2fb861cd527928b4 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 14:59:43 +0100 Subject: [PATCH 23/28] Update StopBroadcast.java --- .../vonage/quickstart/video/StopBroadcast.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/com/vonage/quickstart/video/StopBroadcast.java b/src/main/java/com/vonage/quickstart/video/StopBroadcast.java index ebb94c7..2ca926c 100644 --- a/src/main/java/com/vonage/quickstart/video/StopBroadcast.java +++ b/src/main/java/com/vonage/quickstart/video/StopBroadcast.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; From 0d0d1516171aa27a8273299313cf7cc84fa1025e Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 15:00:02 +0100 Subject: [PATCH 24/28] Update UpdateArchiveLayout.java --- .../quickstart/video/UpdateArchiveLayout.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/com/vonage/quickstart/video/UpdateArchiveLayout.java b/src/main/java/com/vonage/quickstart/video/UpdateArchiveLayout.java index 320d66c..69880e9 100644 --- a/src/main/java/com/vonage/quickstart/video/UpdateArchiveLayout.java +++ b/src/main/java/com/vonage/quickstart/video/UpdateArchiveLayout.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; From aafa2e570524d7c3684a7e42b2d3eec784d890fb Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 15:00:17 +0100 Subject: [PATCH 25/28] Update UpdateBroadcastLayout.java --- .../quickstart/video/UpdateBroadcastLayout.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/com/vonage/quickstart/video/UpdateBroadcastLayout.java b/src/main/java/com/vonage/quickstart/video/UpdateBroadcastLayout.java index e227b89..ec47ffd 100644 --- a/src/main/java/com/vonage/quickstart/video/UpdateBroadcastLayout.java +++ b/src/main/java/com/vonage/quickstart/video/UpdateBroadcastLayout.java @@ -1,3 +1,18 @@ +/* + * Copyright 2025 Vonage + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.vonage.quickstart.video; import com.vonage.client.VonageClient; From e40f6db765760bc1c1ed45cb6bcecbd4e0e5c9ab Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 15:34:18 +0100 Subject: [PATCH 26/28] Update .env-example --- .env-example | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.env-example b/.env-example index 02584de..58b823d 100644 --- a/.env-example +++ b/.env-example @@ -144,6 +144,14 @@ VERIFY_TEMPLATE_NAME="verify" VERIFY_TEMPLATE_ID="bcdef09-8765-4321-8cde-0123456789ab" VERIFY_TEMPLATE_FRAGMENT_ID="aaaaaaaa-bbbb-4ccc-8ddd-0123456789ab" +# Video +VIDEO_SESSION_ID="flR1ZSBPY3QgMjkgMTI6MTM6MjMgUERUIDIwMTN" +VIDEO_TOKEN="eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl9pZCI6ImFhYWFhYWFhLWJiYmItNGNjYy04ZGRkLTAxMjM0NTY3ODlhYiJ9.o3U506EejsS8D5Tob90FG1NC1cR69fh3pFOpxnyTHVFfgqI6NWuuN8lEwrS3Zb8bGxE_A9LyyUZ2y4uqLpyXRw" +VIDEO_CONNECTION_ID="bcdef09-8765-4321-8cde-0123456789ab" +VIDEO_STREAM_ID="bcdef09-8765-4321-8cde-0123456789ab" +VIDEO_ARCHIVE_ID="aaaaaaaa-bbbb-4ccc-8ddd-0123456789ab" +VIDEO_BROADCAST_ID="aaaaaaaa-bbbb-4ccc-8ddd-0123456789ab" + # Voice VOICE_CALL_ID="aaaaaaaa-bbbb-4ccc-8ddd-0123456789ab" VOICE_TO_NUMBER="447700900000" @@ -156,11 +164,3 @@ VOICE_ANSWER_URL="https://nexmo-community.github.io/ncco-examples/transfer.json" VOICE_STREAM_URL="https://nexmo-community.github.io/ncco-examples/silent-loop.json" VOICE_RECORDING_URL="https://api.nexmo.com/v1/files/bbbbbbbb-aaaa-cccc-dddd-0123456789ab.wav" VOICE_EVENT_URL="https://example.org/webhooks/voice/event" - -# Video -VIDEO_SESSION_ID="" -VIDEO_TOKEN="" -VIDEO_CONNECTION_ID="" -VIDEO_STREAM_ID="" -VIDEO_ARCHIVE_ID="" -VIDEO_BROADCAST_ID="" From e83c4d7446292d5c1d6f08a9b933ae822744e406 Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 15:35:03 +0100 Subject: [PATCH 27/28] Delete JsonPrinter.java --- .../vonage/quickstart/util/JsonPrinter.java | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 src/main/java/com/vonage/quickstart/util/JsonPrinter.java diff --git a/src/main/java/com/vonage/quickstart/util/JsonPrinter.java b/src/main/java/com/vonage/quickstart/util/JsonPrinter.java deleted file mode 100644 index 548ca0c..0000000 --- a/src/main/java/com/vonage/quickstart/util/JsonPrinter.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.vonage.quickstart.util; - -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.SerializationFeature; - -public class JsonPrinter { - public static final ObjectMapper mapper = new ObjectMapper().enable(SerializationFeature.INDENT_OUTPUT); - - public static void print(Object obj) { - try { - String json = mapper.writeValueAsString(obj); - System.out.println(json); - } catch (Exception e) { - System.out.println("Failed to convert object to JSON: "); - e.printStackTrace(); - } - } -} From d701860a390ad72daabbe59df186e79dc292cfbe Mon Sep 17 00:00:00 2001 From: Sina Madani Date: Fri, 25 Apr 2025 15:40:33 +0100 Subject: [PATCH 28/28] Update CreateBroadcast.java --- src/main/java/com/vonage/quickstart/video/CreateBroadcast.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java b/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java index dff7537..35fb80f 100644 --- a/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java +++ b/src/main/java/com/vonage/quickstart/video/CreateBroadcast.java @@ -18,7 +18,6 @@ import com.vonage.client.VonageClient; import com.vonage.client.video.*; import static com.vonage.quickstart.EnvironmentVariables.*; -import com.vonage.quickstart.util.JsonPrinter; import java.time.Duration; public class CreateBroadcast {