Haineko

 view release on metacpan or  search on metacpan

README-JA.md  view on Meta::CPAN

     _   _       _            _         
    | | | | __ _(_)_ __   ___| | _____  
    | |_| |/ _` | | '_ \ / _ \ |/ / _ \ 
    |  _  | (_| | | | | |  __/   < (_) |
    |_| |_|\__,_|_|_| |_|\___|_|\_\___/ 
    HTTP   API  into     ESMTP
                                    
English version of README is [README.md](https://github.com/azumakuniyuki/Haineko/blob/master/README.md)

Hainekoとは何か?
=================

Haineko(はいねこ)はブラウザやcurl等HTTPクライアントからJSONでメールを送信する為
のリレーサーバとして、Perl+Plack/PSGIアプリケーションとして実装されています。

Hainekoに対してJSONで記述されたメールのデータをHTTP POSTで送信すれば、外部のSMTP
サーバやメールクラウド等にリレーする事が可能です。

HainekoはPerl 5.10.1以上がインストールされている下記のOSで動作します。

* OpenBSD
* FreeBSD
* NetBSD
* Mac OS X
* Linux

リレー可能なメールクラウドの一覧
--------------------------------

* [SendGrid](http://sendgrid.com) - lib/Haineko/SMTPD/Relay/SendGrid.pm
* [Amazon SES](http://aws.amazon.com/ses/) - lib/Haineko/SMTPD/Relay/AmazonSES.pm
* [Mandrill](http://mandrill.com) - lib/Haineko/SMTPD/Relay/Mandrill.pm


必要な環境と構築方法について
============================

動作環境
--------

* Perl 5.10.1 or later

依存するPerlモジュール
----------------------

Hainekoは以下のモジュールに依存しています:

* Archive::Tar (core module from v5.9.3)
* __Authen::SASL__
* __Class::Accessor::Lite__
* __Email::MIME__
* Encode (core module from v5.7.3)
* File::Basename (core module from v5)
* File::Copy (core module from v5.2)
* File::Temp (core module from v5.6.1)
* __Furl__
* Getopt::Long (core module from v5)
* IO::File (core module from v5.3.7)
* IO::Pipe (core module from v5.3.7)
* __IO::Socket::SSL__
* IO::Zlib (core module from v5.9.3)
* __JSON::Syck__
* MIME::Base64 (core module from v5.7.3)
* Module::Load (core module from v5.9.4)
* __Net::DNS__
* Net::SMTP (core module from v5.7.3)
* __Net::SMTPS__
* __Net::CIDR::Lite__
* __Parallel::Prefork__
* __Path::Class__
* __Plack__
* __Router::Simple__
* Scalar::Util (core module from v5.7.3)
* __Server::Starter__
* Sys::Syslog (core module from v5)
* Time::Piece (core module from v5.9.5)
* __Try::Tiny__

リレー時のBASIC認証を使用する場合
---------------------------------

Hainekoにメールデータを渡す前にBASIC認証を必要とする場合は次のモジュールも必要
になります。

* __Crypt::SaltedHash__
* __Plack::MiddleWare::Auth::Basic__

Haineko::SMTPD::Relay::AmazonSESを使用する場合
----------------------------------------------

もしもHaineko::SMTPD::Relay::AmazonSESを使う場合は下記のモジュールもインストール
してください。

* __XML::Simple__ 2.20 以降

ソースコードの取得
------------------

    $ cd /usr/local/src
    $ git clone https://github.com/azumakuniyuki/Haineko.git

A. CPANからインストール(cpanmを使って)
--------------------------------------

    $ sudo cpanm Haineko
    $ export HAINEKO_ROOT=/path/to/some/dir/for/haineko
    $ hainekoctl setup --dest $HAINEKO_ROOT
    $ cd $HAINEKO_ROOT
    $ vi ./etc/haineko.cf

    And edit other files in etc/ directory if you needed.

Run by the one of the followings:

    $ plackup -o '127.0.0.1' -p 2794 -a libexec/haineko.psgi
    $ hainekoctl start --devel

B. ソースコードのディレクトリで直接実行
---------------------------------------



( run in 1.341 second using v1.01-cache-2.11-cpan-98e64b0badf )