I'm not receiving messages, how do I debug that?

 

  • Make sure the channel you're publishing on is the same channel you're subscribing to
    Ably channel names are case-sensitive -- sports is a different channel to Sports and my_channel is different to "my_channel".If this is the first publish on a channel the dev console will show a channel opened event with the name of the channel. If using pusher protocol adapter or laravel-broadcaster then channels may have a different mapping so for example if attaching to a private channel in the Ably dev console you would attach to private:my_private_channel instead of private-my_private_channel
  • Make sure you're using the same app everywhere
    Make sure you're not, say, publishing with an api key from your Sandbox app, but subscribing with an api key from your Production app)
  • You need to find out whether the problem is on the publishing or the subscribing side
    Open the dev console, attach to the channel that you're publishing on, and try a publish. Do you see the message appear there (but still not on your subscribing device)? If yes, the problem's on the subscribing side. If no, the problem's on the publishing side.
  • Enable client verbose logs on the publisher and subscriber.
    Check the logs on the publisher client for the protocol send message and the logs on the subscriber client for the protocol receive message


Debugging publish problems

When you call channel#publish, you can pass a callback (or equivalent - select the language you're using from the language bar), which if the publish failed will tell you why.

 

Debugging subscribe problems

- Check the connection state, make sure you're connected to Ably

- Check the channel state, make sure you're attached to the channel

- Make sure you've added a subscribe listener. If you added a listener for a specific event name, make sure you're publishing with the exact same event name