logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

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

Author

       Michael Stapelberg, "<michael at stapelberg.de>"

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,
               );

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);

See Also