Jump to content

Recommended Posts

Geschrieben

Hallo,

 

ich habe ein kleines C# Programm auf den Redbrick geladen.

Dieses kann ich zwar auch aus dem Brick Viewer ausführen, gibt es auch eine Möglichkeit, das Programm aus der Weboberfläche auszuführen (evtl. per PHP (o.ä.) script?

 

Vielen Dank im Voraus!

Sebastian

Geschrieben

Ja, das geht über die API des RED Bricks:

 

http://www.tinkerforge.com/de/doc/Software/Bricks/RED_Brick_PHP.html

 

Die Dokumentation ist derzeit noch unvollständig. Was du tun muss hier sehr grob skizziert:

 

- mit createSession eine Session erzeugen

- mit getPrograms(session_id) die Liste der Programs erhalten

- aus der Liste der Programs das entsprechende heraussuchen

- startProgram mit der herausgesuchten program_id aufrufen

Geschrieben

Hallo photron,

 

danke für die Hinweise!

Das ist der aktuelle Stand:

 

require_once('Tinkerforge/IPConnection.php');
require_once('Tinkerforge/BrickRED.php');

use Tinkerforge\IPConnection;
use Tinkerforge\BrickRED;

const HOST = 'localhost';
const PORT = 4223;
const UID = 'ABCDEF'; // Change to your UID

$ipcon = new IPConnection(); // Create IP connection
$red = new BrickRED(UID, $ipcon); // Create device object

$ipcon->connect(HOST, PORT); // Connect to brickd

const lifetime = 60;
$session = $red->createSession(lifetime);
$progams = $red->getPrograms($session['session_id']); 
// Rückgabe Array ( [error_code] => 0 [programs_list_id] => 682 )

echo $red->startProgram('Box'); // Rückgabe 7

 

Leider funktioniert das startProgram nicht.

Ich kann auch nichts mit der programs_list_id anfangen, bei jedem Aufruf des Scripts wird diese ID hochgezählt.

 

Muss bei startProgram der Wert "Identifier" aus dem brickv verwendet werden?

Geschrieben

Mit getListLength() und getListItem() kannst du die Einträge der Programmliste abfragen, dir durch programs_list_id repräsentiert wird. Mit den program_ids aus der Liste kannst du dann wiederum startProgram() aufrufen.

 

Um in der Programmliste das Programm zu finden, dass du suchst kannst du mit getProgramIdentifier() von einem Program dessen Identifier abfragen. Über getProgramIdentifier() erhälst du die identifier_string_id mit der du dann über getStringLength() und getStringChunk() den Inhalt des Strings abfragen kannst.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...