Raw-Befehl von einer digitalen Zwillingsinstanz senden

Senden Sie einen Befehl auf ein Gerät.

Je nach Datentyp, den Sie senden möchten, verwenden Sie die folgenden CLI-Befehle und den API-Vorgang, um einen Raw-JSON-Befehl, einen Raw-Nur-Textbefehl oder einen Raw-Binärbefehl an ein Gerät zu senden.

Hinweis

Derzeit wird MQTT Secure (MQTTS) nur über Port 8883 unterstützt.

Weitere Informationen finden Sie unter Szenario: Befehle empfangen und Antworten mit MQTTs senden.

    1. Wählen Sie auf der Listenseite Domains die Domain, mit der Sie arbeiten möchten. Wenn Sie Hilfe beim Suchen der Listenseite für IoT-Domains oder einer IoT-Domain benötigen, finden Sie weitere Informationen unter IoT-Domains auflisten.
    2. Wählen Sie die Registerkarte Digital Twin Instances aus.
    3. Wählen Sie den Namen der digitalen Zwillingsinstanz aus, mit dem Sie arbeiten möchten.
    4. Wählen Sie oben auf der Seite im Menü Aktionen die Option Raw-Befehl senden.
    5. Geben Sie den Anforderungsendpunkt ein, das Gerät, an das der Befehl weitergeleitet werden soll.
    6. Geben Sie die Anforderungsdauer ein, und definieren Sie einen Zeitrahmen für das Gerät, um die Befehlsausführung abzuschließen. Verwenden Sie ISO 8601 als Dauerformat. Beispiel: PT3M entspricht 3 Minuten.
    7. Wählen Sie das Befehlsdatenformat aus, und geben Sie die Befehlsdetails ein. Die maximale Größe beträgt 256k:
      • JSON: JSON-Befehlsdaten.
      • Binär: Ziehen Sie eine Datei mit den codierten base64-Befehlsdaten per Drag-and-Drop, oder wählen Sie sie aus. Normalerweise ist der MIME-Inhaltstyp application/octet-stream. Sie können den Inhaltstyp bearbeiten.
      • Nur Text: Geben Sie die Raw-Befehlsdaten im Nur-Text-Format ein.
    8. Optional. Aktivieren Sie die Option Antwortparameter angeben.
      • Antwortdauer: Maximale Zeit, die das System auf eine Antwort wartet. Verwenden Sie ISO 8601 als Dauerformat. Beispiel: PT3M entspricht 3 Minuten.
      • Antwortendpunkt: Geräteendpunkt, an dem die Antwort erwartet wird, z.B. myinstance/response.
    9. Wählen Sie Send raw command (Raw-Befehl senden).
  • Verwenden Sie den Befehl oci iot digital-twin-instance invoke-raw-<data-type>-command und die erforderlichen Parameter, um einen Raw-JSON-, Binär- oder Textbefehl auf einem Gerät aufzurufen. Ersetzen Sie <digital-twin-instance-OCID> durch die OCID der digitalen Zwillingsinstanz für Ihre Umgebung:

    Verwenden Sie den Befehl oci iot digital-twin-instance invoke-raw-json-command, um einen Raw-JSON-Befehl aufzurufen. Ersetzen Sie die Beispielwerte für Ihre Umgebung:

    oci iot digital-twin-instance invoke-raw-json-command \
      --digital-twin-instance-id <digital-twin-instance-OCID> \
      --request-endpoint /endpoints/<device-id> \
      --request-data '{"temp": 34}' \
      --request-data-content-type application/json \
      --request-duration PT10M \
      --response-endpoint /endpoints/<response-device-id>

    Verwenden Sie den Befehl oci iot digital-twin-instance invoke-raw-binary-command, um einen binären Raw-Befehl aufzurufen. Ersetzen Sie die Parameterwerte für Ihre Umgebung:

    oci iot digital-twin-instance invoke-raw-binary-command \
    --digital-twin-instance-id <digital-twin-instance-OCID> \
    --request-endpoint /endpoints/1234 \
    --request-data file:///mnt/data/binary_input.bin \
    --request-data-content-type application/octet-stream \
    --request-duration PT10M 
    --response-endpoint /endpoints/4321

    Verwenden Sie den Befehl oci iot digital-twin-instance invoke-raw-text-command, um einen Raw-Textbefehl aufzurufen. Ersetzen Sie die Parameterwerte für Ihre Umgebung:

    oci iot digital-twin-instance invoke-raw-text-command \
    --digital-twin-instance-id <digital-twin-instance-OCID> \
    --request-endpoint /endpoints/1234 \
    --request-data 'command input as text' \
    --request-data-content-type text/plain \
    --request-duration PT10M \
    --response-endpoint /endpoints/4321

    Eine vollständige Liste der Parameter und Werte für CLI-Befehle finden Sie in CLI-Befehlsreferenz.

  • Führen Sie den Vorgang InvokeRawCommand und den erforderlichen Parameter aus, um einen Raw-Befehl an ein Gerät zu senden. Die folgenden Datentypen werden unterstützt:
    • JSON
    • binär
    • Text

Befehlsantworten

SzenarioGerätestatusErwarteter BefehlsstatusKommentare
Nicht angemeldetNicht verbunden, nicht abonniert ABGELEHNT Befehlszustellung nicht erfolgreich
Verbunden, aber nicht abonniertVerbunden ABGELEHNTGerät ist online, empfängt jedoch keinen Befehl
Abonniert, aber nicht verbunden Nur abonniertAUSSTEHEND → ABGELAUFENBefehl wartet; läuft nach Timeout ab
Ursprünglich abonniert, aber nicht verbunden und wird vor Timeout verbunden Ursprünglich offline AUSSTEHEND → GESENDETBefehl empfangen
Verbunden und abonniertVerbunden und abonniert SENT Befehl empfangen
Einwegbefehl (keine Antwort erwartet)Verbunden und abonniert ABGESCHLOSSEN Antwort wird nicht erwartet und verfolgt
Zwei-Wege-Befehl (keine Antwort empfangen)Verbunden und abonniert NOT_RESPONDEDGerät reagiert nicht innerhalb des Antwortdauer-Timeouts
Zwei-Wege-Befehl (Antwort empfangen) Verbunden und abonniert ABGESCHLOSSENGerät sendet Daten innerhalb der Antwortzeitüberschreitung und schließt den Ablauf ab