mirror of
https://github.com/nextcloud/spreed.git
synced 2025-12-18 05:20:50 +01:00
fixup! feat: add scheduled messages BG job
This commit is contained in:
parent
d041252376
commit
5f1a897f24
1 changed files with 2 additions and 16 deletions
|
|
@ -61,7 +61,6 @@ class SendScheduledMessages extends TimedJob {
|
|||
#[\Override]
|
||||
protected function run($argument): void {
|
||||
$time = $this->time->getDateTime('-1 second');
|
||||
$this->logger->error('time: ' . $time->format('Y-m-d H:i:s'));
|
||||
try {
|
||||
$messages = $this->scheduledMessageService->getDue($time);
|
||||
$this->logger->error(count($messages) . ' messages found');
|
||||
|
|
@ -89,12 +88,8 @@ class SendScheduledMessages extends TimedJob {
|
|||
}
|
||||
|
||||
$room = $rooms[$message->getRoomId()];
|
||||
$this->logger->error('Getting room ' . $room->getId());
|
||||
|
||||
try {
|
||||
$participant = $this->participantService->getParticipantByActor($room, $message->getActorType(), $message->getActorId());
|
||||
$this->logger->error('Got participant ' . $participant->getAttendee()->getActorId());
|
||||
|
||||
} catch (ParticipantNotFoundException $e) {
|
||||
$this->logger->error('Participant not found', ['exception' => $e]);
|
||||
$this->scheduledMessageService->deleteMessage($room, $message->getId(), $message->getActorType(), $message->getActorId());
|
||||
|
|
@ -124,14 +119,12 @@ class SendScheduledMessages extends TimedJob {
|
|||
$parent = $parentMessage = null;
|
||||
if ($message->getParentId() !== 0 && $message->getParentId() !== null) {
|
||||
try {
|
||||
$this->logger->error('Getting parent');
|
||||
$parent = $this->chatManager->getParentComment($room, (string)$message->getParentId());
|
||||
$parentMessage = $this->messageParser->createMessage($room, $participant, $parent, $this->l10n);
|
||||
$this->messageParser->parseMessage($parentMessage);
|
||||
if (!$parentMessage->isReplyable()) {
|
||||
// Log and continue or delete?
|
||||
$this->logger->error('Parent message for scheduled message not replyable');
|
||||
$this->logger->error('Message to delete: ' . $message->getId());
|
||||
$this->scheduledMessageService->deleteMessage(
|
||||
$room,
|
||||
$message->getId(),
|
||||
|
|
@ -145,11 +138,9 @@ class SendScheduledMessages extends TimedJob {
|
|||
$this->logger->error('Parent for scheduled message not found', ['exception' => $e]);
|
||||
}
|
||||
} elseif ($message->getThreadId() !== 0 && $message->getThreadId() !== -1) {
|
||||
$this->logger->error('Thread ' . $message->getThreadId());
|
||||
if (!$this->threadService->validateThread($room->getId(), $message->getThreadId())) {
|
||||
$this->logger->error('Could not validate thread for scheduled message');
|
||||
$message->setThreadId(0);
|
||||
$this->logger->error('Set thread to 0 for ' . $message->getId());
|
||||
$this->logger->error('Could not validate thread for scheduled message, set thread to 0 for ' . $message->getId());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -170,11 +161,9 @@ class SendScheduledMessages extends TimedJob {
|
|||
'',
|
||||
$metaData[ScheduledMessage::METADATA_SILENT] ?? false,
|
||||
threadId: $threadId);
|
||||
$this->logger->error('Sent messag: #' . $message->getId() . ' ' . $comment->getMessage());
|
||||
$this->logger->debug('Sent message #' . $message->getId() . ' ' . $comment->getMessage());
|
||||
if ($threadId === Thread::THREAD_CREATE && $threadTitle !== '') {
|
||||
$this->logger->error('thread');
|
||||
$thread = $this->threadService->createThread($room, (int)$comment->getId(), $threadTitle);
|
||||
$this->logger->error('Thread created');
|
||||
// Add to subscribed threads list
|
||||
$this->threadService->setNotificationLevel($participant->getAttendee(), $thread->getId(), Participant::NOTIFY_DEFAULT);
|
||||
|
||||
|
|
@ -204,11 +193,8 @@ class SendScheduledMessages extends TimedJob {
|
|||
continue;
|
||||
}
|
||||
|
||||
$this->logger->error('Message sent: ' . $message->getMessage());
|
||||
$deleted = $this->scheduledMessageService->deleteMessage($room, (string)$message->getId(), $message->getActorType(), $message->getActorId());
|
||||
$this->logger->error('Deleted: ' . $deleted);
|
||||
$hasScheduledMessages = $this->scheduledMessageService->getScheduledMessageCount($room, $participant);
|
||||
$this->logger->error('Scheduled message count' . $hasScheduledMessages);
|
||||
$this->participantService->setHasScheduledMessages($participant, $hasScheduledMessages);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue