void
 do_read()
 {
     // Read a message into our buffer
     ws_.async_read(
         buffer_,
         boost::asio::bind_executor(
             strand_,
             std::bind(
                 &session::on_read,
                 shared_from_this(),
                 std::placeholders::_1,
                 std::placeholders::_2)));
 }