Unreal OpenAI API 1.0.0
AudioTranscriptionAction.h
1// OpenAI, Copyright LifeEXE. All Rights Reserved.
2
3#pragma once
4
5#include "Kismet/BlueprintAsyncActionBase.h"
6#include "Provider/Types/AudioTypes.h"
7#include "Provider/Types/CommonTypes.h"
8#include "AudioTranscriptionAction.generated.h"
9
10DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams(FOnAudioTranscription, const FAudioTranscriptionResponse&, Response,
11 const FOpenAIResponseMetadata&, ResponseMetadata, const FOpenAIError&, RawError);
12
13class UOpenAIProvider;
14
15UCLASS()
16class UAudioTranscriptionAction : public UBlueprintAsyncActionBase
17{
18 GENERATED_BODY()
19
20public:
21 UPROPERTY(BlueprintAssignable)
22 FOnAudioTranscription OnCompleted;
23
24 virtual void Activate() override;
25
26private:
31 UFUNCTION(BlueprintCallable, meta = (BlueprintInternalUseOnly = "true"), Category = "OpenAI | Audio")
33 const FAudioTranscription& AudioTranscription, const FOpenAIAuth& Auth, const FString& URLOverride);
34
35 void TryToOverrideURL();
36
37 void OnCreateAudioTranscriptionCompleted(const FAudioTranscriptionResponse& Response, const FOpenAIResponseMetadata& ResponseMetadata);
38 void OnRequestError(const FString& URL, const FString& Content);
39
40private:
41 UPROPERTY()
42 TObjectPtr<UOpenAIProvider> Provider;
43
44 FAudioTranscription AudioTranscription;
45 FOpenAIAuth Auth;
46 FString URLOverride{};
47};
Definition: AudioTranscriptionAction.h:17
Definition: OpenAIProvider.h:45
void CreateAudioTranscription(const FAudioTranscription &AudioTranscription, const FOpenAIAuth &Auth)
Definition: OpenAIProvider.cpp:172
Definition: AudioTypes.h:103
Definition: AudioTypes.h:177
Definition: CommonTypes.h:11
Definition: CommonTypes.h:28
Definition: CommonTypes.h:49