Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > by-pkgid > ef3a667404d85e85a9051c0ec28705f3 > files > 4

jabber-yahoo-1.4.2a-6mdk.ppc.rpm

Yahoo-Transport (CVS)
=====================
http://yahoo-transport.jabberstudio.org

Yahoo Transport allows jabber users to log into Yahoo Messenger, and
send/recv messages.


Compiling
---------

cd yahoo-transport
./configure
make


Usage
-----

You may run yahoo-transport in one of two ways.. First, you can link it
directly into your main jabberd by putting an entry into your jabber.xml
(or other) config file like this:

        <service id="yahoo.myserver.com">
            <load><yahoo_transport>/path/to/yahootrans.so</yahoo_transport></load>
            <config xmlns="jabber:config:yahoo">
                <vCard xmlns="vcard-temp" version="3.0" prodid="-//HandGen//NONSGML vGen v1.0//EN">
                    <NAME>Yahoo Transport</NAME>
                    <!-- any other vcard-temp tags can go here.. 
                         they will be passed on to the client
                         that asks for them -->
                </vCard>
                <gateway>
                    <desc>Please enter the Yahoo ID of the person you wish to contact</desc>
                    <prompt>Yahoo! ID:</prompt>
                </gateway>
		<yserver>
		    <pager port="5050">cs.yahoo.com</pager>
		    <pagerhttp port="80">http.pager.yahoo.com</pagerhttp>
		    <auth port="80">msg.edit.yahoo.com</auth>
		    <data port="80">msg.edit.yahoo.com</data>
		    <address port="80">uk.address.yahoo.com</address>
		    <charmap>CP1252</charmap>

		    <!-- CP1252 is the Windows codepage. Non Windows clients
		    do use other charmaps. Therefore you can't send the
		    Euro symbol to a Linux Yahoo! Messenger that uses
		    ISO-8859-1 or ISO-8859-15. This is a bug Yahoo! has to
		    fix. ->

		    <!-- For usage in Japan use the following information
		    <pager port="5050">cs.yahoo.co.jp</pager>
		    <pagerhttp port="80">http.messenger.yahoo.co.jp</pagerhttp>
		    <auth port="80">edit.my.yahoo.co.jp</auth>
		    <data port="80">edit.my.yahoo.co.jp</data>
		    <charmap>SHIFT-JIS</charmap>
		    -->
		</yserver>
            </config>
        </service>

Note that the compiled yahootrans.so will be in the src/ directory under
where you compiled yahoo-transport.

You will also need to have an <xdb/> section in your config file
somewhere:

        <xdb id="xdb">
            <host/>
            <load><xdb_file>./xdb_file/xdb_file.so</xdb_file></load>
            <xdb_file xmlns="jabber:config:xdb_file">
            <spool><jabberd:cmdline flag='s'>./spool</jabberd:cmdline></spool>
            </xdb_file>
        </xdb>

This is because yahoo-transport uses XDB to store it's user specific
data, such as login passwords, or rosters.

You will also need to add to the <browse/> section (listed above) to the
jsm config section, under <browse/>.

      <browse>

        <!-- other services go here -->

        <service type="yahoo" jid="yahoo.myserver.com" name="Yahoo! Transport">
          <ns>jabber:iq:gateway</ns>
          <ns>jabber:iq:register</ns>
        </service>

      </browse>

Another way to run yahoo-transport is from a second jabberd.  This is
favorable when you are using a version that may be prone to crashes...
put in a "linker" section in your main jabberd, such as:

    <service id="jabberd_linker">
        <accept>
            <ip>12.34.56.78</ip>
            <port>9876</port>
            <secret>j4bb3rd_l1nk3r</secret>
        </accept>
        <host>yahoo.myserver.com</host>
    </service>

and then in your yahoo jabberd config, put in a matching linker service:

    <service id="jabberd_linker">
        <connect>
            <ip>12.34.56.78</ip>
            <port>9876</port>
            <secret>j4bb3rd_l1nk3r</secret>
        </connect>
        <uplink/>
    </service>

along with the service tag for yahoo-transport...

few things to note here... the id, ip, port, and secret MUST match
EXACTLY in each linker section...

the <uplink/> flag causes every undeliverable packet to be sent to the
other jabberd (the main jabberd)

so make sure that any <host/> section that you put into the main
jabberd's linker section is defined in the yahoo jabberd config file
(the id attribute IS a defined hostname) if you do not have it defined
in that section, packets to that host will bounce between jabberds
infinitly, and slow down or crash your server.

Good Luck!