Bestandsmodus-Konfiguration¶
⚠️ Achtung: Dieses Dokument beschreibt, wie man die API des SDKs zur Bedienung des Scangeräts verwendet und bietet Beispielcode in C. Beachten Sie, dass die API synchron arbeitet und den Hauptthread blockieren kann.
⚠️ Achtung: Vor der Verwendung der API müssen Sie das Gerät selbst verbinden und Nachrichtenbenachrichtigungen registrieren, um Nachrichten vom Gerät zu empfangen. Die genauen Schritte finden Sie unter Nachrichtenbenachrichtigung.
⚠️ Achtung: Vor der Verwendung der API auf dieser Seite müssen Sie das Gerät mit einem USB-Kabel verbinden.
1. Zwischengespeicherte Daten hochladen¶
1.1 Befehl schreiben¶
Um die zwischengespeicherten Daten des Scangeräts hochzuladen, müssen Sie den folgenden Bluetooth-Dienst und die folgende Charakteristik-UUID für die Operation write without response
verwenden:
Bluetooth | UUID |
---|---|
Dienst | 0x0000ff0000001000800000805f9b34fb |
Charakteristik | 0x0000ff0400001000800000805f9b34fb |
Sie müssen das Gerät mit einem USB-Kabel verbinden, um die Daten an das kabelgebundene Terminal hochzuladen. Verwenden Sie den folgenden Befehl, um die Daten der Schreibcharakteristik zu erhalten:
const char* result = inateck_scanner_cmd_get_inventory_upload_cache();
Das Ergebnis wird im JSON
-Format zurückgegeben. Wenn der Aufruf erfolgreich ist, wird result
zurückgegeben:
{
"status": 0,
"data": [0, 1, 2, 3],
}
Wenn der Aufruf fehlschlägt, wird result
zurückgegeben:
{
"status": 1,
"data": [],
}
1.2 Nachrichtenanalyse¶
Nachdem das Gerät geantwortet hat, können Sie die Daten mit der folgenden Methode analysieren:
int result = inateck_scanner_cmd_check_result(data, data_length);
Das Ergebnis wird als int
-Typ zurückgegeben. Wenn der Aufruf erfolgreich ist, wird result
0
zurückgeben. Wenn der Aufruf fehlschlägt, wird result
1
zurückgeben.
1.3 Beispielcode¶
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
#include <unistd.h>
#include "inateck_scanner_ble.h"
int main() {
const char* result = inateck_scanner_cmd_get_inventory_upload_cache();
if (result) {
// result ist im JSON-Format, Daten analysieren
const unsigned char* data = (const unsigned char*)result;
int data_length = strlen(result);
// Daten über Bluetooth senden write without response
// Hier wird angenommen, dass es eine Funktion send_data_via_bluetooth gibt, die Daten sendet
send_data_via_bluetooth(data, data_length);
// Auf die Antwort des Geräts warten, Daten empfangen
// Hier wird angenommen, dass es eine Funktion receive_data_via_bluetooth gibt, die Daten empfängt
receive_data_via_bluetooth();
const unsigned char* data = get_received_data();
int data_length = get_received_data_length();
// Daten analysieren
int result = inateck_scanner_cmd_check_result(data, data_length);
if (result == 0) {
printf("Upload cache success\n");
} else {
printf("Upload cache failed\n");
}
}
return 0;
}
2. Zwischengespeicherte Anzahl hochladen¶
2.1 Befehl schreiben¶
Um die zwischengespeicherte Anzahl des Scangeräts hochzuladen, müssen Sie den folgenden Bluetooth-Dienst und die folgende Charakteristik-UUID für die Operation write without response
verwenden:
Bluetooth | UUID |
---|---|
Dienst | 0x0000ff0000001000800000805f9b34fb |
Charakteristik | 0x0000ff0400001000800000805f9b34fb |
Sie müssen das Gerät mit einem USB-Kabel verbinden, um die Daten an das kabelgebundene Terminal hochzuladen. Verwenden Sie den folgenden Befehl, um die Daten der Schreibcharakteristik zu erhalten:
const char* result = inateck_scanner_cmd_get_inventory_upload_count();
Das Ergebnis wird im JSON
-Format zurückgegeben. Wenn der Aufruf erfolgreich ist, wird result
zurückgegeben:
{
"status": 0,
"data": [0, 1, 2, 3],
}
Wenn der Aufruf fehlschlägt, wird result
zurückgegeben:
{
"status": 1,
"data": [],
}
2.2 Nachrichtenanalyse¶
Nachdem das Gerät geantwortet hat, können Sie die Daten mit der folgenden Methode analysieren:
int result = inateck_scanner_cmd_check_result(data, data_length);
Das Ergebnis wird als int
-Typ zurückgegeben. Wenn der Aufruf erfolgreich ist, wird result
0
zurückgeben. Wenn der Aufruf fehlschlägt, wird result
1
zurückgeben.
2.3 Beispielcode¶
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
#include <unistd.h>
#include "inateck_scanner_ble.h"
int main() {
const char* result = inateck_scanner_cmd_get_inventory_upload_count();
if (result) {
// result ist im JSON-Format, Daten analysieren
const unsigned char* data = (const unsigned char*)result;
int data_length = strlen(result);
// Daten über Bluetooth senden write without response
// Hier wird angenommen, dass es eine Funktion send_data_via_bluetooth gibt, die Daten sendet
send_data_via_bluetooth(data, data_length);
// Auf die Antwort des Geräts warten, Daten empfangen
// Hier wird angenommen, dass es eine Funktion receive_data_via_bluetooth gibt, die Daten empfängt
receive_data_via_bluetooth();
const unsigned char* data = get_received_data();
int data_length = get_received_data_length();
// Daten analysieren
int result = inateck_scanner_cmd_check_result(data, data_length);
if (result == 0) {
printf("Upload count success\n");
} else {
printf("Upload count failed\n");
}
}
return 0;
}
3. Zwischengespeicherte Daten löschen¶
3.1 Befehl schreiben¶
Um die zwischengespeicherten Daten des Scangeräts zu löschen, müssen Sie den folgenden Bluetooth-Dienst und die folgende Charakteristik-UUID für die Operation write without response
verwenden:
Bluetooth | UUID |
---|---|
Dienst | 0x0000ff0000001000800000805f9b34fb |
Charakteristik | 0x0000ff0400001000800000805f9b34fb |
Sie müssen das Gerät mit einem USB-Kabel verbinden, um die Daten an das kabelgebundene Terminal hochzuladen. Verwenden Sie den folgenden Befehl, um die Daten der Schreibcharakteristik zu erhalten:
const char* result = inateck_scanner_cmd_get_inventory_clear_cache();
Das Ergebnis wird im JSON
-Format zurückgegeben. Wenn der Aufruf erfolgreich ist, wird result
zurückgegeben:
{
"status": 0,
"data": [0, 1, 2, 3],
}
Wenn der Aufruf fehlschlägt, wird result
zurückgegeben:
{
"status": 1,
"data": [],
}
3.2 Nachrichtenanalyse¶
Nachdem das Gerät geantwortet hat, können Sie die Daten mit der folgenden Methode analysieren:
int result = inateck_scanner_cmd_check_result(data, data_length);
Das Ergebnis wird als int
-Typ zurückgegeben. Wenn der Aufruf erfolgreich ist, wird result
0
zurückgeben. Wenn der Aufruf fehlschlägt, wird result
1
zurückgeben.
3.3 Beispielcode¶
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
#include <unistd.h>
#include "inateck_scanner_ble.h"
int main() {
const char* result = inateck_scanner_cmd_get_inventory_clear_cache();
if (result) {
// result ist im JSON-Format, Daten analysieren
const unsigned char* data = (const unsigned char*)result;
int data_length = strlen(result);
// Daten über Bluetooth senden write without response
// Hier wird angenommen, dass es eine Funktion send_data_via_bluetooth gibt, die Daten sendet
send_data_via_bluetooth(data, data_length);
// Auf die Antwort des Geräts warten, Daten empfangen
// Hier wird angenommen, dass es eine Funktion receive_data_via_bluetooth gibt, die Daten empfängt
receive_data_via_bluetooth();
const unsigned char* data = get_received_data();
int data_length = get_received_data_length();
// Daten analysieren
int result = inateck_scanner_cmd_check_result(data, data_length);
if (result == 0) {
printf("Clear cache success\n");
} else {
printf("Clear cache failed\n");
}
}
return 0;
}