Now about CRM functions - Re: How to intercept recipient before reply, and before sending?

Jean Louis bugs at gnu.support
Thu Jul 1 12:43:04 UTC 2021


* P. Mazart <pmazart at web.de> [2021-07-01 09:18]:
> > This is all good as brainstorming.
> 
> Nice, any chance that this system will be talked about in a blog or
> something like that? This CRM of yours sounds like an interesting read.

My business does depend on Mutt. Yesterday I was thinking how much we
are locked to specific tools and habits as without them so much of the
life could break down. On the other side, there is no quicker email
client but Mutt. Few others similar clients simply don't perform
efficient enough for my case.

Major principle I am using is to designate a separate maildir folder
for separat email address.

If I am having conversation with joe at example.com all of the emails to
and from this email address will be saved into
~/Maildir/joe at example.com

Whoever implements this principle will gain tremendous advantages:
==================================================================

- I am pressing ESC-v to get all previous emails related to email
  address I am reading either in the pager or in the index:

  macro index,pager \ev ":set wait_key=no<enter><pipe-entry>ef > ~/tmp/ef-email<enter>!mutt-emailsof.lisp<enter>:set wait_key=yes<enter>" "Quickly view maildir for contact ID"

  whereby the script mutt-emailsof.lisp simple takes the email address
  from ~/tmp/ef-email extracted by program `ef' which I have
  previously sent attached. This script is just making few more
  checks, for example, email written as Somebody at Google.com may be
  looked in ~/Maildir/Somebody at google.com but also in
  ~/Maildir/somebody at google.com so there could be some problems with
  upper cased letters. In general when saving emails I am using lower
  cased letters though it is not respecting the RFC. However, it works
  well for now.

  The script will thus open a new instance of Mutt that will read the
  recipient's Maildir folder (it could be mbox).

  My script also verifies OTHER email addresses of the same person,
  not only single email address. A single person may have previous
  emails, sometimes 5-7 different email addresses and maybe I wish to
  review conversation of the person, not just conversation of single
  email address. For people wishing to implement this system it will
  suffice to review single email address' conversation.

I am sure that spawning multiple mutt instances one from each other is
not so common. Maybe one could modify mutt, switch to folder, and
remember the last folder to switch to last folder. But due to network
connections that would cause just more delays.

Thus I have mentioned here 2 principles for the users' workflow that
can be very useful:

1. Detect the recipient's email address -- that is done by program
   `ef' or other grep. I would prefer if it would be directly provided
   by Mutt in format like $to-email $form-email, etc. Then I would not
   need to use external tools. It would allow direct invokation of
   programs related to that specific recipient.

2. Invokation of external program related to the recipient's email
   address is allowing plethora of extensions:

   - Spawning mutt from within mutt on the related email address is
     great extension to review all the previous conversations related
     to recipient. It works easy because of ~/Maildir/joe at example.com
     setup of Maildir for each specific email address. This again
     enables easy searching of emails without external indexer as long
     as email address is known.

   - Not only that, because email address has been extracted or can be
     known, now it is so easy to make a macro or key in Mutt to invoke
     various other CRM related functions: Add note related to
     recipient, add follow up, subscribe the recipient into specific
     mailing list (I mean those used in sales and marketing), verify
     which mailing lists is recipient subscribed to, unsubscribe it as
     some people send unsubscribe requests by email, verify which
     people have been recommended by that person, open up directory
     that is related to that person, review files or view images of a
     girl you are considering for dating among other 246 girls (as
     example). People send contracts, invoices, files, I am storing
     everythin by recipient without knowing where as that goes
     automatic. Thus quickly opening the right directory related to
     recipient is important function.

Now I am thinking I should implement the same principle to saving of
attachments, before the attachment is saved I would obtain the email
address and then change on the fly the directory where attachments are
saved. Plain fiels are saved on my side to directories like:

/home/data1/protected/hyperscope/3/5/5/8/2/By-ID/1/files/2020/05/2020-05-14

The above directory I am never accessing manually by browsing. I am
just looking for the person and click `f' to access all files
pertaining to the person. New files are normally sorted by
year/month/date principle. 

Same principle can be implemented when saving attachments from Mutt so
that I don't know to invoke additional "store files to person's space"
command. 

For the above implementation one need not use any database, it could
be done all by scripts. I am using PostgreSQL database and have
slightly more sophisticated system.

   
-- 
Jean

Take action in Free Software Foundation campaigns:
https://www.fsf.org/campaigns

In support of Richard M. Stallman
https://stallmansupport.org/


More information about the Mutt-users mailing list