import sttrealtime "github.com/MyVocal-AI/myvocal-stt-realtime-sdks/go"
client, err := sttrealtime.NewClient(sttrealtime.Config{AccessKey: os.Getenv("MYVOCAL_ACCESS_KEY")})
if err != nil { log.Fatal(err) }
defer client.Close()
ctx := context.Background()
session, err := client.Connect(ctx, sttrealtime.ConnectOptions{
Request: &sttrealtime.SessionRequest{Title: "meeting", LanguageHint: "en",
Options: &sttrealtime.SessionOptions{InputEncoding: "pcm_s16le_16000", SegmentCommitMode: "vad"}},
Handlers: map[string]func(sttrealtime.Event){
sttrealtime.EventTranscriptFinal: func(e sttrealtime.Event) { fmt.Println("final:", e.Text()) },
},
})
if err != nil { log.Fatal(err) }
defer session.Close() // local resources only
if err := session.SendFile(ctx, "speech.wav", true); err != nil { log.Fatal(err) } // paced
result, err := session.Finish(ctx)
if err != nil { log.Fatal(err) }
fmt.Println(result.Status, result.TranscriptionID)