Postal
About Postal
Postal offers enhanced mailbox support by providing the following features:
- BlackBook: Adds a contact list next to the To: field.
- Tracks all your characters (as you log each one on) and list them if they are on the same realm/faction on an "Alts" list
- Tracks all your characters (as you log each one on) and list them in the "All Alts" list
- Tracks the last 20 players you mailed on a "Recently Mailed" list.
- Autocomplete names from Alts/Recently Mailed/Contacts/Friends/Guild list. You can choose which of these lists to use.
- Option to autofill in the last person mailed to the To: field.
- Option to disable Blizzard's name auto-completion popup.
- CarbonCopy: Allows you to copy the contents of a mail.
- DoNotWant: Shows a clickable visual icon as to whether a mail will be returned or deleted on expiry.
- Express: Adds shortcuts
- Shift-Click to take item/money from mail
- Ctrl-Click to return mail
- Alt-Click to move an item from your inventory to the current outgoing mail (same as right click in default UI)
- Added option to disable multiple item mail tooltips.
- Forward: Allows you to forward the contents of a mail.
- OpenAll: Allows you to open all mails of selected types at one go in your inbox unattended.
- All AH Cancelled mail
- All AH Expired mail
- All AH Outbidded mail
- All AH Success mail
- All AH Won mail
- Non-AH mail with attachments
- AH settings are divided into neutral and faction-specific settings.
- Shift-Click on the OpenAll button will open all mail and override your filter settings.
- Choose to have a number of bag slots always left free when opening mail.
- QuickAttach: Allows you to quickly attach different trade items types to a mail.
- A default recipient name can be specified by right clicking on a button.
- Which bags are used by this feature can be set in the main menu.
- Rake: Displays summary of money gained from opening mail.
- Select: Adds checkboxes to the inbox with buttons for selective opening/returning
- Added mail indicator numbers above the checkboxes.
- Added help note that you can Shift-Click 2 checkboxes to select everything between them.
- Added help note that you can Ctrl-Click a checkbox to select all mail from that sender.
- Choose to have a number of bag slots always left free when opening mail.
- TradeBlock: Block trades and guild charter signature invites from people while you are at the Inbox.
- Wire: Autoupdate the subject field with money amount if blank.
Postal's menu and settings can be accessed at the upper right corner of your mailbox.
Please post bugs or suggestions at https://www.curseforge.com/wow/addons/postal/issues.
Postal Profiles
While this might not be too intuitive to some users, each character that you log on will have its own initial Postal profile (settings). If you wish that some or all your characters share the same profile (and hence share the same contact list), then you can create a New Profile, call it anything you want such as "Shared by Alts", and have all your other characters change to that profile.
Mass Mailing Abilities
Postal does not come with any abilities to send out mass mails (i.e. messages to more than 1 person at a time). There is no intention to add such functionality to Postal.
Change Logs
Changes from v3.8.0 to v3.9.5
- Merged Postal Classic, BCC, and Retail all into one build.
- Updated some Russian language pack strings (Thanks Hollicsh for the corrections.)
- Added support for WotLK.
- Added support for the new reagent bag for WoW 10.0 release.
- Updated Postal to fully use the new event system for WoW 10.0 release.
- Updated Postal to account for the WotLK classic 3.4.1 changes.
- Code cleanup, and optimization.
Changes from v3.6.9 to v3.7.8
- Added Forward functionality (Issue #94).
- Added QuickAttach functionality
- Allow QuickAttach buttons to autofill in a specific character name automatically (Issue #269).
Changes from v3.5.0 to v3.6.9
- In patch 8.3.0 the mailbox size was increased from 50 to 100. Postal now updated for this change.
- Fixed Express feature ctrl-clicking did not account for soulbound items (Issue #241).
- Alt's list now correctly filters by faction (Issue #238).
- Alt's and All Alt's lists now break into sub lists when they exceed 25 in length, similar to groups and friends list (Issue #116).
- Fixed Lua errors in option to disable Blizzard's name auto-completion popup (Details are in issues #231, #236).
- Added support to disable delay opening of mail (Issue #129).
- Optimized attachment logic for Express sending, by KyrosKrane (Details are in issues #230).
- Updated for 9.1.0
Changes from v3.4.13 to v3.5.0
- Updated for and works with Mists of Pandaria!
- Add Control-Click to attach similar items to Express module, by oscarucb.
- Show buyer/seller name in chat log output when opening AH mails, by jmbarlow.
- Realign buttons properly in MoP.
- Blizzard's guild autocomplete is broken, so we implement our own in the Send name editbox in Blackbook module.
- Fix autocomplete for BattleTag/RealID friends to work.
- Add Italian localization.
Changes from v3.4.12 to v3.4.13
- Add solution (provided by paxi) for mailbox not opening past the first 50 mails for users of other addons that also regularly check the mailbox for changes such as "Tradeskillmaster Mailing".
- Add Brazilian Portugese (ptBR) localization.
Changes from v3.4.10 to v3.4.12
- Updated the TOC number to 40300.
- Apply fix for PTR crash when opening a mail containing more than 2^31 gold, by Cybeloras.
- More accurate timings on when new mail will arrive when someone else is doing CheckInbox() calls, by Mikk.
- Add option to disable having Mr.Plow addon be triggered on opening/returning mails in Select and OpenAll modules. Defaults to On.
Changes from v3.4.9 to v3.4.10
- Updated the TOC number to 40200.
Changes from v3.4.8 to v3.4.9
- Fix "OpenAll.lua:497: 'end' expected (to close 'function' at line 158)" error in v3.4.8.
Changes from v3.4.7 to v3.4.8
- Fix another issue with OpenAll not opening all that resulted from the code simplification.
Changes from v3.4.6 to v3.4.7
- Use a different function to determine if a mail can be returned in the Select module. Should fix return mail issues.
- Simplify OpenAll's mail refreshing code. Fixes the mailbox not auto-refreshing sometimes when you have more mail than 50 to open.
- Add menu option to select which chat window to output Postal's text to. Defaults to ChatFrame1.
- BlackBook will now also record the faction and realm of players you have recently mailed, and only show/use/autocomplete the ones from the same realm/faction as you. This is so that you can use the same profile across multiple servers/factions.
- The recently mailed list is increased in size from 10 to 20 and the list is wiped with this update.
Changes from v3.4.5 to v3.4.6
- If new mails are detected while opening mails, OpenAll will now restart from opening the last mail (in patch 4.0.3, the inbox will now refresh itself on a mailbox change with any new mail if at least 60 seconds has passed).
- Add code to the Select Module to deal with any new mails that might appear at the front of your mailbox at any time, due to flipping inbox pages or a MAIL_INBOX_UPDATE event.
- CheckInbox() behavior changed slightly. It now fires MAIL_INBOX_UPDATE immediately (synchronous) if called within 60 seconds of the last inbox update, but doesn't do it immediately otherwise (asynchronous). Change code in OpenAll module to take this into account to speed up continuing OpenAll by not waiting an extra 10 seconds while doing mailbox refreshes.
Changes from v3.4.4 to v3.4.5
- Fix error that happens when you have no friends on your friends list.
Changes from v3.4.3 to v3.4.4
- Remove RealID friend features from the BlackBook module, along with deleting the realID friend database. Addons are no longer able to obtain real names or any unique realIDs in any manner since patch 4.0.1. Special thanks to Cerala.
Changes from v3.4.2 to v3.4.3
- The Rake module will now properly report the amount of money taken from the mailbox if you right-clicked on the mailbox in the 3D world while it is already open (this bug is new in patch 4.0.1)
- BlackBook module will now add your alt to the alts list on login rather than on visiting the mailbox unless Postal is LoD (due to AddonLoader or otherwise).
- In the OpenAll module, when the mailbox is refreshed during an OpenAll, delay the continuation of OpenAll by 3 seconds to allow for other addons (such as BeanCounter) to do stuff.
Changes from v3.4.0 to v3.4.2
- Fix the annoying error about passing nil to format's #3 argument. The error itself didn't cause any harm, so I didn't tag a release immediately.
- In OpenAll and Select modules, when your bag space is nearly reaching the Keep Free Space setting (1 free above it), Postal will now slow down opening mails to 1 second (if opening speed is below 1 second) to avoid opening mails too quickly and thus avoid going below the Keep Free Space setting. It goes back to opening full speed after you hit the Keep Free Space setting.
- If your inventory is full, OpenAll and Select modules will now loot any items that can combine with any partial stacks in your bags instead of skipping them.
Changes from v3.3.2 to v3.4.0
- Updated for and works with Cataclysm!
- New module CarbonCopy. Allows you to copy the contents of a mail into the clipboard.
- OpenAll module will now really open all your mails - even if you have more than 50 of them. It will now automatically refresh your mailbox and continue opening mails.
- OpenAll and Select modules will stop spamming your chat in verbose mode when your bags are full.
- BlackBook module will now remember your Real ID friend's characters.
- BlackBook module will now show the level and class of your alts, Real ID friends and your guild members in the menus. You may need to log on each alt and visit the mailbox at least once for Postal to remember your alts' level and class.
Changes from v3.3.1 to v3.3.2
- Updated for patch 3.3.5!
- Fix friends list in the BlackBook module. The friends menu dropdown will now show all eligible friends on the same faction and realm that Postal can determine (from friends and RealID).
Changes from v3.3.0 to v3.3.1
- Add option to ignore randoms you interacted with for auto-complete in Blackbook.
- Fix minor bug where "Processing Message 0:" is printed when performing an Open All.
- Fixed unintended bug where Postal allowed CoD amounts larger than 10000g to be sent if the Wire module is active (Blizzard just reduces the CoD amount to 10000g if it was larger). This is now fixed and the default UI behavior to disable the Send button if the amount is larger than 10000g is restored (reported by thefluffyrocker).
Changes from v3.2.2 to v3.3.0
- Updated for patch 3.3!
- Add backward compatibility for MrPlow API function call change.
- Tweak mail opening algorithm so that it won't skip mails when the opening speed is really fast (such as 0.3).
- In BlackBook module, Friends will now auto-complete if Guild disabled and they are in Guild (and vice-versa).
- Raise frame level of some buttons by 1.
- Add workaround to Blizzard's patch 3.3 menu buttons showing behind the menu itself hence they appear disabled.
Changes from v3.2.1 to v3.2.2
- Fix the annoying error about editbox being nil caused by Postman's improper hooking.
- Change the "Please delete some mail..." standard Blizzard message into a more useful one that:
- Shows you how MANY mails remain after the current 50.
- Tells you how long (in seconds) it is until you get to refresh for more.
- Add a setting for "Keep free space", defaults to keeping 1 regular bagslot free in the Select and OpenAll modules. You may need to slow down your opening speed option or leave more empty bag space due to server/client latency.
- Make our BlackBook autocomplete complete before Blizzard's reinstated one. Make the Friends/Guild list BlackBook options affect Blizzard's autocomplete instead in its popup menu (if it is enabled).
- Add an option to turn on or off Postal's auto-complete (default on).
Changes from v3.2.0 to v3.2.1
- Fix the occasional issue where auto-complete will not start working until at least 2 letters are typed.
- Fix the Send button not enabling itself when typing in a name to send to after putting items into the mail first.
Changes from v3.1.2 to v3.2.0
- Updated for patch 3.2!
- TradeBlock module now also blocks guild charter signature invites while the mailbox is open.
- New module: DoNotWant. Shows a clickable visual icon as to whether a mail will be returned or deleted on expiry. Allows fast deleting/returning of mail by clicking the icon (bye Lunar festival mail!). Standard popup warnings will still show for deleting items though.
- Fix name auto-completion in BlackBook module. Now works with Blizzard's one and still retains previous behavior.
- Additionally, you can now choose which lists (Alts/Recent/Contacts/Friends/Guild) Postal will auto-complete names from, as well as disable Blizzard's name auto-completion popup in the BlackBook module options.
- Postal now shows a tooltip containing the mail subject on mouseover if the subject line is too long to fit in the default MailFrame.
- The mailbox will no longer show the silly red "Not all of your mail could be delivered. Please delete some mail to make room." message under our Open and Return buttons in the Select module when you have more than 50 mails. Postal will print it to chat once instead.
Changes from v3.1.1 to v3.1.2
- Hides the minimap unread mail button if there are no unread mail on closing the mailbox. Does not scan past the first 50 items since only the first 50 are viewable.
- Change the opening speed menu to show speeds between 0.3 to 1.0 (with 0.05 steps) and 1.0 to 5.0 (with 0.5 steps). Change the default opening speed from 0.75 to 0.50.
- Add separate OpenAll filters specific to your Faction AH and Neutral AH.
Changes from v3.1.0 to v3.1.1
- Attempt to fix autocomplete in IME char composition mode.
- Fix mouse wheel scrolling in the MailFrame.
- Update passing arguments for some hooks in patch 3.1.
Changes from v3.0.0 to v3.1.0
You are recommended to delete your old Postal folder before installing the new one because it is a Ace3 rewrite and there are a lot of old files and libraries that are no longer needed.
- Framework: Upgraded from Ace2 to Ace3.
- Libraries: DewdropLib is gone. Now uses UIDropDownMenu in the default UI.
- Profile system: Now actually works. The old Postal saved profiles in character specific SVs, so it was useless for copying or sharing.
- Localization: Now uses the wowace localization app at http://www.wowace.com/projects/postal/localization/ to auto-generate the locale files. As such, all 8 locale files are now merged into 1 file since it no longer needs to be maintained manually.
- Slash command /postal: Removed. I don't think anyone used it.
- DejaVu module: Removed. Its functions are now in BlackBook module.
Note: Your old settings (from v3.0.0) are NOT migrated. It should only take at most 30 seconds to look at the 10 or so settings anyway.
In reply to Zimzarina:
It will be great if you implement this feature for TWW version of the game, thanks for the answer!
is there a history tracking option? i couldnt see a list of opened mail and items and gold from a list of my ah auctions, ...
In reply to twitchableeder:
No there is not.
Any chance the faction checks in BlackBook.lua can be toggled off via an option or just by default on retail? There's no real reason to worry about the faction of alts on retail, so I always patch them out manually whenever I update.
Thanks for your continued work on this addon. :)
In reply to Cuphat:
Can you be more specific on which faction checks are causing an issue for you in BlackBook. You can send to both factions fine, autocomplete includes both. The Alts list vs. All Alts list is by design. Sorry, I am simply not understanding your request,
It's more about how they are prioritized by autocomplete for me. Cross-faction mail is unrestricted, but by having opposite-faction characters on the same level as characters on other realms, it creates some really annoying circumstances where it'll autocomplete a cross-realm character over the intended recipient on the same realm. Having all characters on the realm under Alts and characters from other realms under All Alts makes autocomplete much more accurate for me.
In reply to Cuphat:
Ah. That's more of a preference for the content shown in the Alts and All Alts list. I have no plan to change their design. You can also disable the BlackBox module and Postal will fall back and use WoW auto complete method.
Can you resize this?
In reply to MrDreamers:
Resize what?
In reply to Zimzarina: The postal display.
Also just a side note it would be cool to see the icon of the thing you sold when retrieving your mail you get from what you sold from AH. ;)
In reply to MrDreamers:
Are you referring to the mail window inside WOW? If so, then no. There are several addons for WOW that are very good at letting you resize and move WOW window frames.
I have released a new version of Postal v4.1.4 that should address the issues found with the Cataclysm change.
Hi please can u update for Cata?
6x Postal/Postal.lua:218: attempt to index global 'MiniMapMailFrameMixin' (a nil value)
[string "@Postal/Postal.lua"]:218: in function `MAIL_CLOSED'
[string "@Postal/Postal.lua"]:110: in function `?'
[string "@Bartender4/libs/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:109: in function <...er4/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:109>
[string "=[C]"]: ?
[string "@Bartender4/libs/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:19: in function <...er4/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:15>
[string "@Bartender4/libs/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:54: in function `Fire'
[string "@Bartender4/libs/AceEvent-3.0-4/AceEvent-3.0.lua"]:120: in function <Bartender4/libs/AceEvent-3.0/AceEvent-3.0.lua:119>
[string "=[C]"]: in function `CloseMail'
[string "*MailFrame.xml:847_OnHide"]:1: in function <[string "*MailFrame.xml:847_OnHide"]:1>
[string "=[C]"]: in function `Hide'
[string "@Blizzard_UIParentPanelManager/Classic/UIParentPanelManager_Shared.lua"]:590: in function `SetUIPanel'
[string "@Blizzard_UIParentPanelManager/Classic/UIParentPanelManager_Shared.lua"]:670: in function `HideUIPanel'
[string "@Blizzard_UIParentPanelManager/Classic/UIParentPanelManager_Shared.lua"]:323: in function <...PanelManager/Classic/UIParentPanelManager_Shared.lua:315>
[string "=[C]"]: in function `SetAttribute'
[string "@Blizzard_UIParentPanelManager/Classic/UIParentPanelManager_Shared.lua"]:1115: in function <...PanelManager/Classic/UIParentPanelManager_Shared.lua:1098>
[string "=[C]"]: in function `HideUIPanel'
[string "@Blizzard_UIPanels_Game/Classic/MailFrame.lua"]:108: in function `hideFunc'
[string "@Blizzard_UIPanels_Game/Shared/PlayerInteractionFrameManager.lua"]:215: in function `HideFrame'
[string "@Blizzard_UIPanels_Game/Shared/PlayerInteractionFrameManager.lua"]:233: in function <...Panels_Game/Shared/PlayerInteractionFrameManager.lua:227>
Locals:
self = <table> {
SetDefaultModuleLibraries = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:363
EnableDefault = <function> defined @Postal/Postal.lua:265
About = <function> defined @Postal/Postal.lua:557
ProfileFunc = <function> defined @Postal/Postal.lua:269
EnableModule = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:328
PLAYER_INTERACTION_MANAGER_FRAME_HIDE = <function> defined @Postal/Postal.lua:108
baseName = "Postal"
IterateEmbeds = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:438
SecureHook = <function> defined @Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:335
RawHookScript = <function> defined @Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:394
OnModuleEnable_Common = <function> defined @Postal/Postal.lua:201
SetDefaultModulePrototype = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:405
WOWBCClassic = false
defaultModuleState = true
IsEnabled = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:447
CountItemsAndMoney = <function> defined @Postal/Postal.lua:652
MAIL_CLOSED = <function> defined @Postal/Postal.lua:211
DisableModule = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:346
RegisterMessage = <function> defined @Bartender4/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:80
UnregisterMessage = <function> defined @Bartender4/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:143
hooks = <table> {
}
db = <table> {
}
keepFreeOptions = <table> {
}
SetEnabledState = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:420
Hook = <function> defined @Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:273
enabledState = true
RegisterEvent = <function> defined @Bartender4/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:80
GetMoneyStringPlain = <function> defined @Postal/Postal.lua:639
IterateModules = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:433
WOWClassic = false
RawHook = <function> defined @Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:312
DisableInbox = <function> defined @Postal/Postal.lua:591
NewModule = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:231
GetModule = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:206
defaultModuleLibraries = <table> {
}
CreateAboutFrame = <function> defined @Postal/Postal.lua:510
OnProfileChanged = <function> defined @Postal/Postal.lua:191
GetName = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:275
name = "Postal"
orderedModules = <table> {
}
ToggleModule = <function> defined @Postal/Postal.lua:252
WOWWotLKClassic = false
Unhook = <function> defined @Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:417
Print = <function> defined @Postal/Postal.lua:222
GetMailType = <function> defined @Postal/Postal.lua:617
IsModule = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:464
version = "v4.0.5"
SendMessage = <function> defined @Bartender4/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:49
SecureHookScript = <function> defined @Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:409
Enable = <function> defined @Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:290
UnregisterAllEvents = <function> defined @Bartender4/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:164
GetMoneyString = <function> defined @Postal/Postal.lua:626
UnhookAll = <function> defined @Bartender4/
In reply to SunfyreBlazing:
Quick fix for this is edit Postal.lua to re-enable to wrath/cata detection. You need to change the wow project ID from WRATH to CATACLYSM.
Change line 124 to this:
if _G.WOW_PROJECT_ID == _G.WOW_PROJECT_CATACLYSM_CLASSIC then Postal.WOWWotLKClassic = true end
Any chance you could release Postal via Github or wowinterface as well? I realy like the addon but don't like curse for various reasons.
In reply to JRSmile:
This topic has been discussed several times before. Please look in the discussion history. The short is answer is no. I did it for a year and there were very few downloads from the wowinterface site.
In reply to Zimzarina: thanks for answering, you might not know there is a easy solution, [https://wowpedia.fandom.com/wiki/Using_the_BigWigs_Packager_with_GitHub_Actions] so a onetime efford to keep it uptodate on all platforms, the most interresting is the github release. if you knew this sorry for bothering you.
Annoying bug - using "OpenAll" gets stuck on duplicate unique items
Fix if possible pls, skip such items instead, or skip all uniques
In reply to demjmk:
While I understand this situation and a desire to work around it there is not currently any good method that I am aware of to do so that is not extremely code intensive. The feature is based on the TakeInboxItem(index, itemIndex) API from Blizzard which has no return code on success/failure and is also an asynchronously server request. The method to do this would either be your idea of skipping all Unique's or keep a running list of every item a player is wearing, in their inventory, in their bank, and in their void storage that are Unique's and compare each time before a unique is taken from the mail. To me this is more work to implement then I think it's worth for the duplicate unique case.
In reply to Zimzarina:
So you can't get item info from mail, perhaps you can detect when the opening process gets stuck, assume that the current item is unique or cannot be looted for any other reason, and attempt to skip this item