ViMbAdmin and Vacation / Out of Office Auto-responders

An FAQ post for future reference because, well, it’s a FAQ!

ViMbAdmin is primarily a database frontend for managing virtual mailboxes with mail services such as Postfix and Dovecot.

A frequently asked question is does it / can it support vacation / out of office auto-responders. The short answer is no.

The main way to handle OOO responders is via SIEVE (e.g. Dovecot’s version). To put a front end on this, you need a server configured for external SIEVE management and a client with SIEVE support (which ViMbAdmin does not have).

I’ve done it in three ways in the past:

  1. directly editing the .dovecot.sieve file. This is only really good for people with access to the server and some clue.
  2. Using a Thunderbird plugin allowing editing of SIEVE files. Again, clue required.
  3. For one customer, they can do it via the SoGO web interface we installed for them. This is a very nice interface for people migrating from Exchange.

We did look at fixing a Thunderbird Out of Office plugin but didn’t get very far.

What we all need here is for someone for write / sponsor a decent SIEVE based Thunderbird OOO plugin. Here’s some prior art: https://addons.mozilla.org/en-US/thunderbird/addon/sieve.

Virtual Mail with Ubuntu, Postfix, Dovecot and ViMbAdmin

As part of pushing our new release of ViMbAdmin, I wrote up a mini how-to for setting up a virtual email system on Ubuntu where the components are:

  • Postfix as the SMTP engine;
  • Dovecot for IMAP. POP3, Sieve and LMTP;
  • ViMbAdmin as the domain / mailbox / alias management system via web interface.

It supports a number of features including mailbox archival and deletion, quota support and display of mailbox sizes (as well as per domain totals).

Find the how-to at:

Synchronising Microsoft Exchange to Another IMAP Server

This post is much less of a detailed how-to but rather some useful links. We were tasked with the job of sync’ing about 1,000 MS Exchange mailboxes to a Dovecot server. This needed to be done via an administrator account on the Exchange end as individual user passwords were not available.

The tool of choice for this is imapsync.  Unfortunately, there is not a single formula that will work for all as it can depend on the Exchange configuration and version as well as the use of domains on the Exchange and ActiveDirectory servers.

To help understand the various combinations of logins for Exchange, I found the following invaluable: Understanding login strings with POP3/IMAP.

Also invaluable is the imapsync FAQ – just search for mentions of Exchange.

In the end, the following worked for me (but your mileage will most definitely vary!):

./imapsync --host1 exchange-server 
    --user1 'domain/adminuser/user' --password1 'admin-password' 
    --authmech1 LOGIN 
    --host2 dovecot-server --user2 user@example.com 
    --password2 userpassword

One key element here is that when logging into Exchange as an individual user I had to use --authmech1 NTLM but if you use this auth method with the above user string, you will always end up logging into the admin’s mailbox, not the user’s. That, at least, was my experience.

Top 15 UI Libraries on GitHub (with 1500+ watchers)

I was just reviewing an accessibility presentation where the author had an interesting slide on the top 15 UI libraries on GitHub with 1500+ watchers. Here they are with links and descriptions (my own comments in italics):

  1. Bootstrap, from Twitter – Simple and flexible HTML, CSS, and Javascript for popular user interface components and interactions. A favourite of mine and I’ve used it on Open Solutions, ViMbAdmin, TallyStick, ePayroll and more.
  2. impress.js – It’s a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com. (GitHub page).
  3. chosen – Chosen is a library for making long, unwieldy select boxes more friendly. Another plugin we love and use in a number of projects.
  4. jQuery-File-Upload – File Upload widget with multiple file selection, drag&drop support, progress bars and preview images for jQuery.
  5. jquery-ui – jQuery UI provides abstractions for low-level interaction and animation, advanced effects and high-level, themeable widgets, built on top of the jQuery JavaScript Library, that you can use to build highly interactive web applications. (GitHub page). Another favourite of ours and we use it along side Bootstrap with the jquery-ui Bootstrap theme.
  6. spin.js – An animated CSS3 loading spinner with VML fallback for IE.
  7. deck.js – Modern HTML presentations (GitHub page).
  8. Skeleton – A Beautiful Boilerplate for Responsive, Mobile-Friendly Development.
  9. Foundation – An easy to use, powerful, and flexible framework for building prototypes and production code on any kind of device.
  10. showoff – the best damn presentation software a developer could ever love (example).
  11. ajax-upload – A file upload script with progress-bar, drag-and-drop (GitHub page).
  12. isotope – An exquisite jQuery plugin for magical layouts.
  13. Timeline JS – Beautifully crafted timelines that are easy, and intuitive to use. This actually looks really cool and very pretty.
  14. etherpad-lite – An Etherpad based on node.js – Our goal is to make collaborative editing the standard on the web.
  15. ColorBox – A lightweight customizable lightbox plugin for jQuery.

 

As an honourable mention, if you use Bootstrap and it’s modal dialog, take a look at Bootbox which provides wrappers for JavaScript alert(), confirm() and other flexible dialogs.

Some thinks that jump out at me from the above is that frameworks are very popular and, similarly, prestation frameworks are also very popular. There must be a deep hatred of PowerPoint and Keynote among web developers! The other take away for me is how a very small project – such as chosen – can become hugely hugely popular.

ViMbAdmin 2.1 Released – POP3/IMAP Access Restrictions

We’ve just pushed a new release of ViMbAdmin – version 2.1. The main highlights are:

  • it’s now possible to restrict access to a mailbox via either IMAP, POP3 or both. See this page on the wiki for more information.
  • it’s our first release requiring a database migration. But it’s really really easy – see this page for those instructions.

As always, a live demo is available at: http://www.opensolutions.ie/vimbadmin/.