Initial (untested) channel implementation