AnyEvent-XMPP

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

        w.r.t. parameter passing of host and ports.

    *   0.2

        Renamed module from Net::XMPP2 to AnyEvent::XMPP. Net::XMPP2 is
        herby deprecated!

        Rewrote the low-level socket stuff to use AnyEvent::Socket and
        AnyEvent::Handle. Removed blocking write functionality, which can't
        be supported that easily with AnyEvent::Handle (however, if you want
        to wait until the send-buffer is empty you best use the
        "send_buffer_empty" event of AnyEvent::XMPP::Connection).

        For more details consult the Changes file of the AnyEvent::XMPP
        distribution.

    *   older

        For older release notes please have a look at the Changes file or
        CPAN.

README  view on Meta::CPAN

BUGS
    Please note that I'm currently (July 2007) the only developer on this
    project and I'm very busy with my studies in Computer Science. If you
    want to ease my workload or want timely releases, please send me patches
    instead of bug reports or feature requests. I won't forget the reports
    or requests if you can't or didn't send patches, but I can't gurantee
    immediate response. But I will of course try to fix/implement them as
    soon as possible!

    Also try to be as precise as possible with bug reports, if you can't
    send a patch, it would be best if you find out which code doesn't work
    and tell me why.

    Please report any bugs or feature requests to "bug-net-xmpp2 at
    rt.cpan.org", or through the web interface at
    <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=AnyEvent-XMPP>. I will
    be notified and then you'll automatically be notified of progress on
    your bug as I make changes.

SUPPORT
    You can find documentation for this module with the perldoc command.

lib/AnyEvent/XMPP.pm  view on Meta::CPAN

parameter passing of host and ports.

=item * 0.2

Renamed module from L<Net::XMPP2> to L<AnyEvent::XMPP>. L<Net::XMPP2> is herby
deprecated!

Rewrote the low-level socket stuff to use L<AnyEvent::Socket> and L<AnyEvent::Handle>.
Removed blocking write functionality, which can't be supported that
easily with L<AnyEvent::Handle> (however, if you want to wait until the send-buffer
is empty you best use the C<send_buffer_empty> event of L<AnyEvent::XMPP::Connection>).

For more details consult the Changes file of the AnyEvent::XMPP distribution.

=item * older

For older release notes please have a look at the Changes file or CPAN.

=back

=head2 TODO

lib/AnyEvent/XMPP.pm  view on Meta::CPAN

=head1 BUGS

Please note that I'm currently (July 2007) the only developer on this project
and I'm very busy with my studies in Computer Science. If you want to ease my
workload or want timely releases, please send me patches instead of bug reports
or feature requests. I won't forget the reports or requests if you can't or
didn't send patches, but I can't gurantee immediate response. But I will of
course try to fix/implement them as soon as possible!

Also try to be as precise as possible with bug reports, if you can't send a
patch, it would be best if you find out which code doesn't work and tell me
why.

Please report any bugs or feature requests to
C<bug-net-xmpp2 at rt.cpan.org>, or through the web interface at
L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=AnyEvent-XMPP>.
I will be notified and then you'll automatically be notified of progress on
your bug as I make changes.

=head1 SUPPORT

lib/AnyEvent/XMPP/Writer.pm  view on Meta::CPAN

says that each parser has to accept UTF-8 B<and> UTF-16. So, what do you do? Do
you use a XML conformant parser or do you write your own?

I'm using XML::Parser::Expat because expat knows how to parse broken (aka
'partial') "XML" documents, as XMPP requires. Another argument is that if you
capture a XMPP conversation to the end, and even if a '</stream:stream>' tag
was captured, you wont have a valid XML document. The problem is that you have
to resent a <stream> tag after TLS and SASL authentication each! Awww... I'm
repeating myself.

But well... AnyEvent::XMPP does it's best with expat to cope with the
fundamental brokeness of "XML" in XMPP.

Back to the issue with "XML" generation: I've discoverd that many XMPP servers
(eg.  jabberd14 and ejabberd) have problems with XML namespaces. Thats the
reason why I'm assigning the namespace prefixes manually: The servers just
don't accept validly namespaced XML. The draft 3921bis does even state that a
client SHOULD generate a 'stream' prefix for the <stream> tag.

I advice you to explicitly set the namespaces too if you generate "XML" for
XMPP yourself, at least until all or most of the XMPP servers have been fixed.



( run in 0.896 second using v1.01-cache-2.11-cpan-4e96b696675 )