- Removed `SocialMediaService` and migrated core post generation logic to `GeneratePostService`. - Added `GetAllChatMessagesAction` for fetching chat history. - Introduced `MessageDto`, `MessageResource`, and `MessageCollection` for consistent backend API responses. - Updated frontend state and services to support JSON:API-compliant chat messages and history retrieval. - Improved typings and casting for chat message data.
30 lines
836 B
PHP
30 lines
836 B
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Attributes\Fillable;
|
|
use Illuminate\Database\Eloquent\Attributes\Table;
|
|
use Illuminate\Database\Eloquent\Concerns\HasUuids;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
|
|
|
#[Fillable(['conversation_id', 'agent_id', 'role', 'content', 'attachments', 'tool_calls', 'tool_results', 'usage', 'meta', 'content', 'user_id'])]
|
|
#[Table('agent_conversation_messages')]
|
|
class ChatMessage extends Model
|
|
{
|
|
use HasUuids;
|
|
|
|
public function chat(): BelongsTo
|
|
{
|
|
return $this->belongsTo(Chat::class, 'conversation_id', 'id');
|
|
}
|
|
|
|
protected $casts = [
|
|
'attachments' => 'array',
|
|
'meta' => 'array',
|
|
'usage' => 'array',
|
|
'tool_calls' => 'array',
|
|
'tool_results' => 'array',
|
|
];
|
|
}
|