E-m@il: james.carroll.jahc gmail.com, daniel onyxsoft.se FIRST TIME USERS GUIDE ====================== This program needs: MUI, Nlist.mcc, TheBar.mcc, Betterstring.mcc, AmiSSL Turn tabs on with this icon tooltype: TABS=TRUE (or set it to FALSE to have a windowed chat mode) The toolbar can be configured from "MUI Settings" in the pull down menu. OS4 users click on External, then TheBar.. you can choose to have in the toolbar: graphics, graphics+text, or just text. And you can turn the borders off, to make the toolbar nice and compact, and perhaps more visually pleasing. Scaling of the images is also possible if you think they would look better bigger or smaller. All sound alerts and pictures are loaded with datatypes. If you want to use the provided wav samples, you need to install a wav datatype, or alternatively you can use the lower quality IFF ILBM sound samples, which are basically the same, just converted and lower quality. AREXX COMMANDS ============== CONNECT DISCONNECT ASKSTATUS - this will return your current MSN status. It will be in the same 3 letter form that you use with CHANGESTATUS. CHANGESTATUS - For this command you must specify one of these 3 letter codes: NLN - online BSY - Busy BRB - be right back AWY - away PHN - on the phone LUN - out to lunch HDN - hidden IDL - idle e.g. "CHANGESTATUS BRB" PERSONALMESSAGE - specify a string for your new personal message e.g: "PERSONALMESSAGE this is a new personal message" MUSIC - specify current music you're listening to. i.e. MUSIC "Avril Lavigne - Let go.mp3" PREVIOUS VERSION ================ This version tries to introduce an Empathy or Emesene style contact list, with scaled avatars next to peoples names. Also, their personal message or music is now shown underneath the persons name, so those details are visible on skinnier windows. The default "no avatar" image has been replaced with something better. The Settings window has been redone with a tabbed style display. Saves screen space. Especially when you're not running 1920x1080 24" monitors like me. :P The all in one style interface (with the contacts and chat windows combined) has been removed, due to not being able to test all 3 possible settings thoroughly.. and the hassle of maintaining three seperate GUI modes. So now we have a tabbed mode, and a windowed mode. Keeps things simple I think. Theres a few annoyances left in this release. The display pictures in already opened chat windows are not re-scaled when you change the scaling prefs (but they are updated properly when using chat tabs). And also, if you have a line of text, and the cursor is positioned in the middle of your text, when you hit enter, the program doesnt catch the Enter keypress before the message is sent and the message gets a newline inserted there (effectively getting split into two lines). I will correct these hopefully minor issues in the next release.. but this has been getting tweaked for too long, so I wanted to get something new out the door. Thank you to the usual suspects for helping me out again. :) CHANGELOG ========= 2012-04-15: v0.77 - Fixed a number of memory leaks, especially one continuous leak. - Added a status icon for oneself to make it easier to see what status I have. - Made a setting to use or not the status icons for those who think they are ugly. - Improved the auto-Idle timeout such that it only sets you idle if you are truly idle and not using mouse or keyboard for 10 minutes. Also unidle automatically when sending a message. - Made the height of the chat input text box adjustable. - Put the button bar into a virtualgroup to let you scale down the window. - Made the Quit requester look a bit nicer and accept keys. 2011-04-22: v0.76 - Added sanity check to prevent a crash during the automatic downloading of avatars. Thank you for the crashlogs all, and to Damien Stuart in particular with his follow up testing. :) 2010-11-27: v0.75 - When chatting, pressing enter in the middle of a line of text will no longer insert a linebreak before sending the text - A message will be displayed when you are disconnected due to your account being logged into from another computer, and when the server goes down for maintenaince. - Error message is displayed when you attempt to login with an incorrect password - Disconnection times are displayed next to Offline users in the Contacts List - Sabre automatically spends a few minutes trying to grab everybodys avatars in your contacts list once connected if they're not up to date. 2010-08-13: v0.74 - Re-added the status graphics next to peoples nicks. 2010-07-14: v0.73 - Contacts list has been redone, with scaled avatars beside peoples names - Multiline chat field, control + Enter to do a line break without sending the message - Timestamped messages in the chat display telling you when someone has gone offline/online - Tabs open in the background when you already have one open now - Avatars can be scaled now - New Settings window, with tabbed display. Takes up much less screen space 2010-05-20: Alpha 72 - The first message of a new switchboard session was not getting through sometimes.. tinkered with - Personal messages with a percentage sign character in them were cut off - Fixed crash when receiving files from a person when the tab opens because of a file transfer 2010-05-07: Alpha 71 - Problem with sending the CAL command to invite a person into the switchboard wasnt incrementing the message ID and MAY have been causing weird problems. - Problem with acknowledgements being sent to messages when they were 0 bytes big - Login was sending two commands too early, and was causing disconnections when trying to login the first one or two times. - Sabre quits the switchboard when the last person sends a BYE message, instead of sitting there and inviting them back in all the time when you type something new. - Clicking on the display name in the main window will allow you to edit your name without going into the Settings window 2010-04-04: Alpha 70 - Another teething problem has surfaced, because of delaying opening GUI's in a switchboard until people have typed to you. When you insert an emoticon/graphical smiley, Sabre was checking each switchboard in the entire list to see if it was the active tab for inserting the smileys into, without first checking if the tab had actually been opened (the GUI used to be created immediately). I've added the check now. :) 2010-04-01: Alpha 69 - Avatars wont disappear from the display anymore after the tabbed windows are hidden and then shown again. - Added a sanity check for when updating the GUI when removing a file transfer, so that it doesnt try to update parts of the GUI if its not yet created. (which is sometimes the case when receiving/sending avatars). - Undid a change that made the GUI more handsome by default. TheBar.mcc can now be freely configured once again. And look ugly by default again. :) - Played around with the imagery a bit, borrowed some images from AISS 2010-03-28: Alpha 68 - Users can choose their own Avatar now. - Windows/tabs will not open when a switchboard connects. Instead, they will open when someone types to you. This way, the switchboards that are opened to download your avatar will not bother people. - Default graphics is shown when the user has no avatar to download. I dont know how to do graphics. Any volunteers to make me a better one? - The "Close Tab" text button has been replaced with graphics, but it looks very ugly. Any volunteers to make me a better one? - Avatar cache bugfixed a bit. It was downloading a new avatar for each new switchboard session. It didnt use the "downoad/dont download" variable properly. No point in a cache then eh! - "Dont use direct connection" messages were sent over and over before. It's now only sent once. - Temporary/currently downloading avatars are stored in progdir:cache/trash/ and cleaned on startup, and avatars are renamed into the cache/trash/ dir if they cant be deleted, to get around issues of locked files in some circumstances. - The toolbar automatically hides the borders and text, to make it look more handsome. 2010-02-03: Alpha 67 - MUI groupobject for avatars was #ifdef'd out for the OS3 and AROS version. Whoops. They display under OS3 and AROS now. - The layout of the avatars is better centered, but still not quite right - Made a minor comestic improvement to the AROS Contacts List.. - AROS version had the Endian swapping macros removed for file transfer stuff.. but was re-added for the Challenge response, so now the AROS version can stay connected again. - AROS version now specifies the background value for the chat windows so they're not transparent after visiting Zune settings. (??!) - AROS Contacts list doesnt have a weird space to the right of the contacts list anymore. The group was supposed to be hidden, but it wasnt completely hidden under Zune for some reason. - The display popups arexx script were moved to T: but the register popups arexx script was still in RAM: 2010-02-01: Alpha 66 - Added charset to UTF8 conversion for Ringhio popups - Added download path configuration - Moved temporary Ringhio scripts to T: 2010-01-27: Alpha 65 - When MSN clients try to establish a direct connection, Sabre will tell the other end to transfer over the switchboard. Hopefully more avatars will display for people now. It needs more work still though. - Avatars are now downloaded automatically when people change them - Multiline messages that dont end with an \n on each line (i.e. \r on Mac Messenger!) are displayed correctly now - Auto Un-Away is now optional/configurable. - This is not related to SabreMSN, but I made an iPhone game called Yay, BUNNY! It's available for purchase on the Apple App store now through iTunes, etc. Buy it for $0.99 usd and make jahc happy. :) 2010-01-13: Alpha 64 - SabreMSN can now receive avatars from users that have one, and is cached so it doesnt need to redownload each time a tab is opened. - Unblocking has been tinkered with (Fixed?) - Sabre didnt seem to see when contacts added you to their list before. I've tinkered with this code.. It's been like this since the newer protocol was updated to many versions ago. - When your last Online status was "Idle" and you then quit, when you reloaded Sabre would set your status back to Idle again with its Online status remembering. It will now display it as Online again. - Removed console debug output for when double clicking on OS4.1 Update #1 notification popups 2010-01-06: Alpha 63 - Silly error was not letting new chat connections establish when new tabs would open. Quite a bad error for a chat client. This was a side effect of moving variables into the linked list used for file transfers. This teething issue has now been fixed. 2010-01-03: Alpha 62 - Multiple files can be transferred at once now - Sets status to idle if you're away for 10 minutes but ONLY if you're set to Online - MSN changed their servers recently. It's now necessary for 3rd party clients to change the users display name manually once connected, or else the display name equals your email address. This fix is now in place. - Clicking on a contacts name in your list and then waiting for the help bubble to appear will display semi accurate information about whether you're still on the other persons contacts list. MUI 3.x has a bug where you need to move the mouse pointer out of the window, and back into the window for the help bubble to change when you click on a different contact though. Zune doesnt have this issue. 2009-12-13: Alpha 61 - Sets status to Idle if you're away for 10 minutes, except if your status is set to Appear Offline - Auto un-away added for when you send messages while Away (I will make both these options configurable later) - Removed Endian swapping under AROS which is used heavily in MSN p2p file transfers! whoops! it may work now. 2009-12-01: Alpha 60 - File transfers! Pretty alpha. Lots to do. One send and receive at a time until I move everything into linked lists, and process the ID's properly for individual transfers. A few bugs here and there. Doesnt work with aMSN. Very alpha. Had to get something out there though, because it mostly works. For now, everything downloads straight to RAM: - User is typing notifications seemed broken somehow. Needed an extra \r\n at the end of the "typing notification" message. - Usernames are often being displayed wrongly, i.e., the email address instead of the display name. Microsoft were evil and changed bits of MSN again. Investigating.. - Changed the incoming buffer to a ring buffer, which made it easy to process Payload messages no matter the circumstances, so the odd random incoming message shouldnt be missed anymore now.. Yay! - This release is dedicated to Mick from irc.amigaworld.net #amigaworld. He single handedly hammered the correct values into my binary headers and the correct replys and INVITE messages and correct decoding, etc. MSN coding is hard. Try his console based Amiga client, AmiMSN, for a preview of what SabreMSN will support next year :) 2009-09-19: Alpha 59 - UTF8 charsets codesets.library stuff works in AROS now for the first time I think. Thanks Matthias Rustler for the working codesets.h header, as mine was broken in some way! (This is a major update apparently, which is why I've released a new version when the file transfers are nowhere near finished!) - Tabs "blink" when theres unread messages waiting in an inactive tab - When in group chat, the "name says:" info wasnt being displayed in the chat window when a group chatter wasnt in your own contact list. - When someone joins a group chat, the next time someone speaks, the "name says:" info is displayed again to prevent confusion. It used to look like the newly joined person was the one speaking. - When in a group chat, clicking the "Invite" button a second time will close it properly - In tabs mode, when closing a chat tab, it will close the window now if that was the last tab open. Thanks Kicko for that suggestion! - Starting to change memory allocation to allocate memory through exec instead of from the stack - Removed timestamps after the first line in multiline messages. Looks kinda better. If you want to break a message up into multiple lines, press control and Enter, and it will insert a newline into your message. If you're using the right font, it'll appear as a little box.. otherwise the "newline" character will just be invisible. Sorry! - Made incoming multiline messages work better. It's less broken now. Less. - Using new contact list icons from Mason - Tweaked the outgoing messages when a switchboard wasnt fully reconnected yet. Hopefully the first few messages wont be missed anymore when you send while the switchboard is still trying to reconnect. 2009-08-24: Alpha 58 - Added a login window, with support for multiple accounts - Last "online status" is remembered when you disconnect - The "user has been OFFLINE Since" string in tabs was incorrect. It was updating when switching to the active tab. Whoops. I save the "offline since" string when the user is offline now. - Clicking INVITE a second time (for initiating group chats) will close the Invite List - Added an ugly looking Close Tab button to the chat tabs :) I'll replace it with a red X when I have time, and can be bothered. - MSN has these servers called switchboards.. The clients create them, then invite the chatter to them, then chat in it, etc. Sometimes people automatically leave the switchboard after inactivity, and then when you type to them again, it brings them back in, or creates a new switchboard and brings them in there. Well, when some clients would disconnect from the switchboard, Sabre had issues making it work again. You'd have to double click on their name again. This long standing bug appears to have finally been fixed!! I think the "user is typing" notification to the server was mucking up the authentication process when Sabre was trying to make a new switchboard connection. 2009-08-18: Alpha 57 - Fixed "challenge string" calcuation issue with certain sized challenge codes.. no more disconnections after a minute of being online. Thanks to MickJT on amigaworld.net Send him a donation to say thanks! The initial disconnection still happens sometimes, but when it reconnects, it stays connected now. Well, for me at least. :) - Added automatic reconnection when disconnected. Configurable values. - Commented out file transfer stuff, because it was too buggy to use and was causing confusion I think. The GUI looks more handsome now. - Bugfixed Group Chats a little. - Changed the layout of the top of the chat window. Let me know if you guys like it. Text labels at the top showing: display name, email address, and personal messages if one is being displayed. Also, you can copy to the clipboard from it. - Away status is shown next to the display name at the top of the chat window, and it tells you when the person went offline if they go.. - Made the tab buttons so they dont have to occupy as much space as the text inside them i.e. the text can be cut off inside now if the window is too small for the tabs, and it isnt forced to be a large size anymore. (did that make sense?) - Oops, renaming contact button doesnt work anymore.. the setting isnt remembered when you reconnect. I think that particular rename command only works for the current session. I think the MSN client is supposed to keep a local copy on the hard drive, then rename the contact when it connects and retrieves the contacts list. Hmmmmmmm. - Weird error: For some reason I had commented out a Contact List display name copy, and I cant remember why. I've only noticed recently that some names were email addresses or just blank. So I've re-enabled it. - Changed "Add a contact" string gadget to use BetterString.mcc so that OS3 users can paste contact addresses into it 2009-08-05 : Alpha 56 - "contact has added you to his list, add them to your own contacts list?" stuff was broken in last release. Just crashed. - Header messages are ignored now. So irrelvant stuff will be filtered out from the chat. This one goes out to Kicko! hehe. Let me know if it goes okay. 2009-07-30 : Alpha 55 - Blank personal message has been changed to "(click to set message)" so that the user knows to click there to change it, but still trying to keep it small.. - Included a basic Listening To: ARexx script. Configure SimplePlay 3.7 to use it, and then when SabreMSN is running your status will be updated with the music you're currently listening to. - Personal message is automatically changed back 8 minutes after displaying the current media (listening to..) message. This is so that music replayers dont need to send a blank MUSIC "" command to reset the values. - Tweaked setting the "nick - personal message" field, with initial personal messages, and when changing the display name. Might be less buggy now. - Removed some debug output from the ARexx commands 2009-07-27 : Alpha 54 - Fixed a bug in the Challenge response, that caused disconnection within a minute of being connected to the server. Microsoft changed their replys from a set size, to a variable size. My code wasnt equipped! Thank you to Mick on www.amigaworld.net for single handedly figuring out my bug. Please direct any SabreMSN donations to him for this release! - Bugfix: Disconnection would occur when Sabre would connect and then attempt to remove someone from a pending list, and onto other lists so you could communicate. Unfortunately I had specified two different groups in the remove command, which caused immediate disconnection. Thanks to Deniil for reporting the issue, providing raw output, and then testing with me until we fixed it. - Your own Current Media information is now displayed in the personal message space. Otherwise you'd play music and not know that your personal message was currently showing the Current Media. Use the MUSIC ARexx command to tell SabreMSN what music you're currently listening to. Hook this up to your music players if possible. - Option to play new message alerts only when the chat window is inactive 2009-07-19 : Alpha 53 - The feature for only displaying "user says:" information only once, used a global string to store the nick that "last spoke", when I should have used a seperate "last spoke" string for each individual tab. Fixed now! - It appears I put version 51 of Sabre AROS in the last 52 archive!!! 2009-07-18 : Alpha 52 - Can now type messages in the AROS version now without crashing. But Tabs go crazy when they're enabled.. they refresh nonstop. Keep it disabled for now. will work on it. - Multi line messages from Sabre to Sabre work again. - Personal messages in the contacts list arent in italics anymore, I didnt like that anymore. - "Current Music" information is displayed if your PC/Mac friends are listening to music on their machines. It's a little buggy right now though, it displays garbage for some of your online contacts, depending on what platform they're using, etc. - Added a new MUSIC command to set your Current Media personal music. It currently only takes the name of the mp3, and unintelligently assumes that everything after the last "-" character is the name of the song, but I'm going to work on making it accept ARTIST and SONG values, so that proper music programs that use id tags in MP3's can send that information to SabreMSN. - Added seconds to the 24hour timestamps, changed them to square brackets - Changed the way messages are displayed. "jahc says:" is only displayed once, and your messages appear underneath. Doesnt display another "user says:" line until someone else types a message. Saves space! 2009-06-23 : Alpha 51 - Fixed non-english characters throughout the program. (or so I hope!) - The irrelevant field's from incoming message headers aren't displayed in the chat window anymore. It used to display "Client name" fields,etc from some people, etc. - "Chat: Name (email@address.com)" is displayed in Window titlebar now - The text object used to display the Connection status and when a "New personal message" is set, is now clipped when the text is too wide for the window. This will prevent the window from resizing by itself when you set a new long personal message. - Bugfix: When a user would add you, and Sabre would prompt you to ask if you want to "Add them to your own list", the new updated MSNP11 adding command wasnt properly formatted in Sabre 0.50, and it would just disconnect you without adding the person. - Personal messages are remembered when you quit, and set again the next time you connect - New option: Display only online contacts in your Contacts List - New option: "Do not rename contacts locally when they change their names" I added this because users can often rename themselves, and I often have no idea who anyone is! - codesets.library stuff isnt commented out for AROS anymore. And it seems to work! - AROS version is still very unstable. Crashes on exit and chat windows opening sometimes. To be safe, I turned off tabs, and tabswindow, disabled all the smileys, and set the stack value to a good size in the icon. Seems better than before, but still not perfect. Isn't alpha software fun!! Make sure you these icon tooltypes with AROS: TABS=FALSE TABSWINDOW=FALSE stack size = 250,000 2009-06-12 : Alpha 50 - Contacts graphics now have a transparent background. Thanks klesterjr! - All online contacts should show up as online now, thanks to fixing some errors in my string pointers - Protocol updated from MSNP8 to MSNP11 - Personal messages are retrieved and can be set by clicking on your name above the "Status" Cycle gadget - New ARexx command to set a personal message: "PERSONALMESSAGE message" - The renamed contacts file has been retired, as the server seems to now remember the display names properly in MSNP11 (or so it seems..) - Added BetterString.mcc to the "used classes" list, so it can be customised in MUI Settings. - Stability seems slightly better? 2009-05-23: Alpha 49 - LED Graphics added to show whether you are online, attempting to connect, or disconnected. Also, the "connection status" text object is hidden 5 seconds after you've successfully established a connection, for a great looking simple GUI. - "User is away" and "User is busy" text labels appear at the top of the window when the user has set a busy or an away status. - 24 hour timestamps timestamp can be turned on now. Open the settings window. - Unnecessary group frames have been removed from the Contacts List window and looks much better now. - Added AREXX port with 4 commands: CONNECT, DISCONNECT, ASKSTATUS, CHANGESTATUS. - Tried to fix the AROS compile which was quite broken. Does it work for anyone now? 2009-05-15: Alpha 48 - Bugfix: the renamed contacts file was corrupted by null pointers, and gave the illusion of working for some reason. Please delete that file, and redownload this fix. This software is still Alpha. :) 2009-05-15: Alpha 47 - Bugfix: the configured charset is now set correctly - Bugfix: codesets.library charset conversion should now be operating correctly in the contacts list. If its still incorrect, please delete your renamed_contacts file in SabreMSN's dir, and make sure your charset is set correctly in the Settings before connecting. 2009-05-14: Alpha 46 - Added a graphical toolbar. AISS images are used on OS4, or for OS3 users the images are supplied in progdir:toolbar/. Old style text buttons can be enabled by entering these icon tooltypes: DISABLED_TOOLBARS=TRUE - New chat mode. It uses 1 window for your Contacts, and a second window for tabbed chatting. Enter these tooltypes into your icon before you start SabreMSN: TABS=TRUE TABSWINDOW=TRUE To enable the old all-in-one tabbed chatting, enter these tooltypes into your icon before you start SabreMSN: TABS=TRUE TABSWINDOW=FALSE 2009-05-06: Alpha 45 - Now uses BetterString.mcc for the chat input string gadget, to give OS3 users text selecting, copy/paste, etc. - E-mail addresses can optionally be displayed beside users display names - Added a new compact messages mode, and removed the blank lines from the existing format. Enable this by going into the Settings window. 2009-03-30: Alpha 44 - Sometimes opening a chat tab caused a console window to open and be filled with junk. I had forgotten to remove some debug output for when a buffer copy was too big. 2009-03-29: Alpha 43 - Bugfix: When using non-tabbed mode, you could only insert smileys into the first window. 2009-02-19: Alpha 42 - Changed many default backgrounds in AROS to white - Custom emoticon MSN tags are now supressed 2009-01-16 : Alpha 41 - Fixed a crash when opening tabs. Sometimes when doing nick name string copy, the destination buffer wasnt large enough, and the source buffer was filled with junk. I havent yet determined why it was full of junk, but when it happens it will no longer crash. Thanks to Cammy, Rebel and Mrodfr for helping me find that crash bug! 2008-12-31 : Alpha 40 - You cannot send blank messages by pressing enter anymore - After the contacts list is retrieved, SabreMSN will set a timer for 5 seconds before sending the initial presence, and this seems to make ALL the online contacts show up as online now. Let me know if this fixes the problem for you guys. - Added a tooltype LOGO=TRUE to enable the logo graphics in the empty space when no tabs are open (for OS3 users). - Rejiggered the rename code. When a rename message is received, it will update the internal contacts list, and rename the tab if its open - Tabs are activated properly when clicked on now - When you switch to a different tab, the first tab looked raised and weird. I've managed to semi-fix it. - The chat string gadget is now activated after selecting an emoticon from the popup chooser - Uniconifying will jump to the bottom of the chat display now 2008-12-25: Alpha 39 - I broke the loading of the charsets setting 2008-12-24: Alpha 38 - Added chat tabs, with the ability to close them from the pulldown menu Edit your icon tooltypes. TABS=TRUE, or TABS=FALSE - A "disconnected" window appears when you're disconnected now - Added a quit requester - Unread messages counter is shown in brackets in the tabs beside the persons name 2008-12-13: Alpha 37 - Added more sanity checks to prevent crashing, in the renamed contacts sections. I dont know if this makes a difference for anyone yet. 2008-11-15: Alpha 36 - Only users in your forward list is displayed in the contacts list now - When adding users to your forward list, it will create a new entry in the contacts list if one doesnt already exist. So you dont need to reconnect to see newly added contacts. - Added options to the pull down menu for blocking and unblocking contacts - Experimenting with a 3 second delay to see if that will make all the contacts show up on startup 2008-11-14: Alpha 35 - Bugfix: blocked users were being unblocked on startup. If the user was in your Forward List but not your Allow List, it was allowing/unblocking them, but I've now added a check to see if they're in the Block List before doing this. - Each chat window has a unique MUI id, so when you uniconify the app the chat windows retain their individual size and positions. Previously all the chat windows would open up in the same size and position after uniconifying. - Tinkered with code: sends online presence message a little later than before. Let me know if you're not seeing any of your online contacts. If this happens, try changing your status to Busy then back to Online 2008-11-02: Alpha 34 - The "cancel" buttons for file transfers work now. Also, Sabre now gives more detailed reasons when transfers fail. - Increased the packet size back up to 2045 bytes. - Tinkered with typecasts for the headers for file transfer packets and it seems to give correct values now. Hopefully transfers wont abort midway through now. 2008-10-31: Alpha 33 - I didnt align my file info block structure properly, and it was reporting an incorrect filesize value for file transfers under OS3. - "Error: Incorrect Login or Password" is reported now for incorrect login details - Groupchats seemed broken. I attempted to fix it again. - I've tinkered with the code for adding contacts - Every MSN account you use with Sabre will now store an individual "renamed contacts" file (locally). - "user says:" and "user is typing.." messages now use the local "renamed contacts" names, so they match the name in the contacts list. - Tinkered with file sending code slightly. It uses 127 byte packets now to avoid problems with Sabre to Sabre file transfers. But sometimes sending to Windows clients fails, reporting: "The file transfer was unsuccessful because your computer is out of disk space. Try deleting some files, and then ask the sender to try the transfer again." 2008-10-18: Alpha 32 - I've tried to make user@msn.com email addresses work now - I've tinkered with the file sending code to make it work better. PLEASE TEST! 2008-09-21: Alpha 31 - Sabre now uses SabreMSN.info or SabreOS3.info for its iconified state - The iconified text changes to "New Messages Waiting" when new messages arrive while iconified - Reverted the 2nd change from the last update as it seemed to have problems. - Tinkered with the file sending code. Added a delay of 1 tick after each packet is sent to avoid a broken pipe. I think it was reporting at the users end that they had run out of disk space (??). For some reason this delay has improved things.. I dont know why. - Removed sockets from file descriptor sets when connections fail, to avoid 100% cpu usage. 2008-09-17: Alpha 30 ** Font colours are coming! I just have to get motivated to work on it. This ** is just a minor release for the time being before I do some real work. - The logfile is closed when the chat "switchboard connection" ends. So when new messages appear, the date string appears again. This is useful if you want to know the dates of conversations when sabre has been operating for a few days. - The charsets are converted properly for peoples names in the "user is typing a message.." alert. at least, I hope its fixed now 2008-08-09: Alpha 29 - Messages are handled better. Sometimes when I chat with people, it wouldn't know if there was a command at the end of someones messages. but I've made it handle that stuff better now. it counts the bytes and splits up the message and the command at the end. E.g. Sometimes I might recieve a message from my test account that says "seeya laterBYE james.carroll@hotmail.com". "seeya later" would be the message, and the BYE stuff is a command. - Adding a user twice accidentally was causing a crash, whoops! - " says:" messages are displayed less often and more intelligently. - Todo: I see now why some file transfers dont show up in Sabre, its because I havent implemented the protocol it needs. Avatars also rely on this as well. 2008-07-07: Alpha 28 - SabreMSN doesnt send "user is typing" messages if the message stays the same, i.e: if you leave a stray character in the string gadget by accident. - I've rejiggered the renamed contacts code. The renamed_contacts.txt file wasnt saving the last contact on startup, and I've made it create a new "renamed contact" entry when a new contact is added 2008-07-05: Alpha 27 - Minor tweak with renaming contacts, used a wrong counting variable in one place. If your contacts are screwed up, you can delete the renamed_contacts.txt file to start over. 2008-07-05: Alpha 26 - a renamed contact should stay renamed from now on. I keep a local list now. 2008-06-29: Alpha 25 - Attempted to make the Group Chats less buggy. It was struggling with display names with a space in the middle, reported wrong user names when someone sent a nudge, and wasnt displaying "has joined group chat" messages for the initial user that was in the switchboard, and was sometimes displaying users names multiple times in the Group Chatters listview. I dont know if that last bug is fixed yet though. It's hard when the error cant be reproduced easily. 2008-06-28: Alpha 24 - Added support for group chats, which may be a little buggy still. - Window backgrounds are no longer hard coded to white. Go into "MUI Settings" and configure the background to white manually if you want a white background. (Under the NListview settings) 2008-06-26: Alpha 23 - Commented out an SSL certificate verifying thing, which seems to make the OS3 executable work on MorphOS now. Also, it seems to have less connecting errors now. - Updated the images for the Contacts List - Created a MorphOS archive with the OS3 binary, and OS4 images 2008-06-24: Alpha 22 - SSL context is setup once instead of every time an SSL connection is made (which is usually twice per login attempt) - NList object is set to quiet before reloading chat history 2008-06-20: Alpha 21 - Added a download path setting - I found that some of the Settings string gadgets were "locked" and couldnt accept text input for some reason, so I've reverted a change from awhile ago where only certain characters were accepted Please let me know if this functions better or worse! The connecting was broken for me for the last half an hour, so this really needs a good testing! please email your feedback to me: james.carroll(at)xnet.co.nz 2008-06-17: Alpha 20 - Tried to fix up error detecting on startup, to avoid crashing if files are missing. I've tested it with missing codesets.library, nlist.mcc and libs:amisslmaster.library successfully. Just make sure you've got enough stack before running. Either by using the icon information, or by setting the stack size in shell before running! 2008-06-17: AmigaOS3 2nd release: - Crash on exit bug is gone, I had forgotten to set something to NULL for one of my cleanup sanity checks. - File Sending should work now, I replaced the OS4 GetFileSize() call with a few lines of equivalent code for OS3. ** SabreMSN needs the following packages ** MUI: http://aminet.net/util/libs/mui38usr.lha Nlist.mcc: http://aminet.net/dev/mui/MCC_NList-0.101.lha codesets.library: http://aminet.net/util/libs/codesets-6.5.lha AmiSSL v3: http://www.heightanxiety.com/AmiSSL/AmiSSL-3.6-68k.lha Also, all the graphics relies on datatypes, so ensure you have the gif jpg and png datatypes. If you're unsure whether you have them installed, simply attempt to open one of the graphics in the SabreMSN archive with Multiview. If it fails, then it will fail in Sabre too. Note2: If chat windows and smiley popup choosers are too slow, you should edit smileys/smileys.theme with a text editor and comment out smileys with # at the beginning of the line. Note3: Make sure you have about 100k of stack, just to be safe. Set the stack size in the icon, or type "stack 100000" in shell before running Sabre from shell. 2008-06-15: Alpha 18 - Same day release, I know! I've been up all night coding :) - When pasting email addresses into the "add contacts" window, some programs like WookieChat leave a trailing invisible \n at the end of the string. Sabre now removes that trailing \n, to prevent disconnection from illegal characters in the Add Contact Message. - Previously, Sabre would send the SYN command to retrieve the contacts list, then send a "Set online status" command immediately afterwards. I've delayed that presence command until after the contacts have been downloaded fully now. I'm hoping this change will make all online contacts show up as being online. (some show as offline when they're not offline).. it seems to have helped, but not perfect.. more testing is needed. :) - I've made the SSL random seed actually *random* and I've moved the seeding to the start of the make_ssl_connection function, instead of doing it once on startup. 2008-06-15: Alpha 17 - Cleaned up a bit. Hidden some lines from incoming File Transfer messages that are not required for the user (only used internally), and removed some debug printf()'s from the Accept File Transfer code. - The Nudge "Window shaking" can be turned off now in the Settings menu. - Nudges that are sent before a persons "switchboard session" is connected are now saved and sent when connected, like ordinary messages. - The text "Send Nudge" button is now graphical. - I've now disabled the "switchboard has connected" messages. - Found a slightly better way to send stored messages (when the "JOIN" message is recieved at the switchboard). - Using the MSN9 protocol now, to hopefully add Display Pictures in the next release. - Added a tab cycle chain for the Settings window (requested) 2008-06-11: Alpha 16 Support for Nudges, both incoming and outgoing! 2008-06-09: Alpha 15 Added option for auto-connect on startup I seem to have fixed the random disconnection, by specifying a valid client id number when setting your presence Made sure logfiles and smiley graphics are unlocked after closing Sabre 2008-06-06: Alpha 14 Bugfix: Only the last line of a multi-line message was being displayed. 2008-06-06: Alpha 13 Modified outgoing Send Messages function to display UTF8 characters locally properly. 2008-06-05: Alpha 12 UTF8 character support extended to display names Removing contacts shouldnt disconnect you anymore. It checks if the person is a member of the lists (allow list, or forward list) before removing now. Well, I say it shouldnt, but its still pretty buggy and weird! 2008-06-04: Alpha 11 UTF8 character support (for the charsets that codesets.library supports). make sure you go into the Settings window (accessible from the pull down menus) to configure your local charset. I only speak english, so I need people to test this functionality for me. Let me know if it works! The background of the chat windows is hard coded to white now, to match the emoticons.. Your online presence is set to Idle after 15 minutes of inactivity now.. 2008-05-31: Alpha 10 Removed hard coded value which caused a crash on everyones computer except mine!! the crash occured when opening chat windows 2008-05-31: Alpha 9 Emoticons! No animation unfortunately. I'm relying on the built in functionality of nlist.mcc, and its not animated yet. 2008-05-25: Alpha 8 Tweaked file sending code, and altered the cleanup of the contact list when connecting to the server. Some users were not visible in your list even when they were online after a reconnection sometimes. 2008-05-23: Alpha 7 Files can be sent and received. Local transfers over a LAN wont work for now though. The code is not yet modular, only one file can be sent and recieved at a time from each person. Configure your File Transfer port range in the Settings window, so you can use any ports you've opened up on your firewalls. The "cancel" buttons arent hooked up yet, and the ASL requester for choosing a file to send halts the program (it isnt asynchronus). 2008-04-29: Alpha 6! Made a stack cookie. After bug hunting with a user for about an hour today we discovered he had a stack setting that was too low! This cannot happen now, I've made a generous stack cookie. Added a Rename button to rename contacts in your list. Your own display name is now configurable in the Settings window Also fixed a bug with your account name not being updated when you would change it in the Settings window 2008-04-27: Alpha 5! When someone adds you to their list, the "what do you want to do" window was causing disconnection straight after. I think I've fixed this error, but cant totally be sure! Yes I'm aware some people are reapering on startup still. :( 2008-04-26: "Settings" option in the pull down menu for configuring logging, sounds, and login/password details. New text object to display connections status "User has added you to his/her list" dialog window.. 2008-04-19: When you have unsent text sitting on your input string gadgets, it will send " is currently typing a message.." notifications to the person you're chatting with. URL codes are converted for your own nick name, not just for other users. Notificaton sounds for "User has come online", and "User has typed a message". Logging and automatic log reloading "Add contacts" now adds the contact to your Allow List (so they can see your online state/presence). When you connect to the server and receive your list of contacts, it will automatically add contacts to your Allow List if they are in your Forward List. The Remove Contacts function opens a window asking you to confirm before it does the removal. Most of the shell output is switched off, except for the important connecting info.. 2008-04-18: Started work on Add/Remove contacts functionality, but it may be buggy because I dont think I'm handling groups properly. Online presence can be changed now.. "Away", "Out To Lunch", etc. Graphics objects are cleaned up on exit now, so they should be deletable. Contacts list is sorted alphabetically, and then by whether they're online or not. Switchboard handling has been changed slightly. It's quite weird, because MSN for windows handles this stuff automatically, whereas my client is showing you internal information during chats.. you'll see what I mean after a few minutes of usage anyway. URL codes (like %20 for spaces) are turned into their ASCII equivalents now. 2008-04-17: Introducing... SabreMSN! An alpha-MSN client for OS4! Sometimes the SSL stuff fails the first few times, so just keep clicking Connect after it fails. Theres currently tons of raw output in the shell.. The contacts list isnt sorted yet, or put into their own Groups.. I'm not sure if I will use NListtree for this later. I dont know if I can use graphics there.. Theres currently no way to add/remove contacts. The switchboard code is very..... interesting! The MSN protocol is weird. Emoticons will come, but probably only the standard ones, and they wont be animated, as I'm just going to use the built in NBitmap() function provided by NList.mcc. I may use texteditor.mcc instead of betterstring.mcc for the input later.. Messages that contain an \n in them do not display correctly currently. Codesets.library isnt used yet, but it will be later. MSN is supposed to be UTF8, but so far with my own english tests, plain ASCII is working fine here. Create a settings.txt file and put your sign in name on the first line, and your password in the second line. Make sure theres a blank third line too, just so that the password line ends with a newline. I have no idea if this works with proxys.. Sounds for alerts will come later, and will be configurable. Logging and auto-log reloading will come later too. This is very alpha software. It's only a week old!