>>601

node-redで使ってるコードなので適宜読み替えてもらえれば。
javascriptを普段使わないので、callback部分とか適切に書けているかあまり自信はないです。。

npmでcastv2-clientがインストールされている前提です。
現在の音量を取得したあとに音量を新しい値に設定します。
あとで音量を元に戻したい場合はcurvol.levelを使ってsetVolumeし直して下さい。

// input : msg.castv2.ipaddr, msg.castv2.volume
// output: msg

var ipaddr = msg.castv2.ipaddr || "192.168.xxx.xxx";
// volume は min:0 max:1 で指定
var volume = msg.castv2.volume || 0.5;

var Client = require('castv2-client').Client;

var client = new Client();
client.connect(ipaddr, function() {

client.getVolume(function(err, curvol){
if(err) console.log(err);
console.log(curvol);

client.setVolume({ level: volume }, function(err, newvol){
if(err) console.log(err);
console.log(newvol);

client.close();
});
});

client.on('error', function(err) {
console.log('Error: %s', err.message);
client.close();
callback('error');
});
});

return msg;