Skip to content

Commit

Permalink
Merge pull request #309 from bcc-code/feat/notify-after-transcription…
Browse files Browse the repository at this point in the history
…-incremental

Add notifiction option to TranscribeVX
  • Loading branch information
KillerX authored Aug 19, 2024
2 parents f7ebdbd + 5c12ca6 commit 176d3fc
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 6 deletions.
6 changes: 4 additions & 2 deletions workflows/ingest/incremental_ingest.go
Original file line number Diff line number Diff line change
Expand Up @@ -139,8 +139,9 @@ func doIncremental(ctx workflow.Context, params IncrementalParams) error {

// Transcribe the video
transcribeFuture := workflow.ExecuteChildWorkflow(ctx, miscworkflows.TranscribeVX, miscworkflows.TranscribeVXInput{
VXID: videoVXID,
Language: "no",
VXID: videoVXID,
Language: "no",
NotificationChannel: &telegram.ChatOther,
})

_ = wfutils.Execute(ctx, activities.Vidispine.CreateThumbnailsActivity, vsactivity.CreateThumbnailsParams{
Expand All @@ -154,6 +155,7 @@ func doIncremental(ctx workflow.Context, params IncrementalParams) error {
errors = append(errors, err)
}
}

wfutils.SendTelegramText(ctx, telegram.ChatOther, "🟩 Audio import finished")

err = transcribeFuture.Get(ctx, nil)
Expand Down
23 changes: 19 additions & 4 deletions workflows/misc/transcribe-vx.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package miscworkflows

import (
"fmt"
"github.com/bcc-code/bcc-media-flows/services/telegram"

"github.com/bcc-code/bcc-media-flows/activities"
vsactivity "github.com/bcc-code/bcc-media-flows/activities/vidispine"
Expand All @@ -15,8 +16,9 @@ const transcriptionMetadataFieldName = "portal_mf624761"

// TranscribeVXInput is the input to the TranscribeFile
type TranscribeVXInput struct {
Language string
VXID string
Language string
VXID string
NotificationChannel *telegram.Chat
}

// TranscribeVX is the workflow that transcribes a video
Expand Down Expand Up @@ -99,15 +101,28 @@ func TranscribeVX(
return fmt.Errorf("failed to import transcription files: %v", errs)
}

err = wfutils.Execute(ctx, activities.Vidispine.ImportFileAsSidecarActivity, vsactivity.ImportSubtitleAsSidecarParams{
importSRTResult, err := wfutils.Execute(ctx, activities.Vidispine.ImportFileAsSidecarActivity, vsactivity.ImportSubtitleAsSidecarParams{
FilePath: transcriptionJob.SRTPath,
Language: "no",
AssetID: params.VXID,
}).Get(ctx, nil)
}).Result(ctx)
if err != nil {
return err
}

err = wfutils.Execute(ctx, activities.Vidispine.WaitForJobCompletion, vsactivity.WaitForJobCompletionParams{
JobID: importSRTResult.JobID,
SleepTime: 10,
}).Wait(ctx)

if err != nil {
return err
}

if params.NotificationChannel != nil {
wfutils.SendTelegramText(ctx, *params.NotificationChannel, fmt.Sprintf("🟦 Transcription import completed for VXID: %s", params.VXID))
}

txtValue, err := wfutils.ReadFile(ctx, transcriptionJob.TXTPath)
if err != nil {
return err
Expand Down

0 comments on commit 176d3fc

Please sign in to comment.