# IM Gateway Changelog

## Major Known Issues

- SIMPLE support is only tested with OpenSER, may work with others
- No buddy icon support for Yahoo.
- Uploading of AIM/ICQ icons not supported yet.

## 1.2.1 -- December 6, 2007

Bug Fixes

- [GATE-392] - When not-in-your-list contacts IM you, they are no longer added to your list. (AIM/ICQ)
- [GATE-393] - Database conversion errors while storing avatar data with embedded db have been fixed.
- [GATE-396] - Avatars should no longer be triggering duplicate key errors.
- [GATE-397] - The gateway registration information is now transmitted along the nodes in the cluster.

Improvements

- [GATE-361] - Now sharing information about active sessions across cluster nodes.
- [GATE-387] - Now setting upstream buddy icons for MSN and XMPP/GTalk.
- [GATE-388] - Plugin now works properly in a clustered environment.

## 1.2.0 -- October 31, 2007

Improvements

- [GATE-10] - Buddy icons are now retrieved from AIM/ICQ, XMPP/GTalk, and MSN

## 1.1.4 -- October 31, 2007

Bug Fixes

- [GATE-350] - GMail notifications now work if you registered without a full JID
- [GATE-354] - NPE fixed during contact removal for MSN
- [GATE-364] - New contact handling fixed, adds were not working at all
- [GATE-377] - XMPP gateway now performing presence probes upon login, initial states now showing up correctly
- [GATE-383] - NPE fixed during OSCAR buddy removal
- [GATE-384] - NPE fixed during packet interception
- Security issue in XMLRPC functionality fixed

Improvements

- [GATE-381] - XMLRPC function added to request list of transports a user is registered to

## 1.1.3a -- September 17, 2007

Bug Fixes

- [GATE-347] - Registrations interface no longer throwing java error
- [GATE-348] - Problem starting transports fixed
- [GATE-349] - GTalk mail notifications no longer tell you when there are 0 messages.

## 1.1.3 -- September 16, 2007

Bug Fixes

- [GATE-219] - MSN "nicknames" no longer being lost upon group moves
- [GATE-262] - Yahoo is no longer triggering a ridiculous amount of conversation when modding roster
- [GATE-273] - ICQ authorization steps now being handled correctly
- [GATE-321] - MSN personal status messages with ' in them no longer show up as '
- [GATE-333] - Adding contact support improved
- [GATE-336] - No longer unable to edit AIM buddies with spaces in their screen names
- [GATE-337] - ICQ automatic auth reply is now working correctly
- [GATE-338] - Adding contacts no longer leaves them in a pending state
- [GATE-339] - Add and delete should work for Gadu-Gadu
- [GATE-342] - IRC special characters now filtered out
- [GATE-343] - MSN initial personal message is now being set
- [GATE-344] - Silenced Yahoo session reset exception that's not important
- [GATE-346] - OSCAR support is now doing keepalive pings
- [GATE-268] - OSCAR now handling "you are logged in from another location" w/o attempting to reconnect

Improvements

- Promoted ICQ and Gadu-Gadu to stable.
- [GATE-287] - Added "strict" option for permissions (don't let log in)
- [GATE-289] - Made AIM/ICQ cross chat an option
- [GATE-332] - Improved handling of group settings in Yahoo transport
- [GATE-334] - Checking for online users before sending presence probes
- [GATE-340] - Added note in README about not needing to make the DNS names resolve for transports
- [GATE-311] - Handling new mail notifications from services that offer them
- [GATE-229] - JWCHAT (and JWCHAT5 via red5) should no longer screw up rosters
- [GATE-345] - Cleaned up use of error logging

## 1.1.2 -- August 27, 2007

Bug Fixes

- [GATE-195] - Messages from ICQ 2003b (not a) are now coming through
- [GATE-325] - Contact deletions from Yahoo do not appear to be working
- [GATE-328] - Now carrying authorization/etc along with OSCAR group moves
- [GATE-330] - Renaming a group in AIM/ICQ will no longer cause all contacts inside of it to be flat out deleted

Improvements

- [GATE-318] - ICQ offline messages are now really treated like offline messages
- [GATE-326] - Now answering jabber:iq:roster directed to contact as a simple success
- [GATE-320] - Added option to store roster items -for real- in XMPP roster
- [GATE-322] - Added ability to custom name gateway.xmpp.name and gateway.xmpp.service
- [GATE-324] - Added ability to enable or disable mail notifications
- [GATE-331] - Added options to disable auto-probe on startup attempt

## 1.1.1 -- August 19, 2007

Bug Fixes

- [GATE-186] - Offline ICQ messages now abide by encoding
- [GATE-196] - ICQ offline messages now working properly
- [GATE-300] - Group moves now work for XMPP transports
- [GATE-304] - NPE no longer fired on logouts
- [GATE-306] - NPE no longer fired during session removal
- [GATE-310] - MSN no longer crashing on incoming file transfer attempt
- [GATE-313] - IRC has buddy list support once again
- [GATE-314] - Registrations page no longer showing sessions as always online
- [GATE-316] - Now able to send offline mesages to ICQ users
- [GATE-309] - Fixed major issues with group changes coming from openfire

Improvements

- [GATE-265] - List of rooms from IRC are populated into disco
- [GATE-308] - Storing status changes before contact list is filled out
- [GATE-301] - Added XMLRPC command to get list of available transports

## 1.1.0 -- August 6, 2007

Bug Fixes

- [GATE-94] - Incorrect Yahoo Statuses problems fixed
- [GATE-101] - ICQ buddies in 'awaiting authorization' list are now shown as "ask" presence
- [GATE-104] - Yahoo no longer getting 'infinite' InputError's
- [GATE-112] - Bad friend parse in Yahoo transport no longer occurs
- [GATE-123] - Yahoo 'Magic' message no longer shows up in console
- [GATE-124] - Yahoo no longer deletes contact upon group move
- [GATE-127] - ICQ authorization steps are now handled (some issues still exist)
- [GATE-188] - ICQ contact list handling is improved
- [GATE-201] - Switched to using proper roster "directional indicators" in roster items so that "you have been added" type messages get through
- [GATE-214] - Oversized messages shouldn't be lost or truncated anymore
- [GATE-221] - Typo in plugin.xml Registrations description was fixed
- [GATE-224] - Disco items response is now returning query element
- [GATE-226] - MSN listener timer tasks now going away after session logout
- [GATE-227] - Auto-reconnect settings now sticking/saving
- [GATE-228] - AIM empty away messages now functioning
- [GATE-230] - MSN no longer leaves status message around after I log out
- [GATE-234] - ICQ authorization steps were added
- [GATE-235] - Cut down on number of presence notifications from transports
- [GATE-239] - Contact has added me messages no longer popping up for odd contacts in Yahoo
- [GATE-240] - Repaired groups match check in basetransport
- [GATE-241] - Transports no longer generating two roster item pushes for every create
- [GATE-243] - Multiple copies of messages from transports no longer occuring
- [GATE-249] - Pseudo roster implementation is now properly removing contacts after delete
- [GATE-250] - IRC transport roster handling now pulling/populating roster on connect
- [GATE-251] - If IRC connection isn't possible, NPE no longer triggers
- [GATE-253] - Concurrency issue with TransportSessionManager fixed
- [GATE-254] - Major concurrency issue with multiple sessions logging in at same time fixed
- [GATE-255] - Redirected InputError's to debug log in Yahoo transport
- [GATE-256] - When a Yahoo contact comes online while you are logged in, you should probably see it change status
- [GATE-258] - IRC join/part notices now being sent through
- [GATE-261] - MSN is no longer indicating that your account is already logged in when it's not
- [GATE-263] - GTalk/XMPP account no longer stayed online after attached XMPP client logged off
- [GATE-264] - Serious memory leaks fixed
- [GATE-267] - Now returning success after successful registration
- [GATE-271] - Error type presence packets now go to highest priority
- [GATE-282] - MSN may be leaving "hidden" sessions around in the background
- [GATE-283] - Multiple resources are once again working
- [GATE-285] - IRC support appears to now be thread safe
- [GATE-292] - XMPP transport no longer fires password/registration error every time any failure to connect occurs
- [GATE-294] - SIMPLE is now appear to be matching account names properly
- [GATE-297] - Yahoo statuses are now syncing up with roster items properly

Improvements

- [GATE-118] - OSCAR is now reporting "user added me"
- [GATE-199] - Set proper ICQ status (not just away or not away)
- [GATE-212] - Auto-authorize ICQ authorization requests
- [GATE-223] - Add support for MSN statuses (longer form, not simple away)
- [GATE-236] - Worked out centralized mechanism for handling contacts
- [GATE-237] - Redirected all openymsg yammerings to debug log
- [GATE-257] - Added little indicator as to what the jid of each service is
- [GATE-260] - Handling IRC nickserv/etc notices better
- [GATE-275] - Automatically kill s2s connections upon transport startup
- [GATE-290] - Stopped exceptions upon IRC logout
- [GATE-291] - Improved xmpp client side of MUC support for IRC
- [GATE-295] - Switched to log4j for logging
- [GATE-298] - Abstracted contact list handling
- [GATE-299] - Added support for a "warning" for changing particular options
- [GATE-12] - MUC/Groupchat support added (for IRC at least)
- [GATE-39] - SIP/SIMPLE Support added
- [GATE-74] - XMPP/Google Talk Gateway added
- [GATE-102] - XMLRPC interface added for registrations
- [GATE-141] - Added outgoing typing notification support for Yahoo
- [GATE-179] - Filtering transport disco response based on ACLs
- [GATE-207] - Gadu-Gadu Support added
- [GATE-218] - Added search feature to registrations page
- [GATE-222] - Migrated to OpenYMSG
- [GATE-238] - Switched to martyr instead of irclib for IRC support
- [GATE-248] - Implemented actual roster storage (pseudo roster) for SIMPLE transport
- [GATE-277] - Internationalized more strings
- [GATE-281] - Handling XMPP asynchronous mechanisms inside plugin itself and go back to using stock Smack

## 1.0.2 -- May 15, 2007

Bug Fixes

- [GATE-153] - OSCAR now handling forced disconnect from server
- [GATE-198] - MSN "you have been disconnected" now actually causing session close
- [GATE-200] - MSN is now sending offline messages when a forced disconnect occurs
- [GATE-204] - Multiple resource handling is no longer busted
- [GATE-211] - Auto-disconnects and such are now triggering roster cleanup
- [GATE-217] - Multi-line messages now handled properly through MSN transport

Improvements

- [GATE-23] - Auto-reconnection support
- [GATE-203] - We now catch Delete User from Openfire and clean up gateway tables.

## 1.0.1 -- April 12, 2007

Bug Fixes

- [GATE-160] - Now automatically logged out upon unregister

Improvements

- [GATE-202] - Migrated to openfire layout
- Now requires Openfire 3.3.0.

## 1.0 -- March 15, 2007

Bug Fixes

- [GATE-180] - ICQ encoding re-fixed
- [GATE-185] - If MSN client connects with same account, transport now picks up the auto-disconnect
- [GATE-189] - Yahoo accounts of the e-mail address variety can now be registered
- [GATE-190] - MSN Typing notifcation now handled inactive state
- [GATE-191] - Unregistering and Reregistering now triggers a proper legacy service login
- [GATE-192] - Registering with new password now triggers a logout/login
- [GATE-157] - Yahoo usernames now allow a . (period)

Removals

- Required to remove SIP/SIMPLE support due to lack of license agreement. =(

## 1.0 Beta 8 -- February 26, 2007

Bug Fixes

- [GATE-122] - XMPP away/whatever statuses were not being reflected in OSCAR service
- [GATE-142] - MSN did not properly set logged out state when connection closed
- [GATE-166] - ICQ contacts were being auto-removed
- [GATE-175] - MSN was not letting some users log in, I could not reproduce, but a change I made likely fixed
- [GATE-176] - AIM HTML entites were not translated properly
- [GATE-181] - Gateway "list of users or groups" permissions check fixed
- [GATE-182] - Properly handling multiple resources with same priority
- [GATE-183] - MSN version update was causing failed logins

Improvements

- [GATE-135] - Registration failed in web interface now actually indicates -why- it failed
- [GATE-144] - MSN Winks and Nudges are now relayed to XMPP user via headlines
- [GATE-147] - Registrations page ajax-ified
- [GATE-39] - EXPERIMENTAL SIP/SIMPLE Support added
- [GATE-113] - Retrieval of ICQ offline messages now occurs upon login
- [GATE-140] - Typing notification support added for MSN
- Silenced annoying Session X idle messages in debug log.

## 1.0 Beta 7 -- February 6, 2007

Bug Fixes

- [GATE-106] - Messages from ICQ 2003 clients are now handled properly
- [GATE-154] - Chat state notifications are now sent with type "chat"
- [GATE-169] - MsSQL issues with long vs integer resolved (may need to redo/fix your database)
- [GATE-170] - PostgresQL issue with numeric representation of time resolved (may need to redo/fix your database)
- [GATE-171] - Fixed composing bug that upsets ichat
- [GATE-172] - Web interface is no longer showing up blank under 3.2.0
- [GATE-173] - Full JIDs are now acceptabled in gateway permissions

Improvements

- [GATE-148] - If some users/groups are ignored during permissions setting, now reflected after save
- [GATE-156] - Messages sent to remote users trying to register
- [GATE-158] - Killing spaces in AIM screen names automatically
- [GATE-164] - Messages coming in from ICQ through gateway to XMPP user are now logged (via fix in openfire 3.2.0)
- [GATE-168] - Added ability to turn on 'percent hack' for @ translation in JIDs
- [GATE-174] - Separated stable transports from unstable ones in web interface

## 1.0 Beta 6b -- December 20, 2006

Bug Fixes

- [GATE-152] - Fixed ICQ login issues
- [GATE-151] - Reevaluated database scripts and repaired

## 1.0 Beta 6a -- December 18, 2006

Bug Fixes

- Restored OSCAR work that IntelliJ undid for some reason.

## 1.0 Beta 6 -- December 18, 2006

Bug Fixes

- [GATE-51] - Groupless contacts are respected as best I can
- [GATE-125] - AIM/ICQ group moves now work
- [GATE-128] - Upon unregistering from transport, roster items are now removed from roster
- [GATE-129] - Yahoo is now reporting bad username/password attempts
- [GATE-136] - MSN user add responds with subscribed message to xmpp client

Improvements

- [GATE-7] - Access restriction support added
- [GATE-8] - Options can now be set from web interface
- [GATE-82] - Can now set default ICQ encoding
- [GATE-92] - Can now set ICQ encoding from admin interface
- [GATE-119] - OSCAR contact deletes now working
- [GATE-126] - Real contact list support added for IRC
- [GATE-132] - Now using JID escaping instead of @ -> % shrouding
- [GATE-134] - Admin interface now 'pings' regularly to keep session active
- [GATE-145] - Access controls now work from web interface
- [GATE-13] - Partial typing notification support added (full support in aim and icq, partial in yahoo and msn)
- [GATE-86] - Port/hostname check added to admin interface (test connection)
- [GATE-143] - Localization strings added for hard coded english strings

## 1.0 Beta 5a -- November 10, 2006

Bug Fixes

- [GATE-121] - IQ Register no longer causes NPE when registration does not include x namespace uri.

Improvements

- MSN minor protocol errors silenced for now.

## 1.0 Beta 5 -- November 10, 2006

Bug Fixes

- [GATE-47] - Delete functionality fixed for all but OSCAR
- [GATE-71] - NullPointerException during registration fixed
- [GATE-91] - Postgres/Other DBs duplicate key error fixed
- [GATE-96] - Weird entries are no longer showing up in actual real roster in openfire
- [GATE-98] - MSN errors off and on while connecting fixed
- [GATE-99] - AIM/ICQ was not reflecting offline status when logged off
- [GATE-105] - Registration was not causing automatic login
- [GATE-109] - Could not change nicknames of MSN contacts
- [GATE-110] - Could not change group that MSN contacts are in
- [GATE-111] - CPU usage no longer hitting 100% on some systems

Improvements

- [GATE-37] - Add/remove support fixed for MSN.
- [GATE-64] - IRC server and port now adjustable (via server properties)
- [GATE-75] - Legacy service contacts adding user not detected and passed on

## 1.0 Beta 4 -- October 20, 2006

Bug Fixes

- [GATE-54] - Buddies that are in "main"/default groups were possibly being deleted
- [GATE-59] - Yahoo transport no longer throws error when not available/invisible as initial state
- [GATE-62] - Fixed joscar library conflict
- [GATE-67] - Now catching a forced AIM/ICQ signoff/disconnect
- [GATE-79] - Status icon is now changing for icq/aim transport
- [GATE-81] - AIM/ICQ network connection sever is detected now
- [GATE-83] - Status change no longer killing gateway sessions
- [GATE-85] - Now send an error presence when probing non-existent user
- [GATE-87] - Multiple resources were not working correctly
- [GATE-95] - Current login status was getting confused
- [GATE-77] - Fixed misc bugs with MSN

Improvements

- [GATE-58] - Messages sent when not logged in now say "you aren't logged in"
- [GATE-84] - Added list of ports you need to have open
- Enabled "not functional" web interface so folk can ooh and aah over Ryan's work. =)
- Upgraded joscar libraries.
- Lots more debug logging.
- Upgraded to latest JML libraries.
- Small web interface improvements.

## 1.0 Beta 3a -- October 2, 2006

Bug Fixes

- [GATE-76] - AIM appears to be leaving sessions logged in sometimes
- [GATE-78] - Valid username check is calling valid usernames invalid
- [GATE-80] - Oracle db schema is not working.

## 1.0 Beta 3 -- September 28, 2006

Bug Fixes

- [GATE-48] - Password defaults to "something else" in edit dialogs (******)
- [GATE-50] - MSN contacts being lumped together into one group (MSN Contacts)
- [GATE-57] - Blank message content causes crashes
- [GATE-61] - Null email address in MSN contact list causes null pointer exception.
- [GATE-63] - MSN contacts should only be pulled from forward list (or treat others different)
- [GATE-65] - Yahoo statuses are not placed with the correct contact
- [GATE-66] - Should actually check for valid username entered before accepting it.
- [GATE-68] - Not rejecting registrations from external XMPP users
- [GATE-69] - Yahoo is not reporting failed logins

Improvements

- [GATE-60] - Upgraded JML to latest version
- [GATE-70] - Update all Log exception calls to actually pass the exception for printing

## 1.0 Beta 2 -- September 19, 2006

Bug Fixes

- [GATE-36] - Locale pieces from openfire don't carry into plugin admin interface
- [GATE-40] - Pseudo roster not updating properly
- [GATE-41] - SQLServer script should use BIGINT
- [GATE-43] - IRC filter button does not stay checked
- [GATE-45] - Removed registration does not clean up pseudo roster
- [GATE-46] - Migrating from other transport to gateway plugin can wipe buddy list

## 1.0 Beta 1a -- September 18, 2006

- Emergency bugfix for beta 1 to fix partial wipe of AIM/ICQ contact list.

## 1.0 Beta 1 -- September 18, 2006

- Initial beta release.