Senden einer einfacher Nachricht auf Linux! (Threema.Work)

Stelle deine Frage öffentlich an die Threema-Forum-Community - über 4.600 Mitglieder helfen dir weiter. > Frage stellen <
  • Hallo Zusammen,

    ich möchte auf einem Linux System, auf dem die Listener Url usw. eingerichtet ist, eine einfache Nachricht (E2E) schicken. Laut der Doku sieht der Befehl dazu so aus:

    Code
    threema-msgapi-tool.php -S <threemaId> <from> <secret> <privateKey>

    Die URL dazu:

    Code
    https://gateway.threema.ch/de/developer/sdk-php

    Doch ich bekomme aber folgenden Fehler:

    -bash: threema-msgapi-tool.php: Kommando nicht gefunden.

    Ich nutze Threema.work!

    Hat Jemand damit Erfahrung und konnte mir helfen? Danke im Voraus

    LG,

    m_10

  • Hi markus147,

    danke für die Antwort. Ja habe ich auch gemacht, aber es passiert irgendwie nichts. Außerdem, wenn du hier guckst, ist es nicht klar, wie man eigentlich seinen Testnachricht eingeben kann!
    php threema-msgapi-tool.php -S <threemaId> <from> <secret> <privateKey>

  • Hallo m_10,

    doch das ist klar. Das Tool bezieht die Nachricht von Std-In. Folglich müsstest du dann sowas wie echo "Hello World" | php ..... machen

    In der Erklärung dazu steht :"

    Send a message from standard input with server-side encryption to the given ID. is the API identity and 'secret' is the API secret. the message ID on success." :)

  • Also ich bekomme jetzt diese Meldung:

    ERROR: invalid data

    Threema\Core\Exception

    habe da bei der Klasse Exception nachgeguckt, ist aber nur eine leere Klasse drin! Vermutlich muss ja da irgendwie data definiert werden, oder?

    LG

  • Also nutze den Befehl von der Doku:

    threema-msgapi-tool.php -S <threemaId von Empfänger> <from threemaId von Sender> <secret> <privateKey>

    Und bekomme diese Meldung:

    ERROR: invalid data

    Threema\Core\Exception

  • Ich kann es zwar Threema-Work-seitig nicht nachstellen (habe kein entsprechendes Abo), aber Linux-seitig sieht das für mich recht logisch aus:

    Mit dem von dir genannten Befehl übergibst du keine Daten (Nachrichteninhalt) und offensichtlich führt das zur Fehlermeldung. Eine leere Nachricht scheint also zurückgewiesen zu werden.

    Der von dir gepostete Befehl zeigt nur beispielhaft die Syntax des Aufrufs (wie in der Doku beschrieben), nicht aber die Übergabe per Stdin die du entsprechend deiner Anforderung / bestehenden Umgebung selbst hinzufügen musst.

    Vermutlich kann dir besser geholfen werden wenn du deinen kompletten Befehl hier postest (ohne IDs, Secrets und Keys), aber inklusive der von dir genutzten Stdin-Übergabe (im einfachsten Fall per vorangestellter Pipe).