Skip to content

Commit 48ab274

Browse files
committed
add chat id
1 parent b4a5a85 commit 48ab274

File tree

4 files changed

+11
-5
lines changed

4 files changed

+11
-5
lines changed

src/Backend/Filter/DateQueryFilter.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
use DateTimeImmutable;
2424
use Exception;
2525
use Fusio\Engine\RequestInterface;
26-
use PSX\Sql\ColumnInterface;
2726
use PSX\Sql\Condition;
2827
use PSX\Sql\TableInterface;
2928

src/Backend/Filter/QueryFilter.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
class QueryFilter
3737
{
3838
public const COLUMN_SEARCH = 'search';
39+
public const DEFAULT_LENGTH = 16;
3940

4041
private int $startIndex;
4142
private int $count;
@@ -50,7 +51,7 @@ public function __construct(int $startIndex, int $count, ?string $search = null,
5051
}
5152

5253
if ($count < 1 || $count > 1024) {
53-
$count = 16;
54+
$count = self::DEFAULT_LENGTH;
5455
}
5556

5657
if ($sortOrder === 'asc') {

src/Backend/View/Agent/Message.php

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
namespace Fusio\Impl\Backend\View\Agent;
2222

2323
use Fusio\Engine\ContextInterface;
24+
use Fusio\Impl\Backend\Filter\QueryFilter;
2425
use Fusio\Impl\Service;
2526
use Fusio\Impl\Table;
2627
use PSX\Nested\Builder;
@@ -45,14 +46,18 @@ public function getCollection(int $agentId, ?string $chatId, ContextInterface $c
4546

4647
if (!empty($chatId)) {
4748
$condition->equals(Table\Generated\AgentMessageColumn::CHAT_ID, $chatId);
49+
50+
$count = $this->getTable(Table\Agent\Message::class)->getCount($condition);
51+
$startIndex = max(0, $count - Service\Agent\Sender::CONTEXT_MESSAGES_LENGTH);
4852
$sortOrder = OrderBy::ASC;
4953
} else {
5054
$condition->equals(Table\Generated\AgentMessageColumn::CHILD, 0);
55+
56+
$startIndex = 0;
57+
$count = QueryFilter::DEFAULT_LENGTH;
5158
$sortOrder = OrderBy::DESC;
5259
}
5360

54-
$count = $this->getTable(Table\Agent\Message::class)->getCount($condition);
55-
$startIndex = max(0, $count - Service\Agent\Sender::CONTEXT_MESSAGES_LENGTH);
5661
$sortBy = Table\Generated\AgentMessageColumn::ID;
5762

5863
$builder = new Builder($this->connection);
@@ -63,6 +68,7 @@ public function getCollection(int $agentId, ?string $chatId, ContextInterface $c
6368
'itemsPerPage' => Service\Agent\Sender::CONTEXT_MESSAGES_LENGTH,
6469
'entry' => $builder->doCollection([$this->getTable(Table\Agent\Message::class), 'findBy'], [$condition, $startIndex, $count, $sortBy, $sortOrder], [
6570
'id' => $builder->fieldInteger(Table\Generated\AgentMessageTable::COLUMN_ID),
71+
'chatId' => Table\Generated\AgentMessageTable::COLUMN_CHAT_ID,
6672
'role' => $builder->fieldCallback(Table\Generated\AgentMessageTable::COLUMN_ORIGIN, function ($value) {
6773
return match ($value) {
6874
Table\Agent\Message::ORIGIN_ASSISTANT => 'assistant',

src/Service/Agent/Sender.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
/**
5757
* Max number of messages which are attached to the context
5858
*/
59-
public const CONTEXT_MESSAGES_LENGTH = 16;
59+
public const CONTEXT_MESSAGES_LENGTH = 10;
6060

6161
private ObjectMapper $objectMapper;
6262

0 commit comments

Comments
 (0)