98 lines
No EOL
2.5 KiB
Java
98 lines
No EOL
2.5 KiB
Java
import java.io.*;
|
|
|
|
class test
|
|
{
|
|
tellstick TS = new tellstick();
|
|
|
|
public void run() {
|
|
try {
|
|
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
|
|
|
|
int nbrDevices = TS.devGetNumberOfDevices();
|
|
for (int i = 0; i < nbrDevices; i++) {
|
|
int id = TS.devGetDeviceId(i);
|
|
String deviceName = TS.devGetName(id);
|
|
System.out.println(id + "\t" + deviceName);
|
|
}
|
|
|
|
System.out.print("Enter a device: ");
|
|
int device = Integer.parseInt(in.readLine());
|
|
process(device);
|
|
|
|
} catch (IOException e) {
|
|
}
|
|
}
|
|
|
|
private void process(int device) {
|
|
try {
|
|
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
|
|
int methods = TS.devMethods(device);
|
|
if ((methods & TS.TELLSTICK_TURNON) > 0) {
|
|
System.out.println(TS.TELLSTICK_TURNON + "\tTurn on");
|
|
}
|
|
if ((methods & TS.TELLSTICK_TURNOFF) > 0) {
|
|
System.out.println(TS.TELLSTICK_TURNOFF + "\tTurn off");
|
|
}
|
|
if ((methods & TS.TELLSTICK_BELL) > 0) {
|
|
System.out.println(TS.TELLSTICK_BELL + "\tBell");
|
|
}
|
|
if ((methods & TS.TELLSTICK_DIM) > 0) {
|
|
System.out.println(TS.TELLSTICK_DIM + "\tDim");
|
|
}
|
|
System.out.println("What do you want to do?");
|
|
int action = Integer.parseInt(in.readLine());
|
|
if ( (action & methods) == 0 ) {
|
|
System.out.println("The device doesn't support this method");
|
|
return;
|
|
}
|
|
|
|
if ((action & TS.TELLSTICK_TURNON) > 0) {
|
|
turnOn(device);
|
|
} else if ((action & TS.TELLSTICK_TURNOFF) > 0) {
|
|
turnOff(device);
|
|
} else if ((action & TS.TELLSTICK_BELL) > 0) {
|
|
bell(device);
|
|
} else if ((action & TS.TELLSTICK_DIM) > 0) {
|
|
dim(device);
|
|
}
|
|
|
|
} catch (IOException e) {
|
|
}
|
|
}
|
|
|
|
private void turnOn(int device) {
|
|
System.out.println("Turning on " + TS.devGetName(device));
|
|
TS.devTurnOn(device);
|
|
}
|
|
|
|
private void turnOff(int device) {
|
|
System.out.println("Turning off " + TS.devGetName(device));
|
|
TS.devTurnOff(device);
|
|
}
|
|
|
|
private void bell(int device) {
|
|
System.out.println("Sending bell to " + TS.devGetName(device));
|
|
TS.devBell(device);
|
|
}
|
|
|
|
private void dim(int device) {
|
|
try {
|
|
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
|
|
System.out.print("Select level (0-255): ");
|
|
int level = Integer.parseInt(in.readLine());
|
|
if (level >= 256 || level < 0) {
|
|
System.out.println("Out of range");
|
|
}
|
|
System.out.println("Dim " + TS.devGetName(device));
|
|
TS.devDim(device, level);
|
|
} catch (IOException e) {
|
|
}
|
|
}
|
|
|
|
public static void main(String[] args)
|
|
{
|
|
test t = new test();
|
|
t.run();
|
|
}
|
|
|
|
} |