概要
XSERVER のレンタルサーバー上で、メールの受信をトリガーにして処理を起動する方法。
今回は Python3 のプログラム test.py を起動する例を紹介する。
環境
- XSERVER
-
Python3.4.9 (デフォルトでインストールされているもの)
手順
トリガーの設定
トリガーの設定はコントロールパネルの転送設定から行う。
「処理方法 (宛先)」にメールアドレスの代わりに起動するスクリプトを書く。
| /usr/bin/python3 /home/ryoblog/test.py
| の直後は半角スペース
コントロールパネルを使わずに .filter に直接記述する方法も可能。
if ( /^To: .*ryo.*/:h ) { cc "| /usr/bin/python3 /home/(username)/test.py" }
これでメールの受信時に test.py が起動され、メールの内容が標準入力から渡される。
test.py の用意
標準入力の内容を mail.txt に保存するだけのテストスクリプト。
import sys stdin = sys.stdin.readlines() with open("/home/(username)/mail.txt", "w") as f: f.write(''.join(stdin))
テスト
XSERVER のメールアドレスにメールを送り、ホームディレクトリに mail.txt が作成されていて、その内容がメールデータなら OK。
Return-Path: <ryo@xxxxx> Delivered-To: xxxxxx@xxxxx.xsrv.jp Received: from xxxxx.xserver.jp (xxxxx.xserver.jp [xxx.xxx.xxx.xxx]) by xxxxx.xserver.jp (Postfix) with ESMTP id 76B28380A59006 for <xxxxx@xxxxx.xsrv.jp>; Mon, 20 May 2019 08:56:35 +0900 (JST) Received: from xxxxx.xserver.jp (xxx.xxx.xxx.xxx) by xxxxx.xserver.jp (F-Secure/fsigk_smtp/521/xxxxx.xserver.jp); Mon, 20 May 2019 08:56:35 +0900 (JST) X-Virus-Status: clean(F-Secure/fsigk_smtp/521/xxxxx.xserver.jp) MIME-Version: 1.0 From: <ryo@xxxxx> Date: Mon, 20 May 2019 08:56:23 +0900 Message-ID: <CALty-frQKGaTUU=9Ku1JC-BDy_=QH4QnwV-hOaA9_AYwu3d6Wg@mail.gmail.com> Subject: =?UTF-8?B?44OG44K544OI44K/44Kk44OI44Or?= To: xxxxx@xxxxx.xsrv.jp Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 XSRV-Filter: xxxxx@xxxxx.xsrv.jp 44OG44K544OI5pys5paH6ZaL5aeLDQrjgYLjgYLjgYLjgYLjgYLjgYLjgYINCuOBiuOBiuOBiuOB iuOBiuOBiuOBig0K44OG44K544OI5pys5paH57WC5LqGDQo=
コメント