Skip to content
This repository was archived by the owner on Apr 1, 2025. It is now read-only.

Commit c8c03da

Browse files
authored
Merge pull request #41 from AssemblyAI/niels/update-sample
Update sample, increase HTTP request timeout
2 parents f245cae + 52f9b77 commit c8c03da

File tree

2 files changed

+44
-26
lines changed

2 files changed

+44
-26
lines changed

sample-app/src/main/java/sample/App.java

Lines changed: 41 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3,68 +3,83 @@
33
import com.assemblyai.api.AssemblyAI;
44
import com.assemblyai.api.RealtimeTranscriber;
55
import com.assemblyai.api.resources.files.types.UploadedFile;
6-
import com.assemblyai.api.resources.transcripts.requests.TranscriptParams;
7-
import com.assemblyai.api.resources.transcripts.requests.WordSearchParams;
8-
import com.assemblyai.api.resources.transcripts.types.ParagraphsResponse;
9-
import com.assemblyai.api.resources.transcripts.types.SentencesResponse;
10-
import com.assemblyai.api.resources.transcripts.types.SubtitleFormat;
11-
import com.assemblyai.api.resources.transcripts.types.Transcript;
12-
import com.assemblyai.api.resources.transcripts.types.TranscriptList;
13-
import com.assemblyai.api.resources.transcripts.types.WordSearchResponse;
6+
import com.assemblyai.api.resources.lemur.requests.LemurTaskParams;
7+
import com.assemblyai.api.resources.lemur.types.LemurTaskResponse;
8+
import com.assemblyai.api.resources.transcripts.requests.*;
9+
import com.assemblyai.api.resources.transcripts.types.*;
1410
import java.io.File;
1511
import java.io.FileInputStream;
1612
import java.io.IOException;
1713
import java.nio.file.Files;
14+
import java.util.List;
1815

1916
public final class App {
2017

2118
public static void main(String... args) throws IOException {
22-
AssemblyAI aai = AssemblyAI.builder()
19+
AssemblyAI client = AssemblyAI.builder()
2320
.apiKey(System.getenv("ASSEMBLYAI_API_KEY"))
2421
.build();
2522

26-
Transcript transcript =
27-
aai.transcripts().transcribe("https://storage.googleapis.com/aai-docs-samples/nbc.mp3");
28-
System.out.println(transcript);
23+
Transcript transcript = client.transcripts().transcribe(
24+
"https://storage.googleapis.com/client-docs-samples/nbc.mp3",
25+
TranscriptOptionalParams.builder()
26+
.sentimentAnalysis(true)
27+
.build()
28+
);
29+
30+
for(SentimentAnalysisResult result: transcript.getSentimentAnalysisResults().get())
31+
{
32+
System.out.println("Text: " + result.getText());
33+
System.out.println("Sentiment: " + result.getSentiment());
34+
System.out.println("Confidence: " + result.getConfidence());
35+
System.out.printf("Timestamp: %s - %s", result.getStart(), result.getEnd());
36+
}
2937

30-
SentencesResponse sentences = aai.transcripts().getSentences(transcript.getId());
38+
SentencesResponse sentences = client.transcripts().getSentences(transcript.getId());
3139
System.out.println("Get transcript sentences. " + sentences);
3240

33-
ParagraphsResponse paragraphs = aai.transcripts().getParagraphs(transcript.getId());
41+
ParagraphsResponse paragraphs = client.transcripts().getParagraphs(transcript.getId());
3442
System.out.println("Get transcript paragraphs. " + paragraphs);
3543

36-
String srt = aai.transcripts().getSubtitles(transcript.getId(), SubtitleFormat.SRT);
44+
String srt = client.transcripts().getSubtitles(transcript.getId(), SubtitleFormat.SRT);
3745
System.out.println("Get transcript srt. " + srt);
3846

39-
String vtt = aai.transcripts().getSubtitles(transcript.getId(), SubtitleFormat.VTT);
47+
String vtt = client.transcripts().getSubtitles(transcript.getId(), SubtitleFormat.VTT);
4048
System.out.println("Get transcript vtt. " + vtt);
4149

42-
WordSearchResponse search = aai.transcripts().wordSearch(transcript.getId(), WordSearchParams.builder()
50+
WordSearchResponse search = client.transcripts().wordSearch(transcript.getId(), WordSearchParams.builder()
4351
.words("NBC")
4452
.build());
4553
System.out.println("Search transcript. " + search);
4654

47-
transcript = aai.transcripts().delete(transcript.getId());
55+
transcript = client.transcripts().delete(transcript.getId());
4856
System.out.println("Delete transcript. " + transcript);
4957

5058
File file = new File("sample-app/src/main/resources/nZP7pb_t4oA.mp3");
51-
UploadedFile uploadedFile = aai.files().upload(Files.readAllBytes(file.toPath()));
59+
UploadedFile uploadedFile = client.files().upload(Files.readAllBytes(file.toPath()));
5260
System.out.println("Uploaded file" + uploadedFile);
5361

54-
transcript = aai.transcripts().submit(TranscriptParams.builder()
55-
.audioUrl("https://storage.googleapis.com/aai-docs-samples/nbc.mp3")
62+
transcript = client.transcripts().submit(TranscriptParams.builder()
63+
.audioUrl("https://storage.googleapis.com/client-docs-samples/nbc.mp3")
5664
.build());
5765
System.out.println("Created transcript " + transcript);
5866

59-
transcript = aai.transcripts().get(transcript.getId());
67+
transcript = client.transcripts().get(transcript.getId());
6068
System.out.println("Got transcript. " + transcript);
6169

62-
TranscriptList transcripts = aai.transcripts().list();
70+
TranscriptList transcripts = client.transcripts().list();
6371
System.out.println("List transcript. " + transcripts);
6472

73+
LemurTaskResponse response = client.lemur().task(LemurTaskParams.builder()
74+
.prompt("Summarize this transcript.")
75+
.transcriptIds(List.of(transcript.getId()))
76+
.build());
77+
78+
System.out.println("Summary: " + response.getResponse());
79+
6580
RealtimeTranscriber realtimeTranscriber = RealtimeTranscriber.builder()
81+
.apiKey(System.getenv("ASSEMBLYAI_API_KEY"))
6682
.onSessionStart(System.out::println)
67-
.apiKey(System.getenv("ASSEMBLY_AI_API_KEY"))
6883
.onPartialTranscript(System.out::println)
6984
.onFinalTranscript(System.out::println)
7085
.onError((err) -> System.out.println(err.getMessage()))
@@ -81,8 +96,9 @@ public static void streamFile(String filePath, RealtimeTranscriber realtimeTrans
8196

8297
while (fileInputStream.read(buffer) != -1) {
8398
realtimeTranscriber.sendAudio(buffer);
99+
Thread.sleep(300);
84100
}
85-
} catch (IOException e) {
101+
} catch (IOException | InterruptedException e) {
86102
e.printStackTrace();
87103
}
88104
}

src/main/java/com/assemblyai/api/core/ClientOptions.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import java.util.HashMap;
77
import java.util.Map;
8+
import java.util.concurrent.TimeUnit;
89
import java.util.function.Supplier;
910
import okhttp3.OkHttpClient;
1011

@@ -34,7 +35,6 @@ private ClientOptions(
3435
"JAVA"));
3536
this.headerSuppliers = headerSuppliers;
3637
this.httpClient = httpClient;
37-
;
3838
}
3939

4040
public Environment environment() {
@@ -85,6 +85,8 @@ public Builder addHeader(String key, Supplier<String> value) {
8585
public ClientOptions build() {
8686
OkHttpClient okhttpClient = new OkHttpClient.Builder()
8787
.addInterceptor(new RetryInterceptor(3))
88+
// set longer timeout for LeMUR
89+
.connectTimeout(30, TimeUnit.SECONDS)
8890
.build();
8991
return new ClientOptions(environment, headers, headerSuppliers, okhttpClient);
9092
}

0 commit comments

Comments
 (0)