pass channel around in event callbacks