update:
© 2004 OHKUBO Masahiko <mah@remoteroom.jp>
clippic は,iショット (NTT DoCoMo)・写メール (vodafone)・フォトメール (au) など,カメラ付き携帯電話で撮った画像を,簡単にウェブ公開するためのプログラムセットです。
とても大げさにいうと ヤプース! (yapeus) を自前で構築していくものです。掲示板よりも写真日記帳のような,個人寄りのイメージ。私は 携帯カメラ便り で使っています (J-P51 からメールで更新中)。
次の二つのプログラムが連携して働きます。
1〜2 は clippic_mail.pl/clippic_mail.exe,3〜6 は clippic_list.cgi の特徴です。
配布アーカイブ最新版をダウンロードしてください。最新版のファイルサイズは 1MB 弱です。
| 最新版 | 過去版 | |
|---|---|---|
| zip 形式 | clippic_20040313.zip | 貯蔵庫 に置いています。 |
| tar.gz 形式 | clippic_20040313.tar.gz |
clippic はフリーウェアです。利用に際して,ユーザが具体的な対価を支払う義務はありません。
このプログラムを使用することにより生じた損害について,作者はいかなる理由においても責任を負いません。ユーザの責任においてお使いください。また,作者にバージョンアップを続ける義務はありません。
記事掲載・書籍収録の際の事前連絡は必要ありません。事後にでもご連絡いただけたら幸いです。
どちらのプログラムも,メールサーバに POP アクセスし,ウェブサーバに FTP アクセスします。
Perl (5.004 以上) がインストールされた,CGI プログラムが実行可能なウェブサーバが必要です (自宅サーバや,自作 CGI プログラムを動作させることができるプロバイダのサーバなど)。
ダウンロードしたアーカイブを展開すると,以下のファイルが出てきます。
これらを二カ所に分けて設置していきます。
| ファイル・ディレクトリ名 | 内容 |
|---|---|
| clippic_mail.pl | clippic のメール処理プログラム (clippic_mail.exe は Windows 用実行ファイル) |
| clippic_mail.exe | |
| clippic_mail_user.cgi | clippic_mail の設定ファイル |
| clippic_mail_user_ssi.txt | clippic_mail がウェブサーバに転送する SSI 用ファイルのテンプレート |
| clippic_list.cgi | clippic の画像一覧 CGI プログラム |
| clippic_list_user.cgi | clippic_list の設定ファイル |
| clippic_list_user.html | clippic_list が生成する画像一覧ページのテンプレート |
| clippic_list_user_popup.html | clippic_list が生成する画像ポップアップページのテンプレート |
| clippic_list_user.css | 画像一覧ページ・画像ポップアップページに用いる CSS ファイル |
| clippic_common.pl | clippic プログラム共有ライブラリ |
| readme_sjis.txt | 説明書き |
| Net/* | 展開状態の Net モジュール |
| jcode.pl | 日本語文字コード変換ライブラリ jcode.pl © 1995-2000 Kazumasa Utashiro (一次配布元) |
| mimer.pl, mimew.pl | 展開状態の mime_pls |
| archive/mime_pls202.tgz | MIME エンコード・デコードライブラリ mime_pls アーカイブ © 1993-94,1997 Noboru Ikuta (一次配布元) |
| archive/libnet-1.17.* | Net モジュールアーカイブ © 1996-2000 Graham Barr (一次配布元) |
任意のマシン (自宅サーバや PC など) に下記のファイルをこれから設置していきます。
| ファイル・ディレクトリ名 | 推奨パーミッション | 設定・編集の必要 |
|---|---|---|
| clippic_mail.pl | 744 (-rwxr--r--) | あり |
| clippic_mail_user.cgi | 600 (-rw-------) | あり |
| clippic_mail_user_ssi.txt | 600 (-rw-------) | お好みで (特殊タグ) |
| clippic_common.pl | 644 (-rw-r--r--) | - |
| Net/* | - | - |
| jcode.pl | 644 (-rw-r--r--) | - |
| mimer.pl, mimew.pl | 644 (-rw-r--r--) | - |
もし Windows マシン上で実行するのであれば,下記のファイルを設置していきます。
| ファイル名 | 設定・編集の必要 |
|---|---|
| clippic_mail.exe | - |
| clippic_mail_user.cgi | あり |
| clippic_mail_user_ssi.txt | お好みで (特殊タグ) |
関係するファイルを以下のように編集します。
なお,clippic での「メール画像ファイル」というのは,メールに添付されていた画像ファイルそのものを,「メールテキストファイル」というのは,clippic_mail.pl/clippic_mail.exe が生成するメールヘッダ情報と本文を収めたテキストファイルを指します。
編集し終わったら,clippic_mail を動作させるマシンに clippic 用のディレクトリを作成して,clippic_mail の実行権限でそのディレクトリに書き込みできるように,ディレクトリのパーミッションを変更します (clippic_mail はログファイルを生成するので)。
そしてファイルを転送し,必要とあれば各ファイルのパーミッションを推奨のものに合わせておいてください。
ウェブサーバの任意の場所に,下記のファイルをこれから設置していきます。
| ディレクトリ名 | ファイル名 | 推奨パーミッション | 設定・編集の必要 |
|---|---|---|---|
| (任意の名前) | - | 777 (drwxrwxrwx) | - |
| - | clippic_list.cgi | 755 (-rwxr-xr-x) | あり |
| - | clippic_list_user.cgi | 644 (-rw-r--r--) | あり |
| - | clippic_list_user.html | 644 (-rw-r--r--) | お好みで (特殊タグ) |
| - | clippic_list_user_popup.html | 644 (-rw-r--r--) | お好みで (特殊タグ) |
| - | clippic_list_user.css | 644 (-rw-r--r--) | お好みで |
| - | clippic_common.pl | 644 (-rw-r--r--) | - |
| - | jcode.pl | 644 (-rw-r--r--) | - |
関係するファイルを以下のように編集します。
編集し終わったら,clippic_list を動作させるマシンに clippic 用のディレクトリを作成して,clippic_list.cgi の実行権限でそのディレクトリに書き込みできるように,ディレクトリのパーミッションを変更します (clippic_list.cgi はテンプレートのキャッシュファイルを生成するので)。
そしてファイルを転送し,必要とあれば各ファイルのパーミッションを推奨のものに合わせておいてください。
なお,CGI プログラム・ファイルに設定すべきパーミッションは,ウェブサーバの設定によって異なってくる場合があります。 suEXEC 機構を使用しているウェブサーバで clippic_list.cgi を動作させる場合は,上記の推奨パーミッションの「755」を「704」や「701」に,「644」を「604」や「600」に置き換えて設定してみてください (自信なし)。
メーラでの通常のメールチェックなどにより,メールサーバからメールが削除されてしまった後は,clippic はメールを取得できませんのでご注意ください。
clippic_mail.pl/clippic_mail.exe が定期的に起動する仕掛けをしておくと,「ぽちぽちっ」と携帯電話からメール送信した画像が自動的にウェブサーバにアップロードされることになります。ウェブ更新が大変に楽ちんです。
ではとりあえず,以上です。
現在ご覧いただいているこのページです。URL は http://mah.pobox.ne.jp/clippic.shtml です。
まず最初に,Net モジュールを利用している実用すくりぷとん全般に関係する FAQ (common_N) を示します。
スクリプトを実行して次のようなエラーが表示される場合があります。
これは,スクリプトのアーカイブに同梱している Net モジュールと,ユーザの Perl 実行環境の相性があわない場合に発生するエラーのようです (私の環境では再現できないので検証不足)。
Can't declare undef operator in my at Net/Cmd.pm line 500, near ") =" BEGIN failed--compilation aborted at Net/POP3.pm line 12.
Can't declare undef operator in my at Net/Cmd.pm line 500, near ") =" BEGIN failed--compilation aborted at Net/SMTP.pm line 16.
Can't declare undef operator in my at Net/Cmd.pm line 500, near ") =" BEGIN failed--compilation aborted at Net/FTP.pm line 20.
エラーが起きないようにするためには,Net モジュールに含まれる Cmd.pm というファイル (Net/Cmd.pm) の500行目をたとえば以下のように書き換えるとよいようです (「500行目」という場所は Net/Cmd.pm のバージョンが 2.21 の場合)。
500: my (undef,$len,$offset) = @_;
500: my ($tmp,$len,$offset) = @_;
なお,Net モジュール ver.1.13 (Net/Cmd.pm のバージョンは 2.23) では上記の該当箇所で undef が使われなくなっています。[2003/03/15]
スクリプトを実行して次のようなエラーが表示される場合があります。「Net::FTP::I」の I は A など,他の場合もあり得るかもしれません。
これは,スクリプトのアーカイブに同梱している Net モジュールと,ユーザの Perl 実行環境の相性があわない場合に発生するエラーのようです (私の環境では再現できないので検証不足)。
Can't locate object method "new" via package "Net::FTP::I" at Net/FTP.pm line 915.
エラーが起きないようにするためには,Net モジュールに含まれる FTP.pm というファイル (Net/FTP.pm) の905行目を以下のように書き換えるとよいかもしれません (「905行目」という場所は Net/FTP.pm のバージョンが 2.67 の場合)。
905: eval "require " . $pkg;
905: require $pkg;
お使いのメールサーバが,メール転送設定ファイル (.forward, .qmail など) から任意のプログラムを起動できる設定であれば,clippic_mail を直接設置することも可能です。
その際は clippic_mail にコマンドラインオプション -mode=stdin (メールを標準入力から取り込む) を付けて,起動してください。
\ohkubo, "| /home/ohkubo/script/clippic/clippic_mail.pl -mode=stdin"
| /home/ohkubo/script/clippic/clippic_mail.pl -mode=stdin ./Maildir/
メールのソースすべて (メールヘッダ + 本文) がお手元にあるのならば,携帯電話から再送せずとも clippic へメールのインポートが可能です。
たとえば下記のようにして,コマンドライン上で,clippic_mail の標準入力にメール一通分のソースすべてを流し込んでください。
$ ./clippic_mail.pl -mode=stdin < oldmail.txt
clippic_mail では,メール画像・テキストファイルに関連づけられる日付は,処理するメールのメールヘッダ Date: 行から決定されます (clippic_mail の実行日時ではありません)。よって,過去のメールはその当時の日付を保ったままインポートされます。
まず最初に画像一覧ページにて,消したい画像が何月のものであるかと,画像のファイル名を調べておきます。ここでは仮に「2003年1月のもの」「20030127032703_12345-01_sample.jpg」だとしましょう。
そして次の二つの操作をすると,画像一覧から該当の画像を消すことができます。
当方は Opera (Windows 版) Ver.6.05 でこの現象を確認しました (Ver.7.03 では問題ないようです)。
回避方法の一つとしては,CSS ファイル clippic_list_user.css の中の TABLE.mail セクションにある「float: left;」という指定を外すのが簡単です。ただしこの場合,どのブラウザで閲覧しても,画像は縦一列で表示されることになります。
Yahoo! Japan Groups を利用して clippic のユーザ ML を作りました。
ヴァージョンアップの告知,質問のやりとりなどをこの ML を通じて行いますので,よかったらどうぞ参加してください。メッセージは「公開する」設定 (誰でも過去ログを閲覧できる) にしています。この点はご注意ください。
□ は原因調査中・対応考え中のものを,■ は今後のリリースで対応するものを示しています。
※ clippic のあゆみ を参照してください。
※ clippic のあゆみ を参照してください。
※ clippic のあゆみ を参照してください。
※ clippic の特殊タグ を参照してください。
携帯電話の機種を選ばない,「メールでウェブ更新する方法」をここでは扱っています。
その他には,ブラウザのフォーム (type="file") を使って画像を CGI プログラムにアップロードする方法があります。