added event handleing for channels