Visit Our UNIX and Linux User Community


Dump eMail image to directory


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Dump eMail image to directory
# 1  
Old 05-25-2011
Question Dump eMail image to directory

Hello everyone!
I'm new and very happy to be here!

Trying to create a quick idea:
I want to take images sent to an eMail address on my domain (pics@mywebsite.com), and copy them into a directory.
There will then be a page that displays those images.

How could I go about this?
I'm a script n00b, yet I can keep at it and ask for help until I get it.
Yet I have no direction as to how connect the eMails with the directory in the server.

The server is hosted and it's running CentOS if I'm not mistaken.

If you guys could point me in the right direction, I'd appreciate it a lot.
Thank you very much for your time and help! Smilie
# 2  
Old 05-25-2011
If I understand this, you want to accept emails that have embedded images, storing them in a directory that your web server can access to let you see the list and viw individual images.
  1. Email can be captured with a ~/.forward file containing '|executable_file', although this is not a well thought of aspect of sendmail, security-wise. Each arriving email goes to stdin of a separate process running executable_file, which can be a script or binary execuatble.
  2. Email is mime encoded, so you need something to take email files and locate the encoded image(s), decode it to binary and write it to a dir. Usually, images are base 64 encoded, but it depends on the email client, might be uucp encoded or raw binary.
  3. You need to devise a naming method.
  4. You need a web server allowing open directory listing or a web service to format the list into a web page where you can review the list and select images to view.
This User Gave Thanks to DGPickett For This Post:
# 3  
Old 05-26-2011
Hello DGPickett!
Thank you very much for the reply, and the direction!
Greately appreciated.

From what you wrote, I have my work cut out for the future.

1. I'm going to research the ~/.forward file you mention.
2. EMail encoding: I'll also research this, as I have no idea.
3. The naming method... I'll figure it out, although I thought to give it the date+time to the second.
4. I think this point is the only one I "more or less" understand.
If the images are inside a directory, I know I can do a script that will list all the files in the directory, and output those names.
Then do a page that will display those images.

Well, I really thank you for the direction!

I will research these things, and report back my progress here.

Much thanks!!
# 4  
Old 05-26-2011
Work in stages. First, set up the .forward to collect mail as files. Then, see what they have in them for your mail clients. It reads pretty well.

If you cannot get the .forward to work, you can cron every n minutes a script that calls mail to fetch each message while there are messages.

If you need a quick base 64 decoder, I have a C version. Of course, it is probably hiding somewhere in UNIX/LINUX/GNU!
# 5  
Old 05-26-2011
Thank you!
These forums rock.
Will start working on it step-by-step tonight when I get out of the second job.
Smilie
# 6  
Old 05-26-2011
you can use something like this in your .forward, or your .procmailrc (not sure if in procmail is safer or not):
Code:
| uudeview -a -d -i -q

uudeview is available as a CentOS rpm from the Dag section of the rpmforge repo: RPMforge/Using - RPMRepo Wiki

I've only tested this with a saved file, not with a live mailbox
This User Gave Thanks to kalak For This Post:
# 7  
Old 05-26-2011
Quote:
Originally Posted by DGPickett
If you need a quick base 64 decoder, I have a C version. Of course, it is probably hiding somewhere in UNIX/LINUX/GNU!
Right you are, it is: "openssl" can encode/decode to base64:

Encode:
Code:
openssl enc -base64 -in /path/to/inputfile -out /path/to/outputfile

or to stdout:
Code:
openssl enc -base64 -in /path/to/inputfile

you can also use <stdin> for input:
Code:
echo "This is to be encoded." | openssl enc -base64


Decode: is done by adding option "-d"
Code:
openssl enc -base64 -d -in /path/to/encoded.file -out /path/to/decoded.file

...or analogous to the encoding variants.

I hope this helps.

bakunin
These 2 Users Gave Thanks to bakunin For This Post:
 

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Count total image in directory

Dear all, I have a directory consisted of files in .jpg, .jpeg etc..all of them are image 20140411030143_62811159403_92886.jpg 5/11/2014 15:01 197K 20140415024737_62811618747_116460.jpg 4/15/2014 14:47 17K 20140415031003_62811618747_109192.jpg 4/17/2014 15:10 17K... (4 Replies)
Discussion started by: radius
4 Replies

2. Shell Programming and Scripting

Multiple .gz decompress files and dump other directory

I have code below for i in *.gz; do gzip -dc $i /home/vizion/Desktop/gzipfile/; done one more for i in *.gz; do gunzip -dc $i /home/vizion/Desktop/gzipfile/; done both are getting error: "gunzip: /home/vizion/Desktop/gzipfile/ is a directory -- ignored " i have requirement below in... (3 Replies)
Discussion started by: Chenchireddy
3 Replies

3. Shell Programming and Scripting

bash dump raw email body txt from Maildir

I'm setting up a cronjob that will hopefully dump the contents of a email delivered to Maildir/new/ to /home/user/raw.txt (and then delete that email) I could manually remove the bottom line of the raw email, then place the contents in the next line up in the /home/user/raw.txt, but it seems to... (5 Replies)
Discussion started by: unclecameron
5 Replies

4. UNIX and Linux Applications

SMTP Server - dump email

Background: I am replicating a set of servers into a "bubble" for testing. Those systems cannot be aware they are in a "bubble" so I must replicate all external services. I have successfully replicated most of those services except SMTP. I would like to configure an SMTP server that collects... (0 Replies)
Discussion started by: NFN_NLN
0 Replies

5. UNIX for Advanced & Expert Users

Image in email

hi all I have to send a mail, that should have an image at the backgound of the text. i know to send it as an attachment, but how can i set it as backgound. Please help. Thanks (2 Replies)
Discussion started by: infyanurag
2 Replies

6. UNIX for Advanced & Expert Users

Create an Ignite image on tape from Online IgniteUX image

Hi, (HP-UX 11.11) I need to create a tape image of an igniteUX image created on our igniteUX server. That is to say. I have a "Online" image of the igniteUX of the targeted system but I now need to copy it to a useable TAPE (igniteUX) image so i can build an other server from it that is not... (3 Replies)
Discussion started by: Andrek
3 Replies

7. Solaris

Shell script to send email alert for core dump

Friends, I am in search for a shell script that is capable of running as a cronjob and have to send out an email when ever there is a CORE DUMP. Please post the hints to achieve my goal. Thanks in advance. (1 Reply)
Discussion started by: rtatineni
1 Replies

8. UNIX for Dummies Questions & Answers

help, what is the difference between core dump and panic dump?

help, what is the difference between core dump and panic dump? (1 Reply)
Discussion started by: aileen
1 Replies

Featured Tech Videos