diff --git a/daemon/face/websocket-channel.hpp b/daemon/face/websocket-channel.hpp
index d40bc70..a793a7c 100644
--- a/daemon/face/websocket-channel.hpp
+++ b/daemon/face/websocket-channel.hpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
 /*
- * Copyright (c) 2014-2022,  Regents of the University of California,
+ * Copyright (c) 2014-2023,  Regents of the University of California,
  *                           Arizona Board of Regents,
  *                           Colorado State University,
  *                           University Pierre & Marie Curie, Sorbonne University,
@@ -36,17 +36,16 @@
 namespace nfd::face {
 
 /**
- * \brief Class implementing WebSocket-based channel to create faces
+ * \brief Class implementing a WebSocket-based channel to create faces.
  */
 class WebSocketChannel final : public Channel
 {
 public:
   /**
-   * \brief Create WebSocket channel for the local endpoint
+   * \brief Create a WebSocket channel for the given \p localEndpoint.
    *
-   * To enable creation of faces upon incoming connections,
-   * one needs to explicitly call WebSocketChannel::listen method.
-   * The created channel is bound to the localEndpoint.
+   * To enable the creation of faces upon incoming connections, one needs to
+   * explicitly call listen(). The created channel is bound to \p localEndpoint.
    */
   explicit
   WebSocketChannel(const websocket::Endpoint& localEndpoint);
@@ -65,7 +64,7 @@
 
   /**
    * \brief Enable listening on the local endpoint, accept connections,
-   *        and create faces when remote host makes a connection
+   *        and create faces when remote host makes a connection.
    *
    * \param onFaceCreated Callback to notify successful creation of a face
    */
@@ -73,12 +72,14 @@
   listen(const FaceCreatedCallback& onFaceCreated);
 
 NFD_PUBLIC_WITH_TESTS_ELSE_PRIVATE:
-  /** \pre listen hasn't been invoked
+  /**
+   * \pre listen() has not been invoked.
    */
   void
   setPingInterval(time::milliseconds interval);
 
-  /** \pre listen hasn't been invoked
+  /**
+   * \pre listen() has not been invoked.
    */
   void
   setPongTimeout(time::milliseconds timeout);
