Jump to content
View in the app

A better way to browse. Learn more.

Tinkerunity

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

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
  • Autor

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.

Geschrieben
  • Autor

Danke photron,

 

deine Tipps haben geholfen.

Ich poste das endgültige Script später dann auch noch hier.

 

Grüße

Sebastian

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...

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.