我需要一些帮助来设置一个Button
来控制我在一个房间里的照明。我已经在 Android Studio 中实现了 WebSocket 客户端。我有一个Button
我想发送/写入false
此 KNX 组地址“1/0/4”的值。有没有办法做到这一点?
我使用 LogicMachine LogicMachine作为网络服务器,其中内置了 Websockets 库LUA.
public class MainActivity extends AppCompatActivity {
Button btn;
private WebSocketClient webSocketClient;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button)findViewById(R.id.BT);
connectWS();
}
private void connectWS() {
URI uri;
try {
uri = new URI("wss://admin:admin@192.168.10.11/apps/localbus.lp");
} catch (URISyntaxException e) {
e.printStackTrace();
return;
}
webSocketClient = new WebSocketClient(uri) {
@Override
public void onOpen(ServerHandshake handshakedata) {
Log.i("Websocket", "Opened");
webSocketClient.send("Hello from " + Build.MANUFACTURER + " " + Build.MODEL);
}
@Override
public void onMessage(String s) {
final String message = s;
runOnUiThread(new Runnable() {
@Override
public void run() {
TextView textView = (TextView) findViewById(R.id.TW);
textView.setText(textView.getText() + "\n" + message);
}
});
}
@Override
public void onClose(int i, String s, boolean b) {
Log.i("Websocket", "Closed " + s);
}
@Override
public void onError(Exception e) {
Log.i("Websocket", "Error " + e.getMessage());
}
};
webSocketClient.connect();
}
public void sendMessage(View view) {
EditText editText = (EditText) findViewById(R.id.ET);
webSocketClient.send(editText.getText().toString());
editText.setText("");
}