spfetch

Eml2Imapへ戻る

spfetch とは

POP3サーバからメール受信を行い、メッセージをIMAP4ホストへアップロードする PHPスクリプトです
SPモードメールがPOP3受信可能になったので作ってみました. PHP環境やPEARライブラリが必要です
SMS受信をトリガーに動作させたりします

動作例) spモードのPOP3サーバから、GmailのIMAP4サーバとかです
メール受信(サーバ側)

端末でSMS受信

各種アプリによるステータスバー表示

Tasker のステータスバーイベント

Tasker の HTTP Post アクション

spモードPOP3 → Gmail ←ここ

免責と配布

このスクリプトを利用して起きたいかなる損害も作者は負いません. 改変や配布は自由です.
設置方法や使い方等のご質問には、原因が広範囲に及ぶ恐れがありますので、回答できません. 意味のわからない方は使わないで下さい.

動作環境

注意事項

更新履歴

ダウンロード

spfetch.zip

構築方法抜粋

PEARのインストール

  1. go-pear.phpをダウンロードして、サーバ上に配置
  2. インストール(インストールしたパスは .htaccess 等でセキュリティをかけておく)
  3. インストールしたパスを、HTTPで開く
  4. 「Search package by name」から POP3 を検索して Net_POP3 をインストール
  5. 「Search package by name」から IMAP を検索して Net_IMAP をインストール
  6. php.ini にインストールした PEAR のパスを追加
    さくらの場合、コントロールパネル-PHP設定の編集 からこんな感じ
    include_path=".:/home/USER_NAME/www/INSTALL_DIR/PEAR"

    うまく動かない場合は、spfetch.php の include パスをフルパスで書いてみたりする
  7. ラベルにASCII以外(全角文字など)を使う場合、PEAR/Net/IMAPProtocol.php 150行目あたり
    var $_useUTF_7 = true; を false へ変更

spfetch.php の設置

  1. ダウンロード
  2. 適当な場所に解答・設置(認証くらいはかけておいたほうがよいかも)
  3. 同封の index.php を開いて、必要項目を入力POSTして、動作確認

アカウント情報は spfetch.php へ直接記述する方法と、POSTする方法があります.
POSTを利用することで、サーバにアカウント情報を置く必要がなく、複数アカウントでも利用可
SSLを利用して POST を行えば経路上をクリアテキストが通過するのも防ぐことができます.

Android Tasker の Action 設定

Server
hostname.com とか
user:pass@hostname.com ←認証かけているとき
https://user:pass@hostname.com ←SSLで認証かけているとき
Path
パス/spfetch.php
Data
sp_user=pop3アカウント
sp_pass=pop3パスワード
gm_user=imapアカウント@gmail.com
gm_pass=imapパスワード
gm_label=INBOX

spモードメール/コミュニケーズ

標準アプリが、受信通知のSMS後に POP3サーバからメッセージを削除してしまうので、ダウンロードしない設定等の設定が必要です.