こんにちは、私は数日間この問題に頭を悩ませようとしてきましたが、ここでそれを失いつつあります。メッセージをジャーナリングしようとしています。 from およびその他の特別なヘッダーで、それを (添付ファイルとして) 別の電子メール内にラップし、DB に送信します。
私の質問の核心は、別の電子メールの中に電子メール (ヘッダー付き) をどのようにラップするかということです。最初の (内部の) 電子メールを最初にファイルに書き出し、それを MUTT を介して添付ファイルとして追加する必要がありますか? ファイルを作成せずに添付ファイルを作成できますか? 私はそれがどのように機能すると思うかのスタブを持っていますか?
#!/bin/bash
function assemble()
{
declare -a argAry=("${!1}")
echo -e "${argAry[@]}" -- $2 |sed "s/^ *//;s/ *$//;s/ \{1,\}/ /g"
}
function generate()
{
hname=`hostname`
tai64=`date| tai64n |cut -c2-25`
uuid4=`python -c 'import uuid; print uuid.uuid4()'`
# return variable as generated string
echo "${hname}-${tai64}-${uuid4}'"
}
function send()
{
attach='' # can't [] && || for some reason
[ '1' == ${ARGS[0]} ] && attach="-e 'my_hdr"
local hdrsTable=(
"${attach} To: ${ARGS[1]}'\n"
"${attach} From: ${ARGS[2]}'\n"
"${attach} X-DOMAIN-SITE-URL: ${ARGS[3]}'\n"
"${attach} X-DOMAIN-MEDIA-TYPE: ${ARGS[4]}\n"
"${attach} X-DOMAIN-DIRECTION: ${ARGS[5]}\n"
"${attach} X-DOMAIN-CAPTURE-DATE: `date`\n"
"${attach} X-DOMAIN-POST-DATE: `date`\n"
"${attach} X-DOMAIN-UTID: `generate`\n"
`[ -a $FILE ] && echo -a $FILE`
)
if [ '0' == $ARGV[0] ]; then
FILE="/tmp/$(basename $0).$$.tmp"
assemble hdrsTable[@] >> "/tmp/${FILE}" # create the temporary file to hold stuff?
else
assemble hdrsTable[@] $1
fi
}
ARGS=("0" "somelivename@domain.com" "someliveemail@domain.com" "www.google.com" "archiver" "out")
send
ARGS=("0" "someforwarder@domain.com" "journaling@ash.domain.com" "www.google.com" "archiver" "out")
send 'root@domain.com'