aboutsummaryrefslogtreecommitdiff
path: root/docs/room.pod6
diff options
context:
space:
mode:
authorMatias Linares <matiaslina@gmail.com>2018-10-14 18:29:06 -0300
committerMatias Linares <matiaslina@gmail.com>2018-10-14 18:29:06 -0300
commit3d6d5a4828e602837886358918e324f34e37b962 (patch)
treeadde3b6f88828da5f1ecdb0e98596868a54e4e86 /docs/room.pod6
parent47aaf852798acb30f32f3e3ae7ca0fe28e9ac18e (diff)
parent66c31dda1500b54fd284b82478019e9da6a7e9d1 (diff)
downloadperl6-matrix-client-3d6d5a4828e602837886358918e324f34e37b962.tar.gz
Merge branch 'master' of ssh://deprecated.org:22333/var/www/cgit/perl6-matrix-client
Diffstat (limited to 'docs/room.pod6')
-rw-r--r--docs/room.pod668
1 files changed, 68 insertions, 0 deletions
diff --git a/docs/room.pod6 b/docs/room.pod6
new file mode 100644
index 0000000..1df8c84
--- /dev/null
+++ b/docs/room.pod6
@@ -0,0 +1,68 @@
+=begin pod
+
+=TITLE class Matrix::Client::Room
+
+=SUBTITLE Room requester
+
+ class Matrix::Client::Room does Matrix::Client::Requester {}
+
+The C<Matrix::Client::Room> is a shortcut to all the C</rooms/:id> endpoints. It
+does the role as L<Matrix::Client::Requester> so one can instantiate a Room with
+the one's access token and the room id to make requests directly to this room
+without the need for a L<Matrix::Client>.
+
+=head1 Example
+
+ my $room-id = "!pGOClvZafMH:matrix.server.com";
+ my $home-server = "https://matrix.server.com";
+ my $access-token = "…";
+
+ my Matrix::Client::Room $room .= new(
+ :$access-token,
+ :$home-server,
+ :id($room-id)
+ );
+
+ say $room.name;
+
+=head1 Methods
+
+=head2 name
+
+ method name(--> Str)
+
+Returns the name of the room. If no C<m.room.name> was emmited (i.e.: no name
+was set for this room), then an empty string is returned.
+
+=head2 send
+
+ method send(Str $body!, Str :$type? = "m.text")
+
+Sends a message to the room. It will return the C<event_id> for this message.
+
+=head2 state
+
+ multi method state(--> Seq)
+ multi method state(Str $event-type)
+
+Get the state events for the current state of a room. it will return a C<Seq>
+for every event on that room.
+
+If an C<$event-type> is passed, the return value will be the value of that
+single event.
+
+=head2 send-state
+
+ method send-state(Str:D $event-type, :$state-key = "", *%args --> Str)
+
+Send a state event to the server. The event will be overwritten if the
+C<$event-type>, C<$state-key> and the arguments all match with a state in the
+server.
+
+It will return the C<event_id> for this state change.
+
+=head2 leave
+
+ method leave()
+
+Leaves the room.