パーソナルツール
現在の場所: ホーム takalog trac 0.11 でメール送信
書いた本
Plone 完全活用ガイド の Chapter 1, 2, 3, 11 を執筆しました。
plone のインストール、使い方から、機能・デザインのカスタマイズ、プロダクトの作り方まで、 plone のすべてがぎゅっと詰まっている書籍になっていると思います。
plone に興味がある人から、すでに使いこなしている方まで、ぜひ読んでみてください。
Plone 完全活用ガイドのサポートページ
« 2008July »
Su Mo Tu We Th Fr Sa
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
このBlogについて
鈴木たかのりです。とりあえず日記っぽく雑多なことを書き込んでいこうと思っています。 zope/plone関係の技術的な内容については http://takanory.net の方にまとめていこうと思います。 コメント・ツッコミはご自由にどうぞ。
最近のトラックバック
新しい写真集モジュール (ロバートのブログ 03-18 08:28)
新しい写真集モジュール (ロバートのブログ 03-18 08:28)
トランペットアンサンブルコンサート (人生日記 03-08 17:37)
PloneSlimboxに乗り換え♪ (pt001-blog 02-23 17:14)
宗家カムジャタン (Happilio(ハピリオ)恋愛ブログ 02-18 15:51)
カテゴリ
puzzle (33)
mac (17)
av (25)
books (17)
coreblog (45)
ds (20)
lego (31)
misc (59)
moblog (249)
movie (30)
pc (38)
plone (196)
server (52)
suidou (29)
snowscoot (8)
sports (32)
software (117)
winds (32)
python (25)
 
文書操作

trac 0.11 でメール送信

作成者 takanori投稿日 2007年10月14日 23時51分 最終変更日時 2007年10月14日 23時54分

trac では、簡単な設定でチケットが変更になったときにお知らせメールが飛ぶようにできます。

メール送信設定は trac.ini の下記の部分を修正することでできます。

[notification]
:
smtp_always_cc = (送信先メールアドレス)
smtp_enabled = true

上記の設定でメールが送信できますが、メールの形式は utf-8 + base64 encoding になります。

最近のメーラなら大丈夫ですが、古いメーラなどではうまく読めない場合があります。

というわけで、よくある日本語メールのように iso-2022-jp でメールを送信するようにします。

"OZACC.blog: trac 0.10.4":http://blog.ozacc.com/archives/001563.html に書いてある内容を参考にしました。

trac に入っている notification.py を以下のように書き換えます。

変更前:

self._charset.input_charset = 'utf-8'
pref = self.env.config.get('notification', 'mime_encoding').lower()
if pref == 'base64':
    self._charset.header_encoding = BASE64
    self._charset.body_encoding = BASE64
    self._charset.output_charset = 'utf-8'
:
:
# sanity check
if not self._charset.body_encoding:
    try:
        dummy = body.encode('ascii')

変更後:

self._charset.input_charset = 'utf-8'
pref = self.env.config.get('notification', 'mime_encoding').lower()
if pref == 'iso-2022-jp':
    self._charset = Charset('iso-2022-jp')
elif pref == 'base64':
    self._charset.header_encoding = BASE64
    self._charset.body_encoding = BASE64
    self._charset.output_charset = 'utf-8'
:
:
# sanity check
if self._charset.input_charset == 'iso-2022-jp':
    body = unicode(body, 'utf-8').replace(u'\uff5e', u'\u301c')
    body = body.encode('iso-2022-jp')
elif not self._charset.body_encoding:
    try:
        dummy = body.encode('ascii')

これで、日本語のお知らせメールが iso-2022-jp 形式で送られるようになりました。

カテゴリ
server server
python python
トラックバック用URL:
http://takanory.net/takalog/787/tbping
コメントを追加

下のフォームに記入してコメントを追加できます。平文テキスト形式。

(必須)
(必須)
(必須)
(必須)
下の画像に表示されている文字を入力してください


Powered by vine linux, python, zope, plone, coreblog