diff --git a/lib/Service/RecordingService.php b/lib/Service/RecordingService.php index e56e581284b..fa3881ace82 100644 --- a/lib/Service/RecordingService.php +++ b/lib/Service/RecordingService.php @@ -34,6 +34,7 @@ use OCP\Notification\IManager; use OCP\Share\IManager as ShareManager; use OCP\Share\IShare; +use OCP\SystemTag\ISystemTagObjectMapper; use OCP\TaskProcessing\Exception\Exception; use OCP\TaskProcessing\IManager as ITaskProcessingManager; use OCP\TaskProcessing\Task; @@ -80,6 +81,7 @@ public function __construct( protected LoggerInterface $logger, protected BackendNotifier $backendNotifier, protected ITaskProcessingManager $taskProcessingManager, + protected ISystemTagObjectMapper $systemTagMapper, protected IFactory $l10nFactory, protected IUserManager $userManager, ) { @@ -239,6 +241,7 @@ public function storeTranscript(string $owner, string $roomToken, int $recording $transcriptFileName, $output . "\n\n$warning\n", ); + $this->systemTagMapper->assignGeneratedByAITag((string)$fileNode->getId(), 'files'); $this->notifyStoredTranscript($room, $participant, $fileNode, $aiTask); } catch (NoUserException) { throw new InvalidArgumentException('owner_invalid'); diff --git a/src/components/CallView/BottomBar.vue b/src/components/CallView/BottomBar.vue index 02cea1c4d89..b3b72fcccbf 100644 --- a/src/components/CallView/BottomBar.vue +++ b/src/components/CallView/BottomBar.vue @@ -84,7 +84,7 @@ const liveTranscriptionButtonLabel = computed(() => { return t('spreed', 'Disable live transcription') } - return t('spreed', 'Enable live transcription') + return t('spreed', 'Enable live transcription (generated by AI)') }) const liveTranslationButtonLabel = computed(() => { @@ -92,7 +92,7 @@ const liveTranslationButtonLabel = computed(() => { return t('spreed', 'Disable live translation') } - return t('spreed', 'Enable live translation') + return t('spreed', 'Enable live translation (generated by AI)') }) const originalLanguageButtonLabel = computed(() => { diff --git a/src/components/MessagesList/MessagesList.vue b/src/components/MessagesList/MessagesList.vue index 40f75bd97d3..a1f1e4fef9d 100644 --- a/src/components/MessagesList/MessagesList.vue +++ b/src/components/MessagesList/MessagesList.vue @@ -80,7 +80,7 @@ v-if="shouldShowSummaryOption" :disabled="loadingSummary" @click="generateSummary"> - {{ t('spreed', 'Generate summary') }} + {{ t('spreed', 'Generate summary with AI') }} diff --git a/tests/php/Service/RecordingServiceTest.php b/tests/php/Service/RecordingServiceTest.php index 4c646c2e826..5dbad90c731 100644 --- a/tests/php/Service/RecordingServiceTest.php +++ b/tests/php/Service/RecordingServiceTest.php @@ -37,6 +37,7 @@ function is_uploaded_file($filename) { use OCP\L10N\IFactory; use OCP\Notification\IManager; use OCP\Share\IManager as ShareManager; +use OCP\SystemTag\ISystemTagObjectMapper; use OCP\TaskProcessing\IManager as ITaskProcessingManager; use PHPUnit\Framework\Attributes\DataProvider; use PHPUnit\Framework\MockObject\MockObject; @@ -59,6 +60,7 @@ class RecordingServiceTest extends TestCase { protected LoggerInterface&MockObject $logger; protected BackendNotifier&MockObject $backendNotifier; protected ITaskProcessingManager&MockObject $taskProcessingManager; + protected ISystemTagObjectMapper&MockObject $systemTagMapper; protected IFactory&MockObject $l10nFactory; protected IUserManager&MockObject $userManager; protected RecordingService $recordingService; @@ -81,6 +83,7 @@ public function setUp(): void { $this->logger = $this->createMock(LoggerInterface::class); $this->backendNotifier = $this->createMock(BackendNotifier::class); $this->taskProcessingManager = $this->createMock(ITaskProcessingManager::class); + $this->systemTagMapper = $this->createMock(ISystemTagObjectMapper::class); $this->l10nFactory = $this->createMock(IFactory::class); $this->userManager = $this->createMock(IUserManager::class); @@ -100,6 +103,7 @@ public function setUp(): void { $this->logger, $this->backendNotifier, $this->taskProcessingManager, + $this->systemTagMapper, $this->l10nFactory, $this->userManager, );