NAME

AnyEvent::XMPP::Ext::Receipts - XEP-0184 message receipts

SYNOPSIS

use AnyEvent::XMPP::Ext::Disco;
use AnyEvent::XMPP::Ext::Receipts;

my $disco = AnyEvent::XMPP::Ext::Disco->new();
$xmpp->add_extension($disco);

my $receipts = AnyEvent::XMPP::Ext::Receipts->new(disco => $disco);
$xmpp->add_extension($receipts);

$disco->enable_feature($receipts->disco_feature);

DESCRIPTION

This module adds support for XEP-0184 message receipts.

Message receipts provide a way to verify that messages were received by the recipient, as long as the recipient's client supports it.

Note that you need to send messages with message receipts to full Jabber IDs (e.g. jabber@example.com/android3948128), not bare Jabber IDs (e.g. jabber@example.com).

METHODS

new (%args)

Creates a new receipts handle.

The following keys can be specified:

disco

An AnyEvent::XMPP::Ext::Disco object so that it can be figured out whether the recipient supports message receipts (via service discovery).

This is required.

debug

If you pass a value that evaluates to true, debug messages will be printed to STDOUT.

auto_resend

Amount of time in seconds after which messages will be re-sent when no receipt was received. Of course messages will only be re-sent if the recipient is known to support message receipts.

Defaults to 30 (seconds).

Set to 0 to disable automatic re-sending.

Here is an example with all keys set:

my $receipts = AnyEvent::XMPP::Ext::Receipts->new(
    disco => $disco,
    auto_resend => 30,
    debug => 1,
);

AUTHOR

Michael Stapelberg, <michael at stapelberg.de>

COPYRIGHT & LICENSE

Copyright 2012 Michael Stapelberg

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.