diff --git a/app/controllers/api/messaging.php b/app/controllers/api/messaging.php index f4718e55b2..533086a058 100644 --- a/app/controllers/api/messaging.php +++ b/app/controllers/api/messaging.php @@ -1321,7 +1321,7 @@ App::get('/v1/messaging/messages/:messageId') $response->dynamic($message, Response::MODEL_MESSAGE); }); -App::post('/v1/messaging/messages/email/:messageId') +App::patch('/v1/messaging/messages/email/:messageId') ->desc('Update an email.') ->groups(['api', 'messaging']) ->label('audits.event', 'messages.update') @@ -1393,6 +1393,5 @@ App::post('/v1/messaging/messages/email/:messageId') } $response - ->setStatusCode(Response::STATUS_CODE_CREATED) ->dynamic($message, Response::MODEL_MESSAGE); }); diff --git a/app/workers/messaging.php b/app/workers/messaging.php index 14a08e8cfa..8432e43d80 100644 --- a/app/workers/messaging.php +++ b/app/workers/messaging.php @@ -100,9 +100,10 @@ class MessagingV1 extends Worker $maxBatchSize = $adapter->getMaxMessagesPerRequest(); $batches = \array_chunk($identifiers, $maxBatchSize); + $batchIndex = 0; - $results = batch(\array_map(function ($batch) use ($message, $provider, $adapter) { - return function () use ($batch, $message, $provider, $adapter) { + $results = batch(\array_map(function ($batch) use ($message, $provider, $adapter, $batchIndex) { + return function () use ($batch, $message, $provider, $adapter, $batchIndex) { $deliveredTo = 0; $deliveryErrors = []; $messageData = clone $message; @@ -117,10 +118,9 @@ class MessagingV1 extends Worker $adapter->send($data); $deliveredTo += \count($batch); } catch (\Exception $e) { - foreach ($batch as $identifier) { - $deliveryErrors[] = 'Failed to send message to target' . $identifier . ': ' . $e->getMessage(); - } + $deliveryErrors[] = 'Failed sending to targets ' . $batchIndex + 1 . '-' . \count($batch) . ' with error: ' . $e->getMessage(); } finally { + $batchIndex++; return [ 'deliveredTo' => $deliveredTo, 'deliveryErrors' => $deliveryErrors,