public static void main(String[] args) {
    IAutoDiscoveryServer server = new UDPAutoDiscoveryServer();
    server.startServer();

    // ApiClient apiClient = new ApiClient("192.168.55.2", 8080);
    // apiClient.connect();

    IAutoDiscoveryClient autoDiscoveryClient = new UDPAutoDiscoveryClient(0);
    for (ServerInstance serverInstance : autoDiscoveryClient.findServer()) {
      System.out.println(serverInstance);
      ApiClient apiClient = new ApiClient(serverInstance.getIp(), serverInstance.getPort());
      apiClient.connect();

      PingRequest ping = new PingRequest();
      ping.setText("ping");
      Packet pingResponse = apiClient.send(ping);
      System.out.println(pingResponse);

      if (pingResponse != null && ((PingResponse) pingResponse).getStatus().equals(Status.OK)) {
        SMSPacket smsPacket = new SMSPacket();
        smsPacket.setId(10);
        smsPacket.setTimestamp(System.currentTimeMillis());
        smsPacket.setSource("Sms2Clipboard");
        smsPacket.setText("Greetings from sms2clipboard creators! Sample password: 123456");
        Packet smsConfirmation = apiClient.send(smsPacket);
        System.out.println(smsConfirmation);
      }

      apiClient.disconnect();
    }
  }