Reply to. Laravel 5.8 – Stack Overflow en español

Felices fiestas y pronto Feliz Año.

Os comento, actualmente cuando relleno un formulario a través hago un envio de email con los datos del formulario. Para ello utilizo Mail de Laravel que te lo pone muy facil.

El problema viene, que en un formulario de contacto necesito poder hacer un reply a la persona que lo envia y de la forma actual no se si se puede.

Normalmente en el controlador:

Mail::to('info@correorecibe.es')->send(new Cont($contacto));

Esto va al controlador de email para este formulario:

class Cont extends Mailable
{
    use Queueable, SerializesModels;

    public $subject = 'Página web - Formulario de contacto';

    public $contacto;

    public function __construct($contacto)
    {
        $this->contacto = $contacto;

    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        return $this->view('emails.contacto');
    }
}

Y va a una plantilla HTML con los datos del formulario.

Bien buscando por internet, vi esto para poder hacer un reply, pero es algo diferente a lo que yo estoy haciendo.

En el controlador:

Mail::send('emails.contacto', $contacto, function($message)
        {
            $message->to('info@correorecibe.es', 'John Smith')
                ->replyTo('reply@example.com', 'Reply Guy')
                ->subject('Welcome!');
        });

Pero me devuelve un error:

Argument 2 passed to IlluminateMailMailer::send() must be of the type array, object given, called in /var/www/highas/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php on line 239

Bien lo he solventado así:

Mail::send('emails.contacto', ('contacto'=>$contacto), function($message)
 {
   $message->to('info@correorecibe.es', 'John Smith')
   ->replyTo('reply@example.com', 'Reply Guy')
   ->subject('Welcome!');
 });

Pero ahora pruebo meterle en el reply las variables, y no las reconoce:

El controlador está así:

$contacto = new Contacto;
$contacto->asunto = $request->input('asunto');
$contacto->nombre = $request->input('nombre');
$contacto->telefono = $request->input('telefono');
$contacto->asunto = $request->input('asunto');
$contacto->email = $request->input('email');
$contacto->mensaje = $request->input('mensaje');
$contacto->estado = 0;

$contacto->save();

        

Mail::send('emails.contacto', ('contacto'=>$contacto), function($message)
   {
    $message->to('info@correorecibe.es', 'John Smith')
             ->replyTo($contacto->email, $contacto->nombre)
             ->subject('Welcome!');
    });

Pero me dice que no existe la variable $contacto como puedo acceder a los datos?