Personal tools

コメント追加時のNortification mailの送り方

  1. contentsタブをクリックします
  2. MailHostを追加します
  3. methodsというフォルダに移動します
  4. addCommentHookというPythonScriptを追加します(パラメーターはdのみ)
  5. 以下のコードをコピー&ペーストします
try:
    mailhost=getattr(context, \
                      context.superValues('Mail Host')[0].id)
except:
    raise AttributeError, "Mail Host object cant be found."

to_addr   = "送り先のアドレス"
from_addr = "送信元のアドレス"

mMsg = """To: %s
From: %s
Mime-Version: 1.0
Content-Transfer-Encoding: 7bit

Author   :%s
Title    :%s
URL      :%s
EntryID  :%s
Body     :
%s""" % (to_addr , from_addr ,  d["author"] , d["title"] ,\
         d["url"] , str(d["parent_id"]) , d["body"])

mTo = to_addr
mFrom = from_addr
mSubj = 'A comment added!'

mailhost.send(mMsg, mTo, mFrom, mSubj)
これで,コメント追加時にメールでお知らせがきます。当然jaMailHostなどがインストールされている必要があります。また,Python ScriptのProxyタブでProxy RoleをManagerなどに設定してください。

トラックバック追加時にお知らせメールを送る方法は以下。

  • addTrackbackHookというPythonScriptを追加します(パラメーターはdのみ)
  • 以下のコードをコピー&ペーストします
    1. try:
          mailhost=getattr(context, \
                           context.superValues('Mail Host')[0].id)
      except:
          raise AttributeError, "Mail Host object cant be found."
      
      to_addr   = "送り先のアドレス"
      from_addr = "送信元のアドレス"
      
      mMsg = """To: %s
      From: %s
      Mime-Version: 1.0
      Content-Transfer-Encoding: 7bit
      
      Title    :%s
      UR       :%s
      BlogName :%s
      Body     :
      %s""" % (to_addr,from_addr,d["title"],\
               d["url"],d["blog_name"],d["excerpt"])
      
      mTo = to_addr
      mFrom = from_addr
      mSubj = 'Trackback added'
      
      mailhost.send(mMsg, mTo, mFrom, mSubj)
      

      The URL to Trackback this entry is:
      http://coreblog.org/ats/66/tbping

      Re: コメント追加時のNortification mailの送り方

      Posted by kom at 2003-10-17 14:33

      すいません。とりあえずこの通りにやってみたのですが、うまく行きません。とりあえずjaMailHostが動いている事は確認できているのですが、そのあとは何がうまく行ってないのか、良くわかんないです。どうやって動作確認すればよいのでしょう?教えていただけると助かります。

      Re: コメント追加時のNortification mailの送り方

      Posted by ats at 2003-10-17 14:40

      まず,問題の切り分けをしましょう。。。
      確か,jaMailHostは,そのままではZope 2.6.x上で動かなかったはず。メールを送るDTML Documentなどを作って,ちょっとテストしてみてください。
      私は,動かないのに気づいてパッチを当てたのですが,どうやったか忘れてしまいました。。。(^^;;;。あとでちょっと調べてみます。
      hook関数でエラーが起こった場合は,Zopeのエラーログにトレースバックを出力するようになっています。Zopeをデバッグモードで動かしつつテストをすると,シェルにエラーのトレースバックが表示されますので,メールかなにかでエラーを送ってください。

      Re: コメント追加時のNortification mailの送り方

      Posted by yasusii at 2003-10-19 20:03

      ちゅうことは、コメント付けるとしばたさんにメールするのと同じ効果が得られるということですね。

      Re: コメント追加時のNortification mailの送り方

      Posted by ats at 2003-10-19 20:37

      >yasushiiさん

      おお,スンマセン。直しました。
      御報告ありがとうございましたm(_ _)m。

      #ずっと前に書いた「そうなる予定」のURLをそのままにしておりました(^^;;;

      Add comment

      You can add a comment by filling out the form below. Plain text formatting.

      (Required)
      (Required)
      (Required)
      (Required)
      コメントスパム避けのための認証文字列です

      Captcha Image

      Pythonな求人
      r = urlopen("http://www.webcore.co.jp/recruit")
      About this blog
      ■Author
      atsこと柴田淳です。Atsushiはガイジンにうまく発音して頂けないので,これからはJunというペンネームで行こうと思っていましたがあんまり使ってません。
      Webcore株式会社 代表取締役
      ■TRIVIAL TECHNOLOGIES 2.0
      トリビアル・テクノロジー 2.0,「トリテク 2.0」と呼んでください。
      Blog(ブログ)サイトです。Plone上で動く,オープンソースのBlog Product - COREBlog2を使っています。
       
      最近書いた本,Mook
      みんなのPython Webアプリ編
      Pythonの基礎から,Webアプリやフレームワークの仕組みまで,つまることなく一気に学べる書籍です。「みんなのPython」と一緒に読んでください:-)。
      みんなのPython
      Pythonの入門書です。基本的なことから分かりやすく解説するよう勤めました。Pythonをはじめたいと思っている人,JavaやC++,PerlやRubyを学ぼうと思って躓いてしまった人はぜひ読んで下さい。
       

      Powered by Plone, the Open Source Content Management System