modified update_channel