#!/usr/bin/env perl use v5.30.0; use strict; use warnings; use Data::Dumper; use IO::Socket::UNIX; use Cualsea::FileSocket; use Cualsea::MessageManager; my $command = shift @ARGV or die 'No command passed'; my @arguments = @ARGV; my $socket = IO::Socket::UNIX->new( Type => SOCK_STREAM(), Peer => $Cualsea::FileSocket::SOCKET_PATH, ) or die "Daemon not started"; my $message_manager = Cualsea::MessageManager->new(socket => $socket); $message_manager->write_message( message => {command => $command, arguments => \@arguments} ); my $message = $message_manager->read_message; if ($message->{is_error}) { for ($message->{status}) { if (/^400$/) { say STDERR 'The request was malformed.'; exit; } if (/^403$/) { say STDERR 'You are not in the cualsea group.'; exit; } say 'Unknown Error'; exit; } } print Data::Dumper::Dumper $message;