COREBlog2への携帯電話からのエントリ
(COREBlog2のカスタマイズ,使いこなし/moblogをするには?)COREBlog2はmoblogをおこなうことができますが、スクリプトをインストールして設定する必要があります。
Contents
概要
エントリの流れ:
必要なもの
moblog.pyの内容を書き換える
携帯電話などから送信するmoblogメールのフォーマット
気がついたこと
それから?
概要
COREBlog2は COREBlogと同様 に moblog(携帯電話などからのメールでのCOREBlog2へのエントリ)が可能 ですが、COREBlog2に内蔵されているのではなく 外部スクリプトをインストールし設定をおこなう必要があります。
moblogのエントリはCOREBlog2直接ではなく、別途準備したpopを使用可能なメールアカウントを通しておこないます。
エントリの流れ:
携帯電話などから画像を添付したメールを送信 → メールサーバ →pop→ moblog.py (cronなどで定期的に実行) → add_moblog_entry(".py"をつけません!!) → COREBlog2へエントリ
以下では、このサイトでおこなったインストールと気がついた点を記述します。
必要なもの
popが使えるメールアカウント
携帯電話などからのメールによってこのメールアカウントへエントリを送信し、スクリプトがpopでメールの読み出しをおこない同時にCOREBlog2へエントリします。私はYahooのメールアカウントを使用しました。
COREBlog2用moblogスクリプト
http://coreblog.org/ats/testmoblog を参照して、coreblog.orgより下記の二つのファイルをダウンロードしました。
moblog.py(要設定)
http://coreblog.org/ats/stuff/moblog.py/download からダウンロード。
Zopeの外でcronなどで動かすスクリプト。適当な場所にインストールし実行権限をあたえておきます。
add_moblog_entry(設定不要・インストール時に".py"をつけない)
http://coreblog.org/ats/stuff/add_moblog_entry.py/download からダウンロード。
portal_skins/custom以下へ 'Script (Python)' としてインストールします。
Parameter Listへ 'entry_id,title,body,image_path' を記述します。
moblog.pyの内容を書き換える
〜 省略 〜
#
# Please set some information,(host of mail server,etc) to use
#
import poplib
s = poplib.POP3('メールサーバ')
s.apop('popアカウント名','popパスワード')
l = s.list()
if len(l) and l[1]:
m = s.retr(1)
msgbody = '\n'.join(m[1])
add_moblog_entry(msgbody,
'http://Ploneユーザ名:Ploneパスワード@COREBlog2/の/パス/','moblogメールパスワード')
s.dele(1)
s.quit()
return
〜 省略 〜
使用するメールアカウントに合わせて メールサーバ名 、 popアカウント名 、 popパスワード を書き換えます。
moblogをエントリするCOREBlog2に合わせて Ploneユーザ名 、 Ploneパスワード 、 COREBlog2のパス (最後に"/"を忘れないように)、 moblogメールパスワード を書き換えます。
moblogメールパスワード は送信するメールの一行目に書き込む必要があります。(後述)
携帯電話などから送信するmoblogメールのフォーマット
http://coreblog.org/jp/howtos/moblog_howto_html/ を参照してください。
メールサブジェクト
COREBlog2へのエントリのタイトルとして使用されます。
メール本文の一行目
mobologメールパスワードを記述。このパスワードが記述されたメールでないとCOREBlog2へエントリされません。(逆にパスワードが記述されていない関係無いメールが読み込まれてもエントリされない)
メール本文の二行目
カテゴリ名またはカテゴリのIDを空白区切りで記述。空白の場合は moblog というカテゴリが割り当てられます。
メール本文の三行目以降
エントリの本文として使用されます。
メールに添付された画像
エントリ上に表示されます。
気がついたこと
カテゴリについて
スクリプトを実行する前に moblog というカテゴリの作成をしておく必要があります。
POP認証の違い
moblog.pyはAPOP認証を前提としているようです。APOP認証に対応していないメールサーバで使用する場合は以下のような修正が必要でした。(Yahooのメールアカウントでは修正が必要)
〜 省略 〜
#
# Please set some information,(host of mail server,etc) to use
#
import poplib
s = poplib.POP3('メールサーバ')
# s.apop('popアカウント名','popパスワード')
s.user('popアカウント名')
s.pass_('popパスワード')
〜 省略 〜
ボーダフォン(902T)での問題
i-modeでエントリしているときは問題なかったのですが、ボーダフォン(902T)ではうまくエントリすることができないことに気づきました。ボーダフォンの仕様なのか902T特有の事なのかは不明です。
902Tから送信されているメールを調べてみると、一行目が空白になっていることがわかりました。とりあえず今は 'moblogパスワード` を `\nmoblogパスワード` と頭に `\n` を付ける修正でエントリできるようになりました。私はカテゴリの指定を使わないので、この修正でカテゴリの指定が正しく処理されるかは未検証です。逆にこの修正をおこなうとi-modeからのエントリはできなくなっていると思われます。
メールアカウントからメールが読み出された後
メールが読み出された後は、メールサーバから削除されます。moblogのエントリと関係なくメールは 全て削除されてしまう ようなので専用のメールアカウントを準備した方がいいでしょう。
エントリされる基準(と思われること)
moblogパスワードが正しく、同時に画像が添付されている事。(パスワードが正しくても画像が添付されていないとエントリされないようです)
その他
パスワードが正しくなくても画像が添付されていれば、画像だけはimageディレクトリに保存されるようです。つまりエントリと関係なくても、画像が添付されたメールがpopで読み出されると画像だけは転送される事になります。この点は注意したほうがいいでしょう。
それから?
以上でmoblogエントリが可能になったはずです。 moblog.py を実行してみましょう。うまく動作しているようならcronなどで設定し、自動的にメールを取得しCOREBlog2へエントリされるように調整してmoblogを楽しみましょう!
上記スクリプトでエントリされた、このサイトのCOREBlog2 moblogカテゴリ を参照してみてください。(現在はアクセスできない)