Fix #312
Add strict type checking to channel options