If the Listener is going to be handling the reconnects, without the callback, there's no way for the caller to know that it's not actually listening for notifications because the connections is down, which I'd say is a pretty major issue.  In my opinion, at minimum, we'd have to provide the caller a way to know that the connection is lost, but overall I'd be in favor of the standard Listener not doing any reconnects and having a convenience wrapper with configurable reconnection options for people who just want to listen without writing the reconnection logic themselves.