printRawBytesWifi static method
Sendet fertige ESC/POS-Bytes direkt an einen WiFi-Drucker — ohne den globalen aktiven Drucker zu verändern. Liefert Erfolg/Fehler zurück.
Stateless: nutzt eine eigene, kurzlebige Socket-Verbindung zu ip:port
und rührt weder ipAddress/port noch den initialisierten Drucker an.
Wirft nicht — das Ergebnis kommt im KeckPrintResult. success heißt
gesendet, nicht garantiert gedruckt (kein TCP-ACK; siehe KeckPrintResult).
Implementation
static Future<KeckPrintResult> printRawBytesWifi(
List<int> bytes, {
required String ip,
int port = 9100,
Duration timeout = const Duration(seconds: 5),
}) async {
if (bytes.isEmpty) return const KeckPrintResult.failure('Keine Bytes zum Drucken.');
if (ip.trim().isEmpty) return const KeckPrintResult.failure('Keine Drucker-IP angegeben.');
try {
await _rawSocketSend(bytes, ip, port, timeout);
return const KeckPrintResult.success();
} catch (e) {
return KeckPrintResult.failure('WiFi-Druck fehlgeschlagen ($ip:$port): $e');
}
}