User blog:Sevenix/Connecting to the LoL chat using XMPP

Connecting to the LoL chat using XMPP protocol
Any program that can handle the XMPP protocol can most likely connect to the regular chat using the following settings. This guide will focus on setting up the chat for the free messenger Pidgin but the settings should be the same for any XMPP client.
 * Protocol: XMPP
 * Username: 
 * Password: AIR_
 * Domain: pvp.net
 * Connection security: Use old-style SSL
 * Connect port: 5223

Riot Chat Servers
The different servers used for chat. * Unconfirmed, may not work.
 * EU West: chat.euw1.lol.riotgames.com
 * EU Nordic: chat.eun1.riotgames.com
 * US: chat.na1.lol.riotgames.com
 * Public Beta Environment: chat.pbe1.lol.riotgames.com
 * Oceania: chat.oc1.lol.riotgames.com
 * Brazil: chat.br.lol.riotgames.com *
 * Turkey: chat.tr.lol.riotgames.com *
 * Russia: chat.ru.lol.riotgames.com *
 * Latin America North: chat.la1.lol.riotgames.com *
 * Latin America South: chat.la2.lol.riotgames.com *

Garena Chat Servers

 * Taiwan: chattw.lol.garenanow.com
 * Thailand: chatth.lol.garenanow.com
 * Vietnamn: chatvn.lol.garenanow.com
 * Phillipines: chatph.lol.garenanow.com

Connecting to a PvP.net Chatroom.
To connect to a chatroom you need to first be connected via XMPP as per above and then join a chatroom with these settings.
 * Server: lvl.pvp.net
 * Room: pu~

Use a hash generator such as http://www.hashgenerator.de/ to convert channel name to SHA-1

For example

PlaywithRiot ---> playwithriot ---> c1d83f5739e66d847ade80885fb2599e2aff7dab

Example of Hashed chatrooms.
Some common chatrooms hashed in SHA-1.
 * PlaywithRiot: pu~c1d83f5739e66d847ade80885fb2599e2aff7dab
 * Public Chat 1: pu~2d7cb6016aca7d98bebfabe928c7bb3c57152587
 * Strategy: pu~31e10e63573191fea2b232e79184074e9e570fe2
 * Noob: pu~34bcdf98deb05825ee8f40bad4b5912df89b0b95
 * Looking for Group: pu~b94c7549b4c7937bfa22e0578ba95caf3f14b300
 * Riot on PBE: pu~1d5fe6f919345ca50f896ca65cd9c058a53300a8
 * The Gentlemen's Club: pu~e400cbec9d6e7b79a35f967fdf6fa8c4f9cf0247

Status Editing
Using XMPP you are able to modify some of the attributes other people see when hovering their mouse over you in the pvp.net client. Not setting these correctly produces an empty statusfield.

''Notice that customizing your status only works when you arent actually logged in to the game. Being logged in to the PvP.net client will continuously update your status with the "real" data and override your custom "fake" data.''

The status has to start with and end with. Any options are set and closed inside it.

Available Commands

 *  | Integer | Sets your summoner icon, LEGACY.
 *  | String |Your normal status message, can be anything but has an ingame length limit
 * | Integer between -30 to 30 | Your level.
 * | Positive Integer | Your amount of normal wins.
 * | Positive Integer |The amount of leaves will never show. LEGACY.
 *  | RANKED_SOLO_5x5 | NORMAL | NIGHTMARE_BOT
 *  | RANKED_SOLO_5x5 | NORMAL | NIGHTMARE_BOT
 *  | Positive Integer | Your amount of ranked wins,
 *  | Positive Integer | Your amount of ranked losses,
 *  | Positive Integer | Ranked rating, LEGACY.
 *  | Online | Chatty | Away | outOfGame | inGame |
 *  | Name of an EXISTING league |
 *  | String | Can be long but too long (300+ words) will disconnect you.
 *  | CHALLENGER | DIAMOND | PLATINUM | GOLD | SILVER | BRONZE |
 *  | Integer | The time the current game started.
 * | EXISTING Champion Name | The champion you are currently playing.

Example Status
A common status that will set you up to be lv30, out of game and in the league Twitch's Commanders in Diamond DIvision Zero with 1337 ranked wins and the status message "XMPP Client".

1</profileIcon> 30 <statusMsg>XMPP Client</statusMsg><rankedWins>1337</rankedWins><gameStatus>outOfGame</gameStatus><rankedLeagueName>Twitch&apos;s Commanders</rankedLeagueName><rankedLeagueDivision>Zero</rankedLeagueDivision><rankedLeagueTier>DIAMOND</rankedLeagueTier>

Multi-row Status
Using the fact that the <rankedLeagueDivision> have quite a long limit you can setup status messages with quite much information such as your smurf name, your twitch name et.c.

Since Riot disabled the use of HTML code you can no longer use <BR> to switch rows so you have to be a bit tricky and use a correct amount of space to align the rows well.

<profileIcon>1</profileIcon> 30 5237 <statusMsg>XMPP Client</statusMsg><rankedWins>1237</rankedWins><rankedLosses>1</rankedLosses><gameStatus>outOfGame</gameStatus><rankedLeagueDivision>Zero Twitch: /XXXXXXX Skype: XXXXXXXX Smurf: XXXXXXXX</rankedLeagueDivision><rankedLeagueTier>DIAMOND</rankedLeagueTier>

Remember that if you set the <rankedLeagueDivision> more than some 300+ words it may disconnect you from the pvp.net chat.

Special thanks.

 * WhatTh3Fork and Jabe for their previous work on the subject.
 * Demise101 for restoring the original deleted page to me allowing me to recreate it as this blog.