require channel to be initialized with handlers