- or download this
<obs>
<ip>10.0.0.17</ip>
<port>4444</port>
<password>secretobspassword</password>
</obs>
- or download this
<dsky>
<clackssocket>/home/monastery/temp/clacksproxy.sock</clackssocket>
<clacksuser>monasterygates</clacksuser>
<clackspassword>opensesame</clackspassword>
...
</dsky>
- or download this
#!/usr/bin/env perl
#---AUTOPRAGMASTART---
use 5.020;
...
use Net::Clacks::Client;
use Crypt::Digest::SHA256 qw[sha256_b64];
use Encode qw[encode_utf8 decode_utf8 is_utf8];
- or download this
my $clacksconfig = XMLin('dskyconfig.xml');
my $obsconfig = XMLin('obsconfig.xml');
...
binmode($sock);
$sock->blocking(0);
- or download this
my $clacks;
if(defined($clacksconfig->{clackssocket}) && $clacksconfig->{clackssoc
+ket} ne '') {
$clacks = Net::Clacks::Client->newSocket($clacksconfig->{clackssoc
+ket}, $clacksconfig->{clacksuser}, $clacksconfig->{clackspassword}, '
+DSKY');
...
5 => '5 ... Technical Difficulties',
6 => '6 ... Camera',
);
- or download this
binmode $sock;
my $header =
"GET / HTTP/1.1\r\n" .
...
}
my $frame = Protocol::WebSocket::Frame->new(max_payload_size => 500 *
+1024 * 1024, masked => 1);
- or download this
# Request authentication
if(1){
my %request = (
...
my $outframe = $frame->new(buffer => encode_json(\%request), type
+=> 'text', masked => 1)->to_bytes;
syswrite($sock, $outframe);
}
- or download this
my $mutemessageid = '';
while(1) {
...
} else {
print "Failed to enable heartbeat!\n";
}
- or download this
} elsif(defined($msg->{'update-type'}) && $msg->{'update-type'
+} eq 'Heartbeat') {
print "OBS Heartbeat\n";
} elsif(defined($msg->{'obs-studio-version'})) {
print "OBS Studio version: ", $msg->{'obs-studio-version'}
+, "\n";
print "OBS Websocket version: ", $msg->{'obs-websocket-ver
+sion'}, "\n";
- or download this
} elsif(defined($msg->{'update-type'}) && $msg->{'update-type'
+} eq 'SwitchScenes') {
my $scene = substr $msg->{'scene-name'}, 0, 1;
print "Selected scene: ", $scene, "\n";
...
print Dumper($msg);
}
}
- or download this
$clacks->doNetwork();
# No data packet for more than 10 seconds, send a "OBS Version" re
+quest *once*
...
$clacks = undef;
exit(0);
}
- or download this
$clacks->doNetwork();
while(my $msg = $clacks->getNext()) {
if($msg->{type} eq 'serverinfo') {
...
}
$clacks->doNetwork();
}
- or download this
#!/usr/bin/env perl
#---AUTOPRAGMASTART---
use 5.020;
...
}
$clacks->doNetwork();
}