AcidMail Docs Version 0.6
About
Installation
Usage
Step.rc Settings
!Bang Commands
Exported Variables (evars)
Example Configuration
Poormans SSL
Still to be done
Version History
Author
This module was made from scratch to replace LsMail. I got frustrated that I still had modules that didn't use xPaintClass. So I decided to make a replacement for one of the last ones I had running: LsMail. Since I didn't even use the graphics part of the module I decided to make the module only use evars and events so it can display info on a label or something similar.
Currently AcidMail only support Pop3 and IMAP mailboxes, but in the future it will hopefully support native secure connections as well. Currently you can use AcidMail for secure connections using this workaround if you have ssh access to that server.
If you find anything that doesn't work please e-mail me (see Author). This read-me was made using Andymon's xDocs If there is anything wrong on this page please change it here.
Simply load it by putting *NetLoadModule AcidMail-<version> in your theme.rc or another .rc file. (Change the version number in the example if you use a different version!)
*NetLoadModule AcidMail-1.0
You can also load it the old way by extracting the module manually to you $ModuleDir$ and then putting LoadModule "$ModulesDir$Acidmail.dll" in your step.rc.
LoadModule "$ModulesDir$Acidmail.dll"
Set-up a mailbox using *AcidMailbox then use AcidMailMailCmd and AcidMailNoMailCmd to show and hide a label which shows $AcidMailNumMail$. Check out the example for a complete working set-up. Ofcourse there are more advanced ways for showing info. See the events and evars below.
When using IMAP AcidMail does not return the amount of mail in the inbox! Instead it only return the amount marked as recent. Those are mails which are not yet viewed by a mail client. I did this so IMAP works exactly the same as POP3.
Maybe in a future version I will allow you to choose to look for something else than mail marked as recent.
All settings in this file show an example setting with it, which is also the default unless stated otherwise.
*AcidMailbox name
This setting is required for every mailbox you wish to check. They can be configured with the settings below.
AcidMailTimer 5
How often AcidMail should check for mail (in minutes). If this is 0 no timer will be set and all checking will have to be done manually.
Each setting in this section requires the mailbox name to be put in front of it.
Type pop3
The mailbox type must be pop3 or imap (can be simap or spop3 in a later release hopefully).
Server home.server.com
The server the mailbox is located at. (the example isn't the default for this one)
User anonymous
The username for the mailbox.
Folder inbox
Change this to look in another folder than inbox when using IMAP.
Port 110
The port defaults to 110 when using POP3 and 143 for IMAP. If you need another port set this to something else.
Password password
This setting is optional, if no password is found a dialog will pop up the first time asking for it. It is then stored encrypted on your system so you won't have to enter the password more than once. If for some reason you want to set the password in the rc files use this setting. (the example isn't the default for this one)
This is the old way of configuring AcidMail. It replaces the simple *AcidMailbox line. It's shorter because it only takes one line, but it's not recommended since not all options can be configured this way and it's hard to use with scripting. You cannot use any of the multi line settings when using this syntax!
*AcidMailbox name type server(:port) username (password)
- name can be any name you like, for example "home" (you don't need quotes).
- type must be pop3 or imap (can be simap or spop3 in a later release hopefully).
- server is the address of your mail server, for example mail.server.com. You can also specify the port here behind a ":" for example mail.server.com:110. For Pop3 it defaults to 110 and for IMAP it defaults to 143.
- username is your user name, for example acidfire.
- password is your password. This setting is optional, if no password is found a dialog will pop up the first time asking for it. It is then stored encrypted on your system so you won't have to enter the password more than once.
AcidMailMailCmd !none
Bang to be executed when there is mail and there was 0 mail before.
AcidMailNewMailCmd !none
Bang to be executed when there is new mail.
AcidMailNoMailCmd !none
Bang to be executed when you don't have any mail and there was mail before.
AcidMailFoundMailCmd !none
Bang fired if it finds mail, regardless of the value before.
AcidMailZeroMailCmd !none
Bang fired if it finds 0 mail even if there was 0 before checking.
AcidMailCheckMailCmd !none
Bang to be executed when AcidMail checks for new mail.
AcidMailDoneCheckCmd !none
Bang to be executed when AcidMail is done checking.
AcidMailErrorCmd !none
Bang to be executed if an error has occured.
!AcidMailCheckMail
Checks mail on all servers.
!AcidMailClearNew
Resets number of mails to 0 and runs NoMailCmd.
$AcidMailNumMail$
Exports the number of mails found on last mailcheck.
$AcidMail<name>$
Exports the number of mails found for the defined mailbox.
*AcidMailbox Home HomeType pop3 HomeServer mail.server.com HomeUser acidfire *AcidMailbox School imap studentweb.student.nl student1337357 AcidMailTimer 5 AcidMailMailCmd !LabelShow maillab AcidMailNoMailCmd !LabelHide maillab *Label Maillab MaillabPaintingMode .singlecolor MaillabColor 255 255 255 MaillabFontColor 0 0 0 MaillabFontHeight 21 MaillabX -31 MaillabY 20 MaillabWidth 30 MaillabHeight 21 MaillabStartHidden MaillabOnLeftClick "$Email$" MaillabOnRightClick !AcidMailClearNew MaillabText "[exportedevar('AcidMailNumMail')]" MaillabTooltip "home: [exportedevar('AcidMailHome')] school: [exportedevar('AcidMailSchool')]"
(by xAFFE)
If you have ssh access to your mail server you can use the portforwarding feature of ssh to get a secure connection.
If you use the console ssh-client just append '-L localhost:143:localhost:143' to the prompt. If you use putty please reffer to this howto.
After that you just need to connect to localhost and everything is secure and fine. If you use pop3 dont forget to exchange the port 143 with port 110.
- Natively support secure POP3 and IMAP.
- Real notifications instead of logging. (needs core update)
0.6: New syntax
- Added new multiline syntax. This was needed because the single line syntax would become unreadable if new features were added.
- Added the ability to specify which folder should be checked when using imap.
- Some timer/window changes along with other minor fixes.
0.5: First version with IMAP support
- IMAP support.
- Huge code rewrite/reorganisation -> lots of small bugs fixed and more efficient and secure code.
0.3: First public beta
- Encrypted password storage: passwords no longer need to be in .rc files, a dialog will ask for them the first time.
- Added support for connecting to ports other than 110.
- Added support for connecting to an ip address.
- Removed AcidMailNoMessageBoxes, since there aren't any message boxes (yet).
- Made AcidMailErrorCmd work.
- Made ErrorHandler which posts errors in the logfile.
- Added AcidMailFoundMailCmd: fired if it finds mail, regardless of the value before.
- Added AcidMailZeroMailCmd: fired if it finds 0 mail even if there was 0 before checking.
- Misconfiguring *lines shouldn't crash AcidMail as easily as before.
0.2: Beta release
- Fixed !AcidMailClearNew not working.
- Disabled checking mail when timer is set to 0.
0.1: First beta release
Author: Acidfire
Email: acidfire AT litestep DOT com