NAME
WebService::Mattermost::V4::Client - Perl websocket client for Mattermost.
VERSION
version 0.30
DESCRIPTION
This class connects to Mattermost via the WebSocket gateway and can either be extended in a child class, or used in a script.
USAGE
FROM A SCRIPT
use WebService::Mattermost::V4::Client;
my $bot = WebService::Mattermost::V4::Client->new({
username => 'usernamehere',
password => 'password',
base_url => 'https://mattermost.server.com/api/v4/',
# Optional arguments
debug => 1, # Show extra connection information
ignore_self => 0, # May cause recursion!
});
$bot->on(message => sub {
my ($bot, $args) = @_;
# $args contains the decoded message content
});
$bot->start(); # Add me last
EXTENSION
See WebService::Mattermost::V4::Example::Bot.
EVENTS
Events are either available to be caught with on
in scripts, or have methods which can be overridden in child classes.
gw_ws_started
-
The bot connected to the Mattermost gateway. Can be overridden as
gw_ws_started()
. gw_ws_finished
-
The bot disconnected from the Mattermost gateway. Can be overridden as
gw_ws_finished()
. gw_message
-
The bot received a message. Can be overridden as
gw_message()
. gw_ws_error
-
The bot received an error. Can be overridden as
gw_error()
. gw_message_no_event
-
The bot received a message without an event (which is usually a "ping" item). Can be overridden as
gw_message_no_event()
.
AUTHOR
Mike Jones <mike@netsplit.org.uk>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2023 by Mike Jones.
This is free software, licensed under:
The MIT (X11) License