#/usr/bin/perl use warnings; use strict; use Net::DBus; use Carp qw(cluck carp confess); #$SIG{__WARN__} = sub { cluck $_[0] }; #$SIG{__DIE__} = sub { confess "[". $_[0] ."]"}; my $bus = Net::DBus->session(); my $service = $bus->get_service("org.designfu.SampleService"); my $object = $service->get_object("/SomeObject"); my $list = $object->HelloWorld("Hello from example-client.pl!"); print "[", join(", ", map { "'$_'" } @{$list}), "]\n"; my $tuple = $object->GetTuple(); print "(", join(", ", map { "'$_'" } @{$tuple}), ")\n"; my $dict = $object->GetDict(); print "{", join(", ", map { "'$_': '" . $dict->{$_} . "'"} keys %{$dict}), "}\n"; if (1) { $object->name("John Doe"); $object->salary(100000); # Email is readonly, so we expect this to fail eval { $object->email('john.doe@example.com'); }; print $object->name, " ", $object->email, "\n"; }