Can channel multiplexing invoke a callback per channel?

Yes, you can define a different callback for each channel. This requires that you invoke subscribe once for each separate callback.

function callback1(msg) {
    console.log("channel 1: " + JSON.stringify(msg));
}

function callbackOther(msg, env, ch) {
    console.log("channel " + ch + ": " + JSON.stringify(msg));
}

pubnub.subscribe({
    channel: 'channel1',
    message: callback1
});

pubnub.subscribe({
    channel: 'channel2,channel3',
    message: callbackOther
});