# Web Development with Clojure, Third Edition: missing methods (page 191)

**URL:** <https://forum.devtalk.com/t/web-development-with-clojure-third-edition-missing-methods-page-191/17417>\
**Category:** PragProg Customers\
**Tags:** book-web-development-with-clojure-third-edition, suggestion\
**Created:** [15 August 2021 05:22 UTC](https://forum.devtalk.com/t/web-development-with-clojure-third-edition-missing-methods-page-191/17417 "2021-08-15T05:22:07Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![pm9999](https://forum.devtalk.com/letter_avatar_proxy/v4/letter/p/13edae/32.png) [@pm9999](https://forum.devtalk.com/u/pm9999)\
**Post date:** [15 August 2021 05:22 UTC](https://forum.devtalk.com/t/web-development-with-clojure-third-edition-missing-methods-page-191/17417/1 "2021-08-15T05:22:07Z")

</div>

> Finally, we can remove our handle-message method for :chsk/ws-ping, since we’re  
> handling it directly from receive-message! now.

This hints that `:chsk/ws-ping` was defined earlier in `websockets.clj`. As far as I can tell only `websockets.cljs` has `:chsk/handshake` and `:chsk/state` defined on page 150 but nothing for `websockets.clj` on page 146 and page 147. Perhaps `:chsk/ws-ping` was missed for both clj/cljs and the clj was also missing handshake/state methods.

---

<div class="post-metadata">

**Author:** ![svmbrown](https://forum.devtalk.com/letter_avatar_proxy/v4/letter/s/7ea924/32.png) [@svmbrown](https://forum.devtalk.com/u/svmbrown)\
**Post date:** [20 August 2021 00:35 UTC](https://forum.devtalk.com/t/web-development-with-clojure-third-edition-missing-methods-page-191/17417/2 "2021-08-20T00:35:39Z")

</div>

It does seem that `:chsk/ws-ping` implementation is never referenced in the book. We must have overlooked it, sorry about that. It is in the code for the book here: [guestbook.routes.websockets](http://media.pragprog.com/titles/dswdcloj3/code/guestbook-author/src/clj/guestbook/routes/websockets.clj) if you’re curious.

The `:chsk/ws-ping` message can be safely ignored, since it is just a keep-alive ping. Our default handler should do a suitable job of ignoring it.

However, the `:chsk/handshake` and `:chsk/state` messages are handled by sente itself, and notify our client of any changes to its state. The server will never receive messages of this type, and therefore doesn’t need handlers for them.
