Do we need all this if/else considering the login inside `getChannel()` ?