Personal tools
The Open Lighting Project has moved!

We've launched our new site at www.openlighting.org. This wiki will remain and be updated with more technical information.

OLA JSON API

From wiki.openlighting.org

Revision as of 07:25, 21 April 2018 by Peternewman (talk | contribs) (Examples: Add a Get Perl example)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Browse to /help on your OLA webserver to see the available commands (append ?help=1 to the end of a command for more info in newer versions of OLA)

Examples

Set a universe of DMX

Perl

#!/usr/bin/perl -w

use LWP::UserAgent;

my $ua = LWP::UserAgent->new;
$ua->timeout(5);

my $response = $ua->post('http://127.0.0.1:9090/set_dmx',
  {u => 1, d => join(",",(0,10,20,30,40,50,60,255))}
);

if ($response->is_success) {
  print $response->decoded_content;
} else {
  die $response->status_line;
}

curl

curl -d u=1 -d d=0,10,20,30,40,50,60,255 http://localhost:9090/set_dmx

Get a universe of DMX

Perl

#!/usr/bin/perl -w

use JSON::XS;
use LWP::UserAgent;

my $ua = LWP::UserAgent->new;
$ua->timeout(5);

my $url = "http://localhost:9090/get_dmx?u=1";

my $response = $ua->get($url);

if ($response->is_success) {
  my $data  = decode_json($response->decoded_content);

  print "DMX Data: " . join(", ", @{$data->{dmx}}) . "\n";
} else {
  die $response->status_line;
}