rss2imap Documentation(text)

$Id: index.txt,v 1.2 2005/09/19 09:07:26 mumumu-org Exp $

rss2imap Ȥ

rss2imap  RSS (RDF Site Summary) ۿƤ륵 IMAP
Ф˥᡼ȤۿġǤ.
HTML 饤ɽǤ᡼ȶ˻ȤȤ, RSS Reader Τ褦
ФǻȤȤǤޤ. ޤ, δ IMAP Ԥ, IMAP
̤ɴΰ층ȤäǽͭѤǤޤ.

ܼ


* ʵǽ
* ѹ
* ꡼󥷥å
* 
* 󥹥ȡ
* ȤꤢưƤߤ
* RSS_ȥꥹȤԽ
* ǡ
* üե
* ¾
* 줫βͽ(̤ͥ¾⤤ν)
* ץ
* ռ


ʵǽ


* HTML Υ饤ɽλٱ (Thunderbird )
* IMAP ȤȤˤä̤ɵΰ층ǽ. ʣ饤Ȥλ
* IMAP over SSLб
* RSS Υȥ IMAP եưŪ
* ȤΥåץǡȤΤ, ᡼ ѹ̤ɤˤ.
  ǧȤѲǽ.
* Ȥ hatena ƥʤΥݡȤǽ.
  ᡼åȥȹγǧƱ
* ŤϼưŪ˺
* channel ⡼ɤȤưȤ, ʰץƥʤȤưǽ
* If-Modified-Since ȤȤ̵̤ʥȥեåڸ
* ̤ɴѤΥåʤ
* ǡ. cron ʤƤư.


ѹ


* version 0.2 : IMAP over SSLбѥåߡ
  Term::ReadPassword󥹥ȡ뤵ƤʤƤư褦ˤ
  ǧڤ˼ԤˡAuthentication Failure.׵ڤ³
  ɽ褦ˤ
  Encode.pmAppropriate Encoding not found!פȥ顼Ϥ
  Х˻н
* version 0.13: ե̾ʸˤʤХ
* version 0.12: expire-unseen ѥ᥿ưդˤʤäƤΤ
* version 0.11: ʥХν (sleep Ƥʤ, ˵ư֤ˤʤäƤ)


꡼󥷥å

Thunderbird ȤäǤ.
Thunderbird  blog ǽȤۤƱ¸Ǥ, IMAP
ˤ̤ɴǽǤ.

ʪscreenshotǥ쥯ȥ



* rss2imap  GNU_General_Public_Licenseۤե꡼եȥǤ.
* ǿСsourceforge.jpɲǽǤ


󥹥ȡ


* Perl 5.8.0 ʾɬܡ
* ɬܤPerl⥸塼

  o Mail::IMAPClient
  o Encode
  o XML::RSS
  o LWP::UserAgent
  o Term::ReadPassword
  o Jcode

* 侩Perl⥸塼

  o Term::ReadPasswordɬܤǤϤޤ󤬡󥹥ȡ뤷ʤȥ
    ɤϻˡʸ󤬥󥽡ɽޤʷٹ𤬽Фޤ

* ɬܤǤϤʤPerl⥸塼

  o IO::Socket::SSLIMAP over SSLѤȤΤɬפǤ

* IMAP ФưƤۥ (dovecot, courier-imap ǳǧѤ)
* HTMLΥ饤ɽǽʥ᡼
  Thunderbird, Outlook Express, Becky! 

Perl ⥸塼, perl -MCPAN -eshell
Ȥäƻ˥󥹥ȡ뤷Ƥ.
rss2imap , ۤȤɤ UNIX ưȻפޤ.
Windows Ǥưϼ㴳ѹɬפǤ礦.

ȤꤢưƤߤ

ޤ, ץ RSS URL ꥹ (sample.url) ˤĤưƤߤޤ礦.
-o ץȤǡ󲽤Ƥ뤳Ȥ˸ղ.

* courier-imap ȤäƤ (prefix  INBOX ˤ)

    ./rss2imap -o -s IMAP -u 桼̾ -p INBOX sample.url

* dovecot ȤäƤ, prefix  nil Ǥ褤 (default ư)

    ./rss2imap -o -s IMAP -u 桼̾ sample.url

* IMAP over SSLȤȤϡ-
  SץꤷޤݡֹѹɬפǤ礦

    ./rss2imap -o -s IMAP -S -P 993 -u 桼̾ sample.url


᡼餫 IMAP Ф˥ƤߤƤ. RSS
Ϥޤե, žƤȻפޤ.
IMAPФΥǥեͤ localhost, 桼̾Υǥեͤ Ķѿ USER
ͤѤޤ.

RSS ȥꥹȤԽ

RSS ΥȤξե˵Ҥޤ.
ȤˤäŬʥ롼פޤ. 롼פϸͭ RSS 
URL ꥹȤޤ. ƥ롼פδ֤ˤ1԰ʾΥڡƤ.

  # 롼1 θͭ
  1: 1
  2: 2
  ..
  http://foo1/foo.rdf
  http://bar1/bar.rdf

  # 롼2 θͭ
  1: 1
  2: 2
  ..
  http://foo2/foo.rdf
  http://bar2/bar.rdf

ܤˤϰʲޤ.
 _____________________________________________________________________________
|̾_______|ͤξ_______|___________________________________________|
|             |               |IMAP Υե̾Ǥ.                         |
|folder       |ե̾     |Υեۿޤ.                    |
|             |               |ǥեȤ RSS.%{channel:title} ȤʤäƤ,|
|_____________|_______________|ҤޥȤ_ưŪޤ._______|
|             |               |items: RDF  item 1ĤŤĤ                   |
|             |               |1ĤΥ᡼Ȥޤ (ǥե)       |
|             |               |channel: ġ item ̵뤷, RDF       |
|type         |(items|channel)|(channel) 1ĤΥ᡼Ȥޤ.       |
|             |               |ȤιΤߤΤꤿ channel         |
|             |               |Ѥޤ.                                    |
|_____________|_______________|ȤΥƥʤΤ褦ư¸Ǥޤ.____|
|             |               |yes: եΥ᡼RSS item              |
|             |               |Ʊޤ. RSS Ͽ ʤ item |
|             |               | ե˸ĤȺޤ.           |
|sync         |(yes|no)       |RSS ǥȤΥ󥭥󥰤ۿƤ, ༡ |
|             |               |item Ƥ , Hatena         |
|             |               |ƥʤΤ褦ʹȥꥹȤΤ褦ʾ |
|             |               |Ʊäۤʾ礬ޤ.        |
|_____________|_______________|no:_Ʊޤ_(ǥե)__________________|
|             |               |N item ޤ. -                 |
|expire       | (N)       |1 Ȼꤹ뤳Ȥ expire ư Ǥޤ|
|_____________|_______________|(ǥե)___________________________________|
|expire-unseen|(yes|no)       |yes: expire λ, ̤ɥ᡼ޤ     |
|_____________|_______________|no:_̤ɥ᡼Ϻޤ_(ǥե)______|
|             |               |expire λ,                                 |
|expire-folder|ե̾     |ǤϤʤꤵ줿ե˰ưޤ.    |
|             |               |ǥեȤ ̤ȤʤäƤ, ޤ.   |
|_____________|_______________|ޤ,_ҤޥȤȤǤޤ_______|
|             |               |᡼ Subject: إåꤷޤ.          |
|subject      |ʸ         |̾ϥǥեΤޤޤǤޤޤ.            |
|_____________|_______________|ޤ,_ҤޥȤȤǤޤ_______|
|             |               |᡼ From: إåꤷޤ.             |
|from         |ʸ         |̾ϥǥեΤޤޤǤޤޤ.            |
|_____________|_______________|ޤ,_ҤޥȤȤǤޤ_______|

ޥ folder, expire-folder, subject, from ͤ rss
ƤưŪ뵡ǽǤ.
Ūˤϰʲޤ.ޥ줾ʸִޤ.
 _________________________________________________________________________
|ޥ________________|______________________________________________|
|%{host}_______________|ۥ̾__________________________________________|
|%{user}_______________|桼̾__________________________________________|
|%{rss-link}___________|RSS__URL________________________________________|
|%{last-modified}______|Ф֤_Last-Modifed_إå__________________|
|%{item:link}__________|RSS_item__link____________________________|
|%{item:title}_________|RSS_item__title___________________________|
|%{item:description}___|RSS_item__description_____________________|
|%{item:dc:date}_______|RSS_item__dc:date__(̤ξ⤢)___|
|%{item:dc:subject}____|RSS_item__dc:subject__(̤ξ⤢)|
|%{item:dc:creator}____|RSS_item__dc:creator__(̤ξ⤢)|
|%{channel:link}_______|RSS_channel__link_________________________|
|%{channel:title}______|RSS_channel__title________________________|
|%{channel:description}|RSS_channel__description__________________|
|%{channel:dc:date}____|RSS_channel__dc:date__(̤ξ⤢)|

, type: channel Ȼꤷ, %{item:*} ͤ %{channel:*} 
ͤƱˤʤޤ.
ǥեȤȤưʲΤ褦ˤʤäƤޤ

  subject:   %{item:title}
  from:      <%{channel:title}>

㤨, ʲΤ褦˵Ҥ channel  title
ȤäƥեưŪޤ.

  folder: RSS.News.%{channel:title}

ʲǤ.

  # ϤƤʥƥ.
  # ƥʤƤȥեΥ᡼Ʊ.
  folder: RSS.Anntena
  expire: 3
  sync: yes
  http://a.hatena.ne.jp/foo/rss

  # եȤʬ Blog
  # Friend
  folder: RSS.Blog.Friend
  expire: 5
  http://tahoo.org/~taku/diary/cl.rdf
  http://nais.to/~yto/clog/cl.rdf

  # IT
  folder: RSS.Blog.IT
  expire: 10
  http://blog.japan.cnet.com/umeda/index.rdf
  http://kimuratakeshi.cocolog-nifty.com/blog/index.rdf

  # Idol
  folder: RSS.Blog.Idol
  expire: 15
  http://manabekawori.cocolog-nifty.com/blog/index.rdf
  http://rosa.cocolog-nifty.com/blog/index.rdf

  # ʬ Wiki ιΤꤿ
  # type: channel, ʰץƥʤȤư
  folder: RSS.Wiki
  type: channel
  http://tahoo.org/~taku/wiki/wiki.cgi?action=RSS
  http://cl.naist.jp/index.php?cmd=rss

  # ˥塼ۿȤΥȥ뤫ե̾ư
  # 2 ֤εĤ, ̤ɤǤ.
  folder: RSS.News.%{channel:title}
  expire: 2
  expire-unseen: yes
  http://www.atmarkit.co.jp/rss/rss2dc.xml
  http://www3.asahi.com/rss/index.rdf
  http://japan.cnet.com/rss/index.rdf
  http://japan.linux.com/japanlinuxcom.rdf
  http://slashdot.jp/slashdotjp.rss


ǡ

ưǧǤ, Ūư褦˥ǡ󲽤ޤ. -
o ץϤƵưޤ.

  ./rss2imap -s IMAP -u 桼̾ -p INBOX sample.url

ǥեȤ 60ʬȤ˹ȤԤޤ. ֤ѹ -
i ץȤޤ. (30ʬȤѹ)

  ./rss2imap -s IMAP -u 桼̾ -p INBOX -i 30 sample.url

RSS ΥȥꥹȤ, ۿϻɤߤޤޤ.
Τ, rss2imap ư˥ȥꥹȤѹƤѾϤۤȤ
ꤢޤ.

üե

rssimap  RSS.last-modified Ȥüեޤ.
 RSS κǽ(last-modified) 1᡼Ȥ¸,
̵̤ʹȤ뤿˻Ȥޤ.
⤷Ū˹Ԥ, ᡼᡼餫Ƥ
ե̾ѹ -m ץȤޤ.

  ./rss2imap -m FOO.BAR.RSS.last-modified


¾

Proxy ФѤϰʲΤ褦 --proxy ץȤޤ.

  ./rss2imap --proxy=http://foo.com:8000/ -s IMAP -u 桼̾ sample.url

CRAM-MD5 ǧڤԤ -c ץȤޤ.

  ./rss2imap -c -s IMAP -u 桼̾ sample.url

Debug ⡼ (-d) ǵư, IMAP ФȤΤȤ꤬Ϥޤ.

  ./rss2imap -d -s IMAP -u 桼̾ sample.url

ǥեͤѹϥ $DEFAULT_GLOBAL_CONFIG Խ
.

      our $DEFAULT_GLOABL_CONFIG = {
  	'user'                 => $ENV{USER},
  	'host'                 =>  "localhost",
  	'port'                 =>  143,
  	'interval'             =>  30,
  	'last-modified-folder' =>  'RSS.last-modified',
  	'prefix'               =>  undef,
  	'cram-md5'             =>  undef,
      };


줫βͽ(̤ͥ¾⤤ν)


* opmlեޥåȤ
  opmlե뤫顢եư롣ǤexportǤ褦ˡ
* ƥȥ⡼ɤǤ
  ߤHTML᡼ۿƤ뤬item,description
  ƥƥȤǥ᡼Ǥ褦ˤ롣
* ܸб
  Ԥrss2imapǤ⤢٤ܸ줬̤ΤΡܸ줬ޤޤ줿ե̾Ȥʸ뤳Ȥ¿ΤʤȤ롣
* եʬΥ
  ľǤեʬΥ롣ޥɥ饤ǥץϤʤƤѹǽˤ롣
* ʣʸ󵻽Ѥ
  ƤƱ⤷ƤȽǤ, Reference:
  إåȤåɤȤƷҤ.
* ʣΥ᡼ץȥؤб
  IMAPΤߤǤʤSMTPˤб᡼ʬʬΥɬפꡣ


ץ

rss2imapforkΡޤϻ褦ʤȤäƤץ
GMailRSS
GmailRSS褦ȤץȤǤʣץȥбGMailΥեޥåȤ˹碌᡼ۿͥ줿¿Ǥ
Feed2gmail
GmailRSSȻ褦ʤȤäƤޤrss2imapforkΤǤʣեޥåȤRSSбGMail˺Ŭ줿᡼ΤȤʤäƤޤ
GMailǴ褦ȤץȤ¿ǤGmailϹǤϤʤΤǡʬδĶ
(IMAPСˤǶ˸¤ޤǹˤʤ뤳ȤܻؤƥɤHack³櫓Ǥ
(; )

ռ

2005ǯ919ꡢrss2imapΥɤϸԤιƣ󤫤mumumuѤsourceforge.jpǴƤޤ餷ɤĺƣ˿դޤ
ǡ󲽤ʬΥɤ, ӻ asamasid 򻲹ͤˤޤ.
-------------------------------------------------------------------------------
     reversethis_->_{gro}_{tod}_{umumum}_{ta}_{umumum}
_SourceForge.jp_
