fox/app/Livewire/Widgets/ScreenPreview.php

39 lines
933 B
PHP

<?php
namespace App\Livewire\Widgets;
use App\Services\FoxAgent;
use Livewire\Attributes\On;
use Livewire\Component;
class ScreenPreview extends Component
{
public bool $sharing = false;
public bool $analyzing = false;
/**
* Wird vom Browser-JS via Livewire-Dispatch aufgerufen, sobald
* ein Screenshot als Base64 vorliegt.
*/
#[On('screen-shot-captured')]
public function analyze(string $base64): void
{
$this->analyzing = true;
// Nur Hinweis-Text in den Chat geben - echte Vision-Analyse
// braucht ein Multimodal-Modell (llava etc.) - hier Placeholder.
app(FoxAgent::class)->recordUserMessage(
'[Screenshot wurde geteilt - '.strlen($base64).' bytes]',
['screenshot' => true],
);
$this->analyzing = false;
}
public function render()
{
return view('livewire.widgets.screen-preview');
}
}