@Override
protected void createCommands() {
super.createCommands();
Command a = new Command();
a.setName("Set " + getPojo().getName() + " volume to 50%");
a.setDescription("the TV " + getPojo().getName() + " changes its volume to 50%");
a.setReceiver("app.events.sensors.behavior.request.objects");
a.setProperty("object", getPojo().getName());
a.setProperty("behavior", "volume");
a.setProperty("value", "50");
Command b = new Command();
b.setName(getPojo().getName() + " volume up");
b.setDescription("increases " + getPojo().getName() + " volume of one step");
b.setReceiver("app.events.sensors.behavior.request.objects");
b.setProperty("object", getPojo().getName());
b.setProperty("behavior", "volume");
b.setProperty("value", "next");
Command c = new Command();
c.setName(getPojo().getName() + " volume down");
c.setDescription("decreases " + getPojo().getName() + " volume of one step");
c.setReceiver("app.events.sensors.behavior.request.objects");
c.setProperty("object", getPojo().getName());
c.setProperty("behavior", "volume");
c.setProperty("value", "previous");
Command d = new Command();
d.setName("Set its volume to 50%");
d.setDescription("set its volume to 50%");
d.setReceiver("app.events.sensors.behavior.request.objects");
d.setProperty("object", "@event.object.name");
d.setProperty("behavior", "volume");
d.setProperty("value", "50");
Command e = new Command();
e.setName("Increase its volume");
e.setDescription("increases its volume of one step");
e.setReceiver("app.events.sensors.behavior.request.objects");
e.setProperty("object", "@event.object.name");
e.setProperty("behavior", "volume");
e.setProperty("value", "next");
Command f = new Command();
f.setName("Decrease its volume");
f.setDescription("decreases its volume of one step");
f.setReceiver("app.events.sensors.behavior.request.objects");
f.setProperty("object", "@event.object.name");
f.setProperty("behavior", "volume");
f.setProperty("value", "previous");
Command g = new Command();
g.setName("Set its volume to the value in the event");
g.setDescription("set its volume to the value in the event");
g.setReceiver("app.events.sensors.behavior.request.objects");
g.setProperty("object", "@event.object.name");
g.setProperty("behavior", "volume");
g.setProperty("value", "@event.value");
Command h = new Command();
h.setName(getPojo().getName() + " channel down");
h.setDescription("turns " + getPojo().getName() + " to the previous channel in the list");
h.setReceiver("app.events.sensors.behavior.request.objects");
h.setProperty("object", getPojo().getName());
h.setProperty("behavior", "channel");
h.setProperty("value", "previous");
Command i = new Command();
i.setName("Mute " + getPojo().getName());
i.setDescription("mutes the volume of " + getPojo().getName());
i.setReceiver("app.events.sensors.behavior.request.objects");
i.setProperty("object", getPojo().getName());
i.setProperty("behavior", "muted");
i.setProperty("value", "true");
Command l = new Command();
l.setName("Unmute " + getPojo().getName());
l.setDescription("unmutes the volume of " + getPojo().getName());
l.setReceiver("app.events.sensors.behavior.request.objects");
l.setProperty("object", getPojo().getName());
l.setProperty("behavior", "muted");
l.setProperty("value", "false");
Command m = new Command();
m.setName("Switch muted state for " + getPojo().getName());
m.setDescription("switches unmuted state of " + getPojo().getName());
m.setReceiver("app.events.sensors.behavior.request.objects");
m.setProperty("object", getPojo().getName());
m.setProperty("behavior", "muted");
m.setProperty("value", "opposite");
Command n = new Command();
n.setName(getPojo().getName() + " channel up");
n.setDescription("turns " + getPojo().getName() + " to the next channel in the list");
n.setReceiver("app.events.sensors.behavior.request.objects");
n.setProperty("object", getPojo().getName());
n.setProperty("behavior", "channel");
n.setProperty("value", "next");
//avSelection related commands
Command o = new Command();
o.setName(getPojo().getName() + " next AV Selection");
o.setDescription("select the " + getPojo().getName() + " next AV Selection");
o.setReceiver("app.events.sensors.behavior.request.objects");
o.setProperty("object", getPojo().getName());
o.setProperty("behavior", "avSelection");
o.setProperty("value", "next");
Command p = new Command();
p.setName(getPojo().getName() + " previous AV Selection");
p.setDescription("select the " + getPojo().getName() + " previous AV Selection");
p.setReceiver("app.events.sensors.behavior.request.objects");
p.setProperty("object", getPojo().getName());
p.setProperty("behavior", "avSelection");
p.setProperty("value", "previous");
//screenMode related commands
Command q = new Command();
q.setName(getPojo().getName() + " next Screen Mode");
q.setDescription("select the " + getPojo().getName() + " next Screen Mode");
q.setReceiver("app.events.sensors.behavior.request.objects");
q.setProperty("object", getPojo().getName());
q.setProperty("behavior", "screenMode");
q.setProperty("value", "next");
Command r = new Command();
r.setName(getPojo().getName() + " previous Screen Mode");
r.setDescription("select the " + getPojo().getName() + " previous Screen Mode");
r.setReceiver("app.events.sensors.behavior.request.objects");
r.setProperty("object", getPojo().getName());
r.setProperty("behavior", "screenMode");
r.setProperty("value", "previous");
//screenMode related commands
Command s = new Command();
s.setName(getPojo().getName() + " next Input");
s.setDescription("select the " + getPojo().getName() + " next Input");
s.setReceiver("app.events.sensors.behavior.request.objects");
s.setProperty("object", getPojo().getName());
s.setProperty("behavior", "input");
s.setProperty("value", "next");
Command t = new Command();
t.setName(getPojo().getName() + " previous Input");
t.setDescription("select the " + getPojo().getName() + " previous Input");
t.setReceiver("app.events.sensors.behavior.request.objects");
t.setProperty("object", getPojo().getName());
t.setProperty("behavior", "input");
t.setProperty("value", "previous");
CommandPersistence.add(a);
CommandPersistence.add(b);
CommandPersistence.add(c);
CommandPersistence.add(d);