Version History
Note: This feature is only available in Ircle 3.1b13 or later. IRC AutoGreet: AutoGreet() failed: The variable sIsNowOff is not defined. Ircle got an error: Can't get every user of channel "#openmac" whose selected of it = true. Invalid index. errAENoSuchObject (-1728) IRC privmsg() failed: The variable goneFlags is not defined. NOTE: A corresponding change has been made to the Plug-in API: the pEventsWhileDisabled property is deprecated, and will no longer function - no plug-ins will receive ircle events while disabled. Some users have reported a problem with the IRCmagic 1.1 installer where installer would not install some files. Users who did not have a previous version of IRCmagic installed did not have these files on their system, and were therefore unable to run IRCmagic sucessfully. One such file was "System Language" - a scripting addition required by IRCmagic 1.1. On 3/12/2001 at 11:30 AM CST, we rebuilt the IRCmagic 1.1 installer and replaced the bad installer online. The new installer installs all necessary files. If you think you are having the problem mentioned above, please download the new installer. IRC AutoSend: ProcessMessage() failed: Can't get lastjoiner of channel "Console". Invalid index. IRC Jukebox: ScanJukeboxFolder() failed: Can't get last character of "". Now, no error is generated, and no sounds are played. The variable oldPlayer is not defined. IRC AutoGone: input() failed: ircle got an error: Can't get windowtype of window "". DCC SEND somefile to TauCeti closed IRC AutoGet: connectionevent() failed: The variable bytesdone is not defined. connectionevent() failed: Can't get soundlist of {usefilter:true, showignored:true, busyoption:1, wantwav:true, wantmid:false, wantmp2:false, wantmp3:false, wantmod:false, wantsnd:false, wantcust:"", singlematch:true}. connectionevent() failed: The variable gAutoSendSettings is not defined. AutoGone: AutoGone() failed: The variable pMyName is not defined. AutoGet: DoCTCP_SOUND() failed: Can't get soundlist of {usefilter:false, showignored:true, busyoption:1, wantwav:true, wantmid:false, wantmp2:false, wantmp3:false, wantmod:false, wantsnd:false, wantcust:"", singlematch:true}. Honk if you think I am an idiot for letting this one get by me! =D errOSAScriptError (-1753) ircle3.0.4 got an error: /notice <username> <ca>PING <string><ca> This is not the standard syntax for a ping reply. Generally the first word following "PING" is the ping time (a number) - not text. MacWaveOut assumed that the first word was numeric. When AppleScript tried to coerce it to a number, an error dialog resulted. MacWaveOut now checks to see if the first word is numeric, and if it is, calculates the ping time accordingly. If it is not numeric, it is ignored.
IRCmagic 1.2.8 - 4/12/2002 - IRCmagic, AutoPlay enhancements
Fixed a bug that would cause an error message to be displayed if you tried to use nickname completion in a DCC Chat or Query window.
Fixed a bug that cause AutoPlay not to find sounds in the Jukebox folder correctly.
Enabled the feature in AutoPlay that allows you to queue incoming CTCP sounds when the media player is busy.
IRCmagic 1.2.7 - 2/19/2002 - IRCmagic, AutoGone enhancements
Added nickname auto-completion. To use it, type the beginning letters of a nickname and press the Tab key on your keyboard. In the case of multiple matches, you can press the tab key repeatedly to scroll through matching nicknames.
Changed the default settings for the AutoGone plug-in to be less intrusive.
IRCmagic 1.2.6 - 2/7/2002 - IRCmagic, AutoGone, AutoGreet bug fixes
Fixed a bug in the AutoGreet plugin that caused an error similar to the following to occur when turning AutoGreet on or off via the /AutoGreet on|off command.
Fixed a bug in the IRCmagic main script that caused the following error dialog to appear any time a plugin requested a custom message resolution (a BuildCustomString() call):
IRCmagic 1.2.5 - 8/19/2001 - IRCmagic bug fixes
Fixed a bug in the AutoGone plugin that caused the gone message to be reset each time the AutoGone plugin was loaded.
Fixed a bug in IRCmagic that caused Ircle to display a dialog error message:
Ircle got an error: Can't get nickname of user 1 of channel "#whatever" whose selected of it = true
IRCmagic's plug-in command processor was failing due to a bug in the URLgrabber plug-in that left AppleScript's text item delimiters unrestored. I've changed IRCmagic's plug-in command processor so that it will not fail in the future if another script leaves AppleScript's text item delimiters unrestored.
IRCmagic 1.2.4 - 7/4/2001 - IRCmagic, AutoGet, AutoSend & JukeBox plug-in enhancements
If the Jukebox plugin cannot locate a sound in the sound list after scanning the Jukebox folder (for example if the user deletes or moves sounds after the scan), the plugin now automatically removes the sound from the list and continues to the next sound rather than generating an error.
If the Jukebox folder cannot be found, the plugin now displays the full path of the folder in the resulting message dialog box.
Fixed a bug in the FServer plug-in that caused a message similar to the following error to occur when you receive public or private messages while the AutoGone plug-in is unloaded.
Fixed a bug in both AutoGet and AutoSend that caused sound lookups to fail when the sound exists in the Jukebox folder.
Fixed a bug in Jukebox that caused the <nick> custom message tag not to be resolved correctly (no text was insserted in place of the tag) in the Broadcast Message field.
Fixed a bug in AutoGone that caused it to ungone if commands (/command) were typed with the "Automatically ungone when I type public input" option enabled.
IRCmagic 1.2.3 - 6/8/2001 - AutoPlay & JukeBox plug-in enhancements
AutoPlay and Jukebox plug-ins now contain built-in support for the Audion 2 MP3 player.
The AutoPlay functionality to locate the media player is now more robust.
IRCmagic 1.2.2 - 6/3/2001 - JukeBox plug-in enhancements
Added the "Broadcast CTCP SOUND Message" checkbox to the Jukebox settings window. When this option is checked, the Jukebox plug-in broadcasts CTCP SOUND messages when playing sounds. When this option is unchecked, the Jukebox plug-in does not broadcast CTCP SOUND messages.
(Finally) Enabled the "alphabetically" checkbox in the Jukebox Plug-in settings window. When the "alphabetical" radio button is enabled, the Jukebox plug-in sorts the sound list when it scans the Jukebox folder. The sort honors folders - sounds within the same folder are kept together in the alphabetical list. When the "randomly" radio buton is enabled, the Jukebox plug-in does not perform a sort when scanning the Jukebox folder, and sounds are played randomly.
IRCmagic 1.2.1 - 6/1/2001 - Enhancements and bug fixes
Fixed a bug that caused IRCmagic not to call newer plugins CustomMessage handler.
Fixed a bug that caused an error to occur when moving a plug-in to the Plugins or Plugins Disabled folder when a plugin of the same name already exists in the destination folder.
IRCmagic should better handle the situation where a plugin settings handler calls the Dialog Director dd uninstall command.
Note: Plugins generally should NOT call dd uninstall, since dd uninstall deletes ALL dialogs known to IRCmagic (not only plugin dialogs, but also the main IRCmagic dialog and any others that IRCmagic may have created). Instead, plugins should use the Dialog Director dd delete <dialogRef> command.
Fixed a bug that prevented the /reload <pluginname> command from working correctly.
Fixed a bug that could cause the following error when disabling a plugin via the IRCmagic main window: DisablePlugin() failed: The variable plugRecord is not defined.
The Custom Install > IRCmagic Plugins option was installing the IRCmagic main script along with the plugin files. This has been fixed.
The documentation for the previous release of IRCmagic contained broken links. These are fixed now.
IRCmagic 1.2 - 5/11/2001 - Enhancements and bug fixes
Changed the encryption algorythm for IRCmagic registrations. IRCmagic 1.2 and later will require new registration codes. The new encryption algorythm requires that the (included) EncScrypt scripting addition be installed. You can get more information on EncScrypt at http://www.highwinds.com/EnScrypt.html, or by viewing the EnScrypt documentation installed in the Other Software folder. To upgrade your existing registration or to obtain a new registration for IRCmagic, please contact us at
.
IRCmagic now verifies during startup that the EncScrypt scripting addition is installed and loaded before IRCmagic loads.
Improved error handling for plug-in event handling mechanism.
Improved command line parsing (/command argument) and fixed a bug that would cause the following error message to be displayed when a single slash character (/) is entered: IRCmagic >> input() failed: Can't get word 1 of "/".
IRCmagic now maintains a Plugins (Disabled) folder, moving plug-in files into the new folder whenever they are disabled by the user, and unloading them. When a plug-in is enabled again, it is loaded and moved back into the Plugins folder.
IRCmagic now reports the current version during startup.
Fixed a bug in AutoGreet that cause it not to store the join message properly in new greets.
Added the /golast command to URLgrabber - opens the last added URL in a web browser. (Tau-Ceti++)
Fixed a bug in URLgrabber that caused an extra blank line to be added to the URL list each time the lsit was read from disk.
Moved the (Plugin) Preferences folder outside of the Plugins folder, and added the property gPrefsFolderPath to the IRCmagic main script - plugins can access this new property like so: pMainScript's gPrefsFolderPath.
The /PluginInfo command has been changed to /PlugInfo.
AutoGreet now supports the word "none" or an empty line in greet files to indicate that there is no join sound or part sound.
The DoCommand() handler has changed to DoCommand(theCommand, con, target, theString).
Fixed a typo in the default Jukebox broadcast message.
Fixed a typo in the AutoGet file request confirmation dialog.
Fixed a bug in Jukebox that caused /jukebox next to malfunction when SoundApp was the selected media player.
You no longer need to /reload autoplay to get a new media player choice to take effect.
Fixed a bug in IRCmagic's date calculation code that caused the incorrect value to be reported in registration reminder messages.
Added the /rescan plugins command. (MacinJosh++)
IRCmagic 1.1 - 3/12/2001 - Installer bug fix
IRCmagic 1.1 - 1/14/2001 - OS 9.1 compatability fix
Changed an internal handler RemoveListItem(x, theList) to make it compatible with OS 9.1 & Applescript version 1.5.5. The following code worked correctly in Applescript versions prior to 1.5.5 (OS 9.1): (items 1 thru 0 of theList). Applescript 1.5.5 generates an error when this code it executed.
IRCmagic 1.0.9 - 1/1/2001 - bug fixes & enhancements
Fixed a bug introduced in version 1.0.8 causing error messages similar to this to be displayed in the Console window: (Geoff Slote++)
IRC AutoSend: ProcessMessage() failed: Invalid key form.
Updated /plugininfo documentation to better explain usage of the /plugininfo commands utility. (Thomas++)
Removed the "set" syntax from the AutoQuery and AutoWhois optional plug-ins until these plug-ins have settings panels. (Thomas++)
Added the ability to configure the message sent to requestors while AutoSend is disabled. (Thomas++)
IRCmagic 1.0.8 - 12/19/2000 - Important installer fix!
If you downloaded IRCmagic 1.0.7 before Tuesday, December 19, 2000 2:15 PM CST, then you probably have a version of the installer that installs an older version of the Akua Sweets scripting addition (1.3.8). This version of IRCmagic requires Akua Sweets version 1.4.1, and will not run correctly if launched with an older version of Akua Sweets. Rather than re-downloading the entire IRCmagic 1.0.7 package, you may want to download Akua Sweets 1.0.7 and drop it into your Scripting Additions folder. After doing so, restart your computer. This should fix problems associated with running the older version.
IRCmagic 1.0.7 - 12/18/2000 - Mac OS 8.6 compatibility release
Fast update release for a work around to a problem caused by compiling IRCmagic on OS 9.04 making it fail to launch on OS 8.6. This release is compiled on OS 8.6, and will run on OS 8.6 and 9.04.
IRCmagic 1.0.6 - 12/13/2000 - bug fixes & enhancements
Relocated various utility handlers into a centralized location (the IRCmagic main script) so that plug-ins can call them easily.
Fixed a bug in AutoSend plug-in where the plug-in would fail to search for requested files in both the AutoGet and JukeBox folders.
Fixed a bug in AutoSend that caused a "mainScriptName is undefined" error.
Fixed some installer problems where the installer would not replace older items with newer items being installed.
Fixed a bug where JukeBox plug-in would generate an error each time it attempted to play the next sound if JukeBox was enabled and there was no JukeBox folder set.
AutoSend now looks for requested files in both the AutoGet folder and the Jukebox folder. If the requested file is found in either folder, it is sent to the person who requested it via DCC.
Fixed a bug in AutoSend that caused the following error to occur when changing the media player:
Changed the /plug-in command to /PluginInfo
Fixed a bug that caused the following error when typing into the Console window and not connected to a server:
Added a /reload pluginname command. This command simply unloads and reloads the specified plugin.
Optimized the way IRCmagic and plugins iterate various lists. Plugins affected are: Aliasing, AutoGet, AutoGreet, AutoPlay, CustomCTCP, Fserver, and Jukebox.
IRCmagic now uses the Ircle "Standard" message color for all IRCmagic-generated messages. This color can be changed in Ircle Color preferences.
Made the following change to the plugin API: The Settings() handler should always return true or false indicating whether or not the plugin handles settings. If false, IRCmagic now automatically displays a dialog stating that the plugin does not have a settings panel. If true, IRCmagic allows the plugin settings panel to be diplayed.
Made the following change to the plugin API: The DoCommand() handler has additional parameters now. The new syntax is: DoCommand(theCommand, con, target, inString). See the plugin template or the IRCmagic documentation for details.
CustomCTCP Plugin now notifies you when a CTCP message is ignored due to an empty custom reply edit field.
Added an option to switch on or off the ability for IRCmagic to scan the plugins folder periodically and automatically load added plugins and unload removed plugins. This option is off by default.
Fixed a bug in the RemovelistItem(idx, theList) handler that woul generate an error if idx was not of class number (for example if a plugin called it like so: RemoveListItem("2", theList). This handler now coerces idx to a number before attempting to use it.
AutoGet now scans the Jukebox folder for incoming CTCP SOUND events so that sounds in the Jukebox folder are not requested.
AutoPlay now scans the Jukebox folder for incoming CTCP SOUND events so that sounds are played if found in the Jukebox folder.
IRCmagic now re-sorts plugins in the plugin list when new plugins are loaded.
Removed "GetLabels" command from IRCmagic OSAX, and created a new scripting addition "Finder Labels" this version of IRCmagic (specifically the AutoGet plugin) now relies on Finder Labels.
Improved FServer reporting for "FServer folder not found" errors.
IRCmagic plug-in engine now reports which plug-in causes an error when an error is not handled directly by the plug-in during an Ircle event.
IRCmagic is now localized (capable of using multiple languages). A new preferences setting allows you to choose which language is used throughout IRCmagic and its plug-ins. Plug-ins can easily take advantage of this feature. See the AutoWhois plug-in for exmaple source code. English and French are supported in this release. More languages will follow in future releases. If you would like to see IRCmagic localized to your native language, email us.
Fixed some filename parsing problems with the new regex code in the AutoGet and AutoSend plugins.
Fixed a bug where "private" messages to a channel would be ignored by the AutoGone plugin, which would result in AutoGone marking you gone. Now, private messages to channels keep you from being gone.
Rewrote the internal MungerString(searchStr, replaceStr, sourceStr) routine making it 25% faster. For example, a search & replace of 3000 iterations that previously took 3.41 seconds now takes under 1 second to complete. Plugins that call this routine will benefit from this change.
Added a "/plugin events" command that lists the Ircle event handlers registered by each loaded plugin.
Fixed a bug causing the following errors if a DCC transfer was cancelled before any data was sent:
IRC AutoSend: FormatNumber() failed: Can't make some data into the expected type.
IRC AutoSend: FormatSize() failed: No result was returned from some part of this expression.
IRC AutoSend: INCOMPLETE --> somefile (0.00/sec) remaining
AutoPlay plugin now looks for outgoing sounds specified by name (/s filename or /sound filename) in the Jukebox folder as well as the AutoGet folder.
AutoGet and AutoSend plugins now use regular expressions (RegEx Commands) to extract filnames from incoming CTCP SOUND events, allowing for more intelligent parsing. This fixes problems caused by trailing text after the filename done by some MIRC scripts.
AutoGet no longer encloses requested filnames in quotes.
Changed BuildCustomString(originalStr, theNick, chanName, theFile) function so that if theNick, chanName, or theFile parameters are "", they are not replaced in originalStr.
Fixed a cosmetic bug in the IRCmagic main dialog.
Fixed a bug in AutoGet plugin that caused the following errors to occur:
IRC AutoGet: Completed transfer of rot13win (1.25 K at 1.25 K/sec)
Fixed a bug that caused the AutoPlay plugin to display the following error when any DCC connection closed (Romain++):
Fixed a bug that caused the AutoPlay plugin to return errors if you cancelled the choose sound file dialog box. (Romain++)
The AutoPlay plugin was failing to obtain the AutoGet file listing from the AutoGet plugin for numerous functions. This caused multiple AutoPlay functions to malfunction or fail, including /search, and some CTCP SOUND processing handlers. This is fixed. (MacinJosh++)
The following plugins are now OFF by default on a new installation of IRCmagic: AutoSend, AutoGet, Fserver, Jukebox. These plugins will also default to OFF when their preferences files are recreated.
Fixed a bug that caused the following error message after a DCC SEND transfer completed:
Moved DCC SEND transfer rate reporting functionality out of the AutoGet plugin and into the AutoSend plugin where it belongs. now if you disable the AutoGet plugin, you will still get DCC SEND transfer rate reports.
Fixed a bug in AutoGone that caused the following error to occur when the /autogone command was issued:
Fixed bugs in AutoGet and AutoSend having to do with DCC transfer statistics reporting.
IRCmagic now uses plugin default data and enabled state if the plugin preferences file does not exist when loading a plugin. In previous versions, the plugEnabled and savedData parameters of the InitPlugin() handler were set to true and {} respectively when the plugin preferences file was missing.
Fserver plugin now obtains the Fserve folder from Ircle prefs the first time it is run if the FServer Preferences file does not exist.
Completed IRCmagic plugin documentation (see Writing Plugins for IRCmagic in the online documentation).
AutoGone now allows you to send /msg messages to channels without effecting the gone state. (Tauceti++)
Added a "Disable Jukebox" button to the dialog that is diplayed when Jukebox cannot locate the Jukebox folder, or no Jukebox folder is set.
Added a setting (accesible via the IRCmagic Preferences dialog box) that allows you to set how often Idle events are sent to plugins. On slower Macintoshes, it may be preferable to set this amount of time larger. The default value is 5 seconds.
Added a /plugin versions command that displays the version of each loaded plugin so you dont have to go get info on each one.
Added an optional AutoQuery plugin that opens a query window whenever a notice or private message is received or sent.
CustomCTCP plugin now reports whether it is replying to a public or private CTCP message.
{0} doesn't match the parameters {bytes,numDigits} for FormatSize.
(where <ca> is the control-a character, and <string> is some text)
<ircv> - ircle version in numeric form (ie. 3.0.3)
<sysv> - system version in numeric form (ie. 8.5.1)
<date> - the current date