One choice would be to use similar thing as date command. Eg. make a format string for this. Format might be c:h:m (c is channel, h is hour and m is min) with default to forever (eg only channel given). Cli would then be in your example '-channel 1 -channel 2:20:10 -channel 3'. Then you need only one array to put all channel strings.
But as
Tanktalus said. It probably would be better to use config file.