channel(); $channel->queue_declare('task_queue', false, true, false, false); echo " [*] Waiting for messages. To exit press CTRL+C\n"; $callback = function ($msg) { echo ' [x] Received ', $msg->getBody(), "\n"; sleep(substr_count($msg->getBody(), '.')); echo " [x] Done\n"; $msg->ack(); }; $channel->basic_qos(null, 1, false); $channel->basic_consume('task_queue', '', false, false, false, false, $callback); try { $channel->consume(); } catch (\Throwable $exception) { echo $exception->getMessage(); } $channel->close(); $connection->close();