As of 2020-11-25 The syntax of channel.push(...)
should be updated to include a second parameter.
As written the book states on page 47:
channel.push("ping")
.receive(...)
This causes an error that precedes and prevents joining the channel in addition to preventing the reception of any messages back from the server:
A slight modification allows success:
channel.push("ping", {})
.receive(...)
This error is likely due to a contract change in the Phoenix channel library.