NAME
Net::Async::Slack - support for the
https://slack.com APIs with
IO::Async
SYNOPSIS
use IO::Async::Loop;
use Net::Async::Slack;
my $loop = IO::Async::Loop->new;
$loop->add(
my $gh = Net::Async::Slack->new(
token => '...',
)
);
DESCRIPTION
This is a basic wrapper for Slack's API. It's an early version, the
module API is likely to change somewhat over time.
See the examples/ directory for usage.
METHODS
rtm
Establishes a connection to the Slack RTM websocket API, and resolves
to a Net::Async::Slack::RTM instance.
send_message
Send a message to a user or channel.
Supports the following named parameters:
* channel - who to send the message to, can be a channel ID or
#channel name, or user ID
* text - the message, see
https://api.slack.com/docs/message-formatting for details
* attachments - more advanced messages, see
https://api.slack.com/docs/message-attachments
* parse - whether to parse content and convert things like links
and the following named boolean parameters:
* link_names - convert @user and #channel to links
* unfurl_links - show preview for URLs
* unfurl_media - show preview for things that look like media links
* as_user - send as user
* reply_broadcast - send to all users when replying to a thread
Returns a Future, although the content of the response is subject to
change.
METHODS - Internal
endpoints
Returns the hashref of API endpoints, loading them on first call from
the share/endpoints.json file.
endpoint
Processes the given endpoint as a template, using the named parameters
passed to the method.
oauth_request
token
API token.
http
Returns the HTTP instance used for communicating with the API.
Currently autocreates a Net::Async::HTTP instance.
http_get
Issues an HTTP GET request.
http_post
Issues an HTTP POST request.
SEE ALSO
* AnyEvent::SlackRTM - low-level API wrapper around RTM
* Mojo::SlackRTM - another RTM-specific wrapper, this time based on
Mojolicious
* Slack::RTM::Bot - more RTM support, this time via LWP and a
subprocess/thread for handling the websocket part
* WebService::Slack::WebApi - Furl-based wrapper around the REST API
* AnyEvent::SlackBot - another AnyEvent RTM implementation
AUTHOR
Tom Molesworth <
[email protected]>
LICENSE
Copyright Tom Molesworth 2016-2017. Licensed under the same terms as
Perl itself.