create new | view all | RSS | FrontPage | search | recent changes

rna - RSSベースのアンテナ「RNA」

diff


RSSベースのアンテナ「RNA」
に関する議論の場です.要望・コメント・不具合報告などお気軽に書きこんでいただければ...

 ***************************************** 
Wiki spamがひどいので,このページを凍結しました。
- 質問・要望等は。[[glucose.jpの掲示板 http://glucose.jp/Zch/]]の中の「RNAスレ」でお願いします.
-ダウンロードはこのページからどうぞ 
 *****************************************

*ダウンロード

-Nightly(開発)版 : [ [[サンプル http://foaf.jp/~msano/rnanightly]] ] [ [[ダウンロード http://foaf.jp/~msano/rnanightly_with_extlib.tar.gz]] ] [ [[説明書 RNA説明書(nightly版)]] ]

-テスト版:Version 2.0b1 (build 041026) [ [[ダウンロード http://www.semblog.org/products/?rna2.0b1.tgz]] ]

-正式版:Version 1.9.2 (build 040208) [ [[サンプル http://www-kasm.nii.ac.jp/~i2k/tmp/rna/]] ] [ [[ダウンロード http://www.semblog.org/products/?rna1.9.2.tgz]] ] [ [[説明書 RNA説明書1.9]] ]

-Version 1.9以降をお使いの方のための[[差分ファイル http://www.semblog.org/products/?rna_patch1.9.2.tgz]]

**過去のバージョン

-正式版:Version 1.9.1 (build 040123) [[ダウンロード http://www.semblog.org/products/?rna1.9.1.tgz]]
-正式版:Version 1.9 (build 040120) [[ダウンロード http://www.semblog.org/products/?rna1.9.tgz]]
-正式版:Version 1.8 (build 1204) [[ダウンロード http://www.semblog.org/products/?rna1.8.tgz]]
-正式版:Version 1.7 (build 1001) [[ダウンロード http://www.semblog.org/products/?rna1.7.tgz]]
-正式版:Version 1.6.1 (build 0917) [[ダウンロード http://www.semblog.org/products/?rna030917.tgz]]
-正式版:Version 1.6 (build 0908) [[ダウンロード http://www.semblog.org/products/?rna030908.tgz]]
-テスト版:Version 1.5 (build 0816) [[ダウンロード http://www.semblog.org/products/?rna030816.tgz]]
-正式版:Version 1.4 (build 0807) [[ダウンロード http://www.semblog.org/products/?rna030807.tgz]]
-開発版:Version 1.3 (build 0731) [[ダウンロード http://www.semblog.org/products/?rna030731.tgz]]
-正式版:Version 1.2 (build 0724) [[ダウンロード http://www.semblog.org/products/?rna030724.tgz]]
-開発版:Version 1.1 (build 0722) [[ダウンロード http://www.semblog.org/products/?rna030722.tgz]]

*ドキュメント

[[RNA説明書]] インストール・設定・カスタマイズ

[[RNA説明書1.9]] ややこしくなってきたので最新版専用のマニュアルを作ります.

[[RNA説明書(nightly版)]] 開発(nightly)版のドキュメントです.[[開発版はこちら http://foaf.jp/%7Emsano/rnanightly/]] 

[[RNA動作環境]] 動作報告にご協力ください.

*RNAとは

RNA は、Webサーバ上で動作する、[[RSSアグリゲータ http://www.google.com/search?q=RSS%83%41%83%4F%83%8A%83%51%81%5B%83%5E&hl=ja&lr=lang_ja]]の一種です。
Perl/CGI で実装されています。
Web上のいろいろなサイトの更新情報を収集する[[アンテナ http://www.google.com/search?q=%83%41%83%93%83%65%83%69&hl=ja&lr=lang_ja]]としての機能が主ですが、[[FOAF http://www.google.com/search?q=FOAF&hl=ja&lr=lang_ja]]技術を用いた、コミュニティ(もしくは知人)ベースの連携機能も有しています。
[[セマンティックウェブ http://www.google.com/search?q=%83%5A%83%7D%83%93%83%65%83%42%83%62%83%4E%83%45%83%46%83%75&hl=ja&lr=lang_ja]] 関連の技術を用いてWeb空間を再編集するというコンセプトのもとに、semblogプロジェクトにより開発されています。

**特徴

-チェックするサイトはRSSで定義(記述用Webインターフェイスを用意)
-アンテナでのチェック結果はRSSとして取得可能
-サイトごとの更新チェックや全ての記事の時系列表示が可能
-テンプレートによるデザインが可能(MovableType風)
-スタイルシートはMovableType互換(制限あり)
-Pure Perlによる実装(expat等に依存しません)
-pingインターフェイスによるアンテナ更新機能
-はてなアンテナとの連携による通常サイトのチェック
-TrackBackの追跡 ([[Trackback-Auto-Discovery http://www.movabletype.org/docs/mttrackback.html#autodiscovery%20of%20trackback%20ping%20urls]] を実装しているサイトのみ)
-クリップ機能
-サイトのリストのOPML書き出し
-OPMLのインポートによるサイトリストの簡易設定
-プラグインアーキテクチャによる拡張
-FOAFを用いた、他のRNAとの連携機能
-などなど


*解決済みの問題点

[[RNA::oldproblems]] こちらに移動.

*要望・コメント・不具合報告

**最新版(RNA 1.9 および 1.9.1 および 1.9.2)に関して

-http://hogehoge.com/index.cgi?rsdなどといった、引数によってRSDファイルを出力するタイプをRNAで認識する事が出来ない




- 複数のはてなアンテナと連携するようにはできないでしょうか?[gp]

- 更新情報を取得するURLとリンク先のURLを別に設定できるようにしてほしいです。現状、フレームページ等の更新情報がうまく取得できていない気がします。[ふじた]


**英語のメッセージ
-pre 2.0英語おかしいぞ (by kawasaki-t)
Refreshing RNA...のところ。せめて、
Please wait 3 seconds for me to back, or click [Back].
It might take a while to check all the sites you've registered.
ではないですか?
あと、一応、外人が使うのも想定しているのかもしれませんが、
ソースコードのコメントがばりばり日本語です。特に、config.pl。
編集時に、コメントが文字化けして偉いことになった。
--こんにちは。とりあえず、Refreshのところのメッセージは修正しました。[msano]


**未読管理
-某所にて「未読」「既読」の管理ができないかという提案.できるのか?[i2k]
--ちゃんとやるなら,リンクにCGIをはさんで,Cookie で情報保存.[msano]
--簡単にやるなら,<a>の href の後ろに,'#20030817100524' などの文字をつけて,a:link と a:visited の色を変えてブラウザをだます.[msano]
--↑後者の意味がイマイチわかりませんでした。既読・未読情報は誰が保持するのですか?保持はしない?[skmt]
--natsumicanとかと同じ方式かと。同じURL相手にでも、更新時刻によって'#20030817100524'などの数字が変化する事で既読、未読を判別。'exsample.html#2003...'とかやった時、'#'以降は実在しなくても(大半のブラウザは)無視するという挙動を利用。保持してるのはブラウザが「そのURLへは行った事があったっけ」という記録ですね。[mia]
--そういう意図です>miaさん [msano]
--理解しました。では、うちら的には前者が使えるっぽいです。(余計なお世話ですが)某hamaさんの研究的にも前者の方がよさげ。また、他の新機能に発展可能なのも良い。が、未読と既読の色分け程度にしか使う気がないのなら、軽いし後者のほうが良いのかも。[skmt]
--ヨタ話ですけど将来的にitemで既読・未読判別できるようになればいいなーとか・・[bmp]

**OPML
-[[OPML]]([[http://www.opml.org/spec]])のインポート.[msano]
--title属性のない<outline> が消える現象に対応済みです.(1.6.1) [msano]
--OPMLについて いっそSite listとかブックマークとか名前を変えてみるとかしたほうがいいような気がします。MTやRadioを使わない人のほとんどはOPMLがどういうものかわからないと思うので。http://scottwater.com/Dottext/ここの使い方とか明確でいいと思うんだけど、参考程度に

**xreaでCwd
-xreaで "rna-load.cgi" を実行すると次のエラーが表示されるとの報告あり.「It might take a while to check all sites you register. opendir(./../../..): Permission denied at lib/RNA.pm line 698」.パーミッションはRNA説明書のとおり,RSSディレクトリ[755] site.rdf[666] *.cgi[755] にして、他はxreaの指定に合わせている.[msano]
--【可能性の低い推測】Cwd::getcwd() が,カレントディレクトリを特定する際に,再帰的に上のディレクトリにさかのぼる処理をしていて,上の方のディレクトリにPermission がない.[msano]
--うーん。(できるなら)`pwd`一発で取得してるらしいなので、そんな処理は、、、どうなんでしょう。Cwdが正しくインストールされていない?とか。なぞです。(なんの訳にも立たない書き込みですみません。) [いしだなおと]
--1.6.1 では,getcwd を使っていました.いしださんのおっしゃる「`pwd`一発で取得」は,cwd()を使うとやってくれるらしいので,次バージョンで使って様子を見ようと思います.[msano]

**RNA Alliance
-「RNA Alliance」おもしろいですね!Dateってなにかなーと思ったら、相手RNAの更新時刻を聞くことだったのですね。自サイト宛てにやってみたら、レスポンスが返るまで1分以上かかるようでした。(アンテナ登録RSSで96、はてなアンテナ連携なし)まだ開発中でしょうけど、時間のかかりそうな処理は、完了を待たずに非同期にレスポンスを返す仕様にする必要があるかも知れませんね。リクエストにコールバック用インターフェイス(XMLRPCサーバURI)が含まれていたら、あとで別便でそちらに返事を返す、とか。#さっそくPingを打てるように改造してみました。見事に更新される…。[いしだなおと]
--RNA Allianceにて[[Ping発信 http://isnot.jp/superrna/rna-alliance.cgi]](FOAFに登録されている他のRNAを遠隔から更新する)できるようにするカスタマイズですが、簡単に[[文書化 http://isnot.jp/?p=SUPER+RNA#p2]]しました。需要としては…RNAハッカー以外には必要とされなさそうなのですけれども。
--いまのところ解説的なものはなく、単に該当部分を抜き出しただけなので、中上級者向けということでお願いします。また、細かいところまで作りこんでいないので、結果画面などはヤッツケです。[いしだなおと]

**直接ローカルのRDFを参照
- ローカルでRSSを生成している時 (しかもそれが大量にあったりすると)、いちいち取得したり登録したりするのはあまり効率的ではないので、直接ローカルのRDFを参照できる設定 (フォルダ単位とか) とかあったらどうでしょうか。[ky]

**サイトリストのTitleを全角で入力すると
- ConfigSitesにて、サイトリストのTitleを全角で入力すると、RNA上では正しく表示されているのですが、MT3で表示する際に(JSテンプレート利用。EncodingパラメータはShift_JIS)サイトリストが文字化けしてしまいます。ちなみに、サイト毎のエントリリストなどは文字化けしないのですが・・・・MT3のEncodingはShift_JISです。
--おそらくは、RNA側で文字コード変換に失敗している可能性があります。RNAのバージョン、RNA設置サーバーのOS、Webサーバー、perlのバージョン、問題となるTitle、について教えていただけますでしょうか。また、MT3以外のHTMLページに取り込んだときも同じ現象でしょうか。可能でしたら、件のMT3とRNAが設置されているサイトのURLも頂けると助かります。[msano]

-[[けんたろさんのRNA1.8 http://antipop.zapto.org/rna/index.html]]をお借りして(勝手に使わせていただきました。感謝します)、自身のRNA(foaf.cgi)宛てにSay Helloしてみました。(2回)すると私のほうのRNAの、Hello from...に現れるのですが、隣の「Add to my FOAF」を押すと、エラーになります。必要に応じて私のところで検証していただいても構いません。[いしだなおと]
//known.txtの内容を書いておきます。⇒削除
--実は、RNA1.9.x と RNA1.8 とでは、foaf.cgi の 「Add to my FOAF」リクエストのフォーマットに互換性が無いのです。ご存知のとおり、RNAではFOAFの取り扱い自体が固まっていない部分があり、あまりバージョン間互換性を考慮していなかったのですが、いささか乱暴だったかもしれませんね。FOAF Trackback の仕様と旧バージョンとの互換性については、ポリシーを明確にする必要があると考えています。 [msano]
--なるほど理解しました。ちなみに確認させていただきたいのですが、1.9では、「Add Friend to my FOAF」実行時にTrackbackチェックありだと、Say Hello相当の動作をして、チェックなしだと相手先への通知はなしということで合っていますか?→私が見る限りそのようです。
---そのとおりです。[msano]
--別のシチュエーションで同様のエラーが起こるケースがありましたので、報告します。今回は、受け側が1.9.1([[環境 http://www.semblog.org/wiki/index.cgi?RNA%c6%b0%ba%ee%b4%c4%b6%ad#i6]])、発信側がnightlyのbuild 040127(040201)([[環境 http://www.semblog.org/wiki/index.cgi?RNA%c6%b0%ba%ee%b4%c4%b6%ad#i5]])です。発信側がイントラネット、つまりPrivate Addressにあるという意地悪なテストです。受け側にはTrackbackが受信されるのですが、hello fromの「Add to my FOAF」を押すと、ネットワーク的に到達できませんのでタイムアウトとなり、前回と同じエラーになりました。NATの中にプライベートのWebサーバーを立てるというケースは、それほど多くないものの十分想定される利用法だと思いますが、いかかでしょうか。[いしだなおと]
 Request failed: at extlib/CGI/Carp.pm line 301.
---なるほど。まず、Private Web サーバへの逆NAT越えは厳しいと考えています(方法があれば教えていただけるとありがたいです)。できたとしても、すべきかどうか疑問です。ただ、状況としては珍しくないので、はからずも発生した場合の、 ユーザへのOutput が「エラー」というのはよくないですね。簡単なattentionくらいはすべきでしょう。helloの送信パターンとしては、
 (1) Private → Global
 (2) Private → Private
 (3) Global  → Global
 (Global → Private は存在しない)
があり、(2)と(3)は問題なく、(1) の状況だけwarningを出すようにすればよいわけですね。たとえば、自分のRNAがGlobalでPrivateから来たhelloに対しては javascript:confirm() するとか。Privateかどうかの判定方法は、FQDNであればresolvableか否か、IPアドレスであれば [[Privateアドレス http://www.atmarkit.co.jp/icd/root/81/5785381.html]] か否か、といったところでしょうか。javascript レベル(かつブラウザ依存でない)だけでできれば楽ですが。。。。 [msano]
---逆のアプローチで、自分がPrivateの場合は Global 向けに hello できない、というのも考えられます。どうするのがシンプルで妥当なのか。。。[msano]
---まず考えたのが、Privateアドレスは有効なURIとして機能するのかという疑問です。この命題が偽であるなら、rdf:resourceなどの値にPriveteアドレスを取ることが適当とはいえないかもしれません。つまり、上の(2)の例、PriveteからPrivateへFOAFを繋げるのもNGといえるかもしれません・・・勉強不足で私には判断できませんですが。たとえば、ノートパソコンを持ち歩いていて、その時々で複数の場所のそれぞれ独立したPrivate空間(しかしIPは重複するかもしれない)に属するとき、あるPrivateアドレスは違う対象を指し示しているかもしれません。
---実体のあるファイルなどの形になる前の段階(known.txtやfoaf.rdfを書き出すとき)に検査するのが妥当ではないかと思います。あるいは通信する前でも検査したほうがいいかもしれません。JavaScriptで対処するソリューションはあまりお勧めでないと思います。実装としては、[[Net::IP::iptype http://search.cpan.org/~manu/Net-IP-1.20/IP.pm#ip_iptype]]のようなものがあるようです。
---FOAFのURIにPrivateアドレスを使用してよいか否かについては、各ユーザに判断をゆだねようかと思います。RNAとしては、Global→Privateという(到達不能な)通信がなるべく起こらないようにしておくくらいが妥当なのではないかと考えています。[msano]

**Edit FOAF
-FOAFにあるsemblog:rnaというプロパティですが、肝心のスキーマが存在しません。スキーマあってのメタデータですから、用意をお願いします。[by [[kota http://d.hatena.ne.jp/kotastyle/]]]
--正直なところスキーマの定義については後手後手にまわっています.現在仕様を策定中ですが,kotaさんのページを参考にさせていただきつつ早急にまとめたいと思います.[i2k]

-FOAF の編集ではなくて,自己紹介のページを編集すると FOAF が生成されるようにしてほしいです.HTML として自己紹介のページを表示できるようにしてほしいです.[おのひろき]
--逆の考えで、RNA FOAFをXHTMLにするXSLTを用意するというのは、どうだろうか?[いしだなおと]
---現状では手が回らなくてFOAF Explorerにまかせるというアプローチを取っています.本来ならRNAのテンプレートシステムでHTMLを生成しなくてはならないのですが.[i2k]
---いや,表示はともかく,「プロフィールの編集」だったり「自己紹介の編集」なら普通の人も設定してみようと思うかもしれないけど,「FOAFの編集」だとごく一部のマニアしか編集しないのでは?せっかく FOAF トラックバックっていう楽しそうな仕組みがあるのですから,普通の人が試してみようとおもうような形を目指して欲しいです.

-FOAFにおいて、「未知のタグを消去する不具合を解消」とありましたが、これはユーザーが手動で追加した要素を破壊しないという意図でしょうか?一度foaf.rdfをダウンロードして、手で要素(foaf:logo)を追加してアップロード。その後Edit FOAFで編集という手順を試してみたところ、foaf:logoが消えました。全ての語彙を試したわけではないですが。
--まず、「未知のタグを消去する不具合を解消」の意味はそのとおりです。しかし、おっしゃるとおり、実装にバグがありました。開発途中版で、手で追加した要素が消えないようにしました。少なくとも <foaf:logo>  については動作確認しました。[msano]
--開発途中版をまだ評価していないのであれですが、上記で挙げたことは要素だけでなく属性にもいえることで、たとえば<foaf:name xml:lang="ja" dc:title="my name">いしだなおと</name>(適当です)のような場合に関してもフォームで設定できない属性値は再編集時に消えるということが起こっていました。(解消済みでしたらすみません。)とはいえ、RDFの仕組みからいって詳細化した表現のバリエーションをカバーするのは大変なのかなぁと想像しているのですが…。バリデーションしてくれるパーサーがあれば解決するのですかね?[いしだなおと]
--申し訳ないのですが、現時点では上記の属性値関連の現象については解消されていません。FOAF(というかRDF?)のとりうるバリエーションすべてに対応できるのが理想的ですが、お察しのとおり、現時点ではワークロード的にちょっと厳しいなあというのが正直なところです。もし、pure perl の良いFOAFパーサーがあれば、教えていただけるとありがたいです。 [msano]


**recent_entryカスタマイズ
-recent_entry.htmlの表示のみに絞りたいのですがrecent_entry.htmlをindex.htmlとして扱うためには(つまりhttp://hoge.jp/rna/で表示できる)どうすればいいでしょうか?recent_entry.htmlのテンプレをコピペしただけではダメだったので。[裕美]

--「lib/RNA/Config.pm」を編集することによって可能です。なお、変更後はRefreshしないと反映されません。以下を参考にしてください。また、パス名の変更にあわせてテンプレートも修正する必要があるかと思います。[いしだなおと]
 ・変更前
 my $main_index_page     = 'index.html';
 (〜中略)
 my $recent_entry_html = "$view_dir/recent_entry.html";
 
 ・変更後
 my $main_index_page     = "$view_dir/main_index.html";
 (〜中略)
 my $recent_entry_html = 'index.html';

--いしださんありがとうございます。なんだかうまくいかなかったみたいなので(500エラーが…)デフォルトのindex.html内にrecent_entry.htmlの内容を加えるようにするにはどうすればよろしいでしょうか。色々いじったんですが<$RNAItemTitle$>のようにまったく変わらないので。。[裕美]

---my $main_index_page     = 'index.html';
my $recent_entry_html = "index.html"
にしたらなんとかなりました。大丈夫なのか不安ですが…ありがとうございました[裕美]

---リフレッシュアンテナすると1/2の確率で本来の(?)index.htmlが出てくることがあります。。やはりダメでした。。"$view_dir/main_index.html";と設定しても、index.html以外のページに飛びそのページはありませんとなります。。index.htmlにrecent_entry.htmlを表示させるのは仕様的にバッティングしてしまうのでしょうか。。[裕美]

---何度もすいません。1/2の確率で表示される元のindex.htmlをいじってみたのですが<$RNAItemTitle$> | from <$RNAItemSourceTitle$> | updated at <$RNAItemDate format="%Y.%m.%d %I:%M %p"$>となってしまいやっぱりだめでした。。

--私の書いたやり方については、テンプレートの中身を入れ替えたりせず、まずは標準状態のテンプレートを利用して、設定で生成されるファイル名を変えるようにします。
 通常時
,設定ファイルでの項目名,テンプレートファイル,処理内容,生成されるファイル
,$main_index_page,template/index_template,「トップページ」用の処理,index.html
,$recent_entry_html,template/recent_template,「最新の記事」用の処理,rss/recent_entry.html

 今回の場合
,設定ファイルでの項目名,テンプレートファイル,処理内容,生成されるファイル
,$main_index_page,template/index_template,「トップページ」用の処理,''rss/main_index.html''
,$recent_entry_html,template/recent_template,「最新の記事」用の処理,''index.html''

--その状態で1度Refreshしてみて、それができてから、テンプレートの修正をします。なお、1/2の確率でindex.htmlの内容が変わるというのは、2つのテンプレートの両方で同時に「index.html」を書き出そうとしているのではないかと思います。そうであるなら、設定を正せば解決しそうです。
--ご遠慮無用ですので、疑問点などありましたらどんどん書いていただいたほうが、RNAもよくなる(共有できるノウハウが増える)と思います。[いしだなおと]

--いしださんありがとうございます。
$view_dirが500エラー(Refresh時)の原因だったみたいだったのでmain_index.htmlに省略したらなんとかindex.htmlがresent_entry.htmlを反映するようになりました!
ただ、Refreshするとindex.htmlにはなってくれないでmain_index.htmlに飛んでしまうのが哀しいですがindex.htmlのRefreshはブラウザの更新で代用するとしてひとまずはなんとかなりそうです。たぶん[裕美]

---やっぱり「Refresh Antenna」をおさないと100%正常に最新更新状況にならないみたいでした。。
そこで、Refresh Antennaを押したらとにかくindex.htmlの方(中身はrecent_entry.htmlですが)に飛んでくれる(戻ってくれる)ためにはどこをいじればいいんでしょうか?
色々いじったらバグってしまって。。RNAを活用しておもしろい事をしていきたいです。[裕美]

---rna.cgiの$rna->{Config}->{MainIndex}を$rna->{Config}->{RecentEntryList}に変えたらできるかと思って変えてみたらrna.cgiが500エラーを起こしてしまって戻してももうお亡くなりになられたみたいでした。。[裕美]

---↑ひとつうえの改造は、目の付け所は正しかったと思います。次のようにしたらどうなりますでしょうか。これは私も試していないので、うまくいくかはわかりませんが…。[いしだなおと]
 rna.cgiの73行目から
 変更前
 $transfer_uri = 
   $transfer_uri ? $transfer_uri 
     : $rna->{Config}->{MainIndex}->{URI};
 
 変更後
 $transfer_uri = 
   $transfer_uri ? $transfer_uri 
     : $rna->{Config}->{RecentEntryList}->{HTML};

---↑やってみましたが残念ながらダメだったようです。。[裕美]
---こんにちは。次の2つを試してみて頂けますでしょうか。まず、どのページからrna.cgiにアクセスしてもindex.html(recent_entryのリスト)にリダイレクトすることを望まれるのであれば、いしだなおとさんの「変更後」部分を次のようにしてみてください。
 $transfer_uri = $rna->{Config}->{RecentEntryList}->{HTML};
また、index.html(recent_entryのリスト)で「Refresh」ボタンを押したときにindex.htmlに戻るようにしたいということであれば、recent_template において、次のようにしてみてください。
 変更前
 <form action="<$RNAUpdateCGIURI$>" method="get">
 変更後
 <form action="<$RNAUpdateCGIURI$>?transfer=<$RNAPageLink$>" method="get">
なお、可能であれば作業時には時々ブラウザのキャッシュを消去した方が混乱が少ないかもしれません。[msano]

---ありがとうございました。rna.cgiがどうしても何故か500エラーになってしまうので…
rna-load.cgiをリフレッシュの代用とすることにしました。[裕美]

---右サブMENUの項にRefleshなどの文字MENUがありますが、ここを日本語にしようとすると文字化けしてしまうみたいです。この項にいろいろと説明文など書きたかったのですがさすがに英語にするのもどうかと思ったので日本語を使いたいのですが…
charset=UTF-8 を Shift_JIS にすると今度は左のEntryListが文字化けに…
日本語をRNAのサブメニューに使うためにはどうすればよろしいでしょうか?[裕美]

---やはり無理なのでしょうか…。日本語サイトなのに英語しか使えないのはとてもつらいので、なんとかしたいのですがどうしても文字化けしてしまいます[裕美]

---方針としては、UTF-8で行くほうが無理がないと思います。現状のRNAは国際化機能は万全とはいえない状態(失礼)だと思うので、Shift_JISやらそのほかローカルなエンコーディングで運用するには多々障害がありそうです。(国際化にしてもUTF-8=Unicodeで、ということなのでしょう、多分。)ちなみに、表示の英語/日本語というのは、テンプレートを書き換えれば出来ると思います。[いしだなおと]

template/recent_template
 変更前
 <form action="<$RNAUpdateCGIURI$>" method="get">
 <input type="submit" value="Refresh Antenna" alt="Refresh Antenna"  accesskey="r" />
 </form>

 変更後(例)
 <form action="<$RNAUpdateCGIURI$>?transfer=<$RNAPageLink$>" method="get">
 <input type="submit" value="再取得" alt="再取得"  accesskey="r" />
 </form>

---↑こんな感じの要領で、細かいところまで挙げるとキリがないですが、試行錯誤でがんばってください。
---そのときひとつ、重要な注意点があります。何べんも繰り返しRefreshするたびに巡回先に登録しているサイトにリクエストが行って、先方の迷惑になってしまいます。この「試行錯誤」を始める前に、すでに登録済みのサイトの設定をバックアップした後、いったん全て削除して、巡回先が0件の状態にしてください。そして1件もしくは2件だけ、自分のサイトのRSSのみを登録した状態でテストしてください。[いしだなおと]
---私のサイトはアクセス数も少なく比較的余裕があるので、isnot.jpドメイン下のRSSはテスト時にも巡回していただいてもかまいません。よく探すと、私のサイト内で文字コード違いも含めて10コくらいRSSが見つかるはずですので、どれでも好きなものをテスト登録してください。[[こ http://isnot.jp/superrna/]] [[の http://isnot.jp/39_akiary/sample/]] [[へ http://isnot.jp/n3/]] [[ん http://isnot.jp/]] [いしだなおと]

-最近アップデートされた10個のサイト(記事ではなく)の一覧を表示させたいのですが、なにか良い方法はありませんか?素人なりにconfig.plとテンプレートをいろいろ試してみましたが、わかりませんでした。[ふじた]
--recent_template において、「<RNAItems>」を「<RNAItems lastn="10">」と変更すると、最初の10件を表示します。ただし、デフォルトでは、recent_template は 「recent_entry.html」と「recent_site.html」に共用なので、サイトも記事も最初の10件のみになってしまいます。それを避けるには、lib/RNA/Config.pm の 「$recent_entry_template」を変更していただく必要があります。[msano]
--ありがとうございました。上記の方法(lastn)で、できるようになりました。ちなみに以前に<RNASites lastn="10">だとできなくて、RNAItemsでは試してませんでした。[ふじた]

**開発版(Nightly)に関して
-「Atom対応」の気配がするのですが、気になります。glucoseとの連携部分やRNA AllianceをAtom APIにするとか、単純にAtom Feedをアグリゲートする機能、あたりなのでしょうね。
--対応しているのは、Atom Feed のアグリゲートの方です。[msano]
-2.0preになってから追加されたテンプレートタグには何があるのでしょうか。そろそろテスト以外にも使いこなしたいです。[いしだなおと]
--<RNAItemDateHeader>(<MTDateHeader>と同じ)と <$RNA***Description len="n"$> (最初のn文字)があります。[msano]

*RNAと連携するアプリケーション

**SUPER RNA
RNA活用例のひとつ。メジャーなPingサイト&アンテナのRSSをアグリゲートしています。
-RNAを利用して、[[こんなこと http://isnot.jp/superrna/rss/recent_entry.xml]]をしてみました。
-現状では利用者が多くないために、他のRNAと同様の個人的な利用にとどまっていますが、積極的に公開・開放したいという風に考えています。認証もOFFにしていますので、機能を確かめるなどどうぞ。[[メモ http://isnot.jp/?p=RNAメモ]][いしだなおと]

**ClipIt
どこでもClip Bookmarklet for RNA。Bookmarkletやフォームからの入力によって、RSSの無い記事(URL)もClipの対象にしようという機能です。URIによって識別できれば、どんな内容でも、メモを取るように気軽に追加できるように。
-[[sample http://isnot.jp/superrna/index.html]]
-詳細は別ページを参照⇒[ClipIt]
-それと、「XML+XSLTからClip」なんてネタもあったり。上記sampleのRNAを参照。[いしだなおと]

**glucose
http://glucose.jp/

-glucoseはニュースやウェブログを閲覧・巡回するRSSリーダーです。
-RSSを発行しているニュースサイトやウェブログを巡回し、ニュースやウェブログの閲覧・一覧表示をすることができます。
-センサーを用いることで、RSSを発行していないサイトも巡回することができます。

*for Developer

[[semblog-dev]] 開発者のためのページ

semblog.orgではプロダクトの開発を手伝っていただける方を募集しております.

*一行コメント
- 2004-05-20 (Thu) 13:40:43 ''[[なび]]'' : カテゴリごとにRSSを吐き出すようにしてもらえるとうれしいです←サイトごとの最新記事でです
- 2004-06-18 (Fri) 18:54:00 URLに含まれる&が&amp;になっていません
- 2004-08-25 (Wed) 04:42:55 ''[[上の人に激しく同意]]'' : 「最新の記事」もカテゴリ化できれば最強です。お願いします。m(_ _)m
- 2004-09-26 (Sun) 10:26:22 ''[[トルコ]]'' : 「最近の記事」を二つ設置したい時、RNA全部を二つ設置するしか方法ないかな。
- 2004-11-10 (Wed) 11:59:47 ''[[でいじ]]'' : 最新の記事だけだどうしても取得できないのですが、何か原因として考えられることはありますでしょうか?http://202.229.187.46/xmlrpc/rna/index.html よろしくお願いいたします。
- 2004-11-13 (Sat) 15:34:27 ''[[toss]]'' : 5月になびさんが書かれてますが、「カテゴリごとのRSS」はぜひ実装してほしいです。プラグインにもそれを取得するインターフェイスをつけてもらえれば可能性がぐっと広がります。ぜひご検討ください。
- 2004-12-17 (Fri) 01:12:31 ''[[sers]]'' : xreaでcronしたらエラーに……。動いた人いるかな?
- 2004-12-19 (Sun) 03:13:17 ''[[いしだなおと]]'' : CRONでの実行は私もつまづきました。最近のバージョンだと「rna-refresh.pl」というのが同梱されているようですが、これを呼び出すように、お試しになってはいかがでしょうか。(この方法は私は使っていないのですが・・・)
- 2004-12-30 (Thu) 11:37:46 sers? : cron一応動きました。しかし毎時零時更新にしてるのに数時間に一回しか動いてない。ときどき全然ダメ。うーむ。
- 2005-01-23 (Sun) 22:59:46 ''[[msano]]'' : カテゴリごとのページを出力するプラグインを書いてみました。http://foaf.jp/~msano/rnanightly/plugins/cat_aggregate/ 。 サンプルは http://foaf.jp/~msano/rnanightly/rss/cat_entries_internet.rdf など。build 050123に同梱です。あまりエレガントではないですが、<$__RNACategoryExpression__$>をうまつくかえば、ページごとにスタイルシートをかえることもできるでしょう。対象カテゴリを変えるときは、cat_aggregate.pl をいじる必要があります。$category_ref =undef; にすると、大量のpageがさくせいされるので注意です。
- 2005-01-28 (Fri) 21:14:41 ''[[佐藤貴男]]'' : こんちにわ。カテゴリプラグインはRNAのSubject (Category)とは連動してないのでしょうか。反映されません。
- 2005-02-01 (Tue) 02:11:25 ''[[msano]]'' : 今のところ、対象カテゴリを指定するには、cat_aggregate.pl の $category_ref変数を変更する必要があります。あまりエレガントな方法ではないのですが。。。。
- 2005-02-12 (Sat) 17:45:07 ''[[トルコ]]'' : ネスケだとスーパーリロードせんと反映せんです… ノーキャッシュだと負荷かかりすぎ… 我慢するしかない!?
- 2005-02-14 (Mon) 03:10:26 ''[[msano]]'' : 開発版にて、カテゴリごとのページを作成する機能を強化しました。(cat_aggregateプラグインと役割が重なりますが。) http://foaf.jp/~msano/rnanightly/

- 2017-06-25 (Sun) 10:34:01 ''[[Guswut]]'' : comment1, https://disqus.com/home/channel/daufeclihe/discussion/channel-daufeclihe/edd93446c3584e16b2a3fc3d86f7fcb0/ skachat_igru_zhivaia_stal_vrb,  %-((, https://disqus.com/home/channel/ebookslib/discussion/channel-ebookslib/png/ skachat_detskie_ramki_png,  >:P, https://disqus.com/home/channel/ticnowallti/discussion/channel-ticnowallti/euro_truck/ simuliator_euro_truck,  pghqwt, https://disqus.com/home/channel/slinmeagriemin/discussion/channel-slinmeagriemin/2966034be3dc45e2bf16db175e88ee63/ skachat_android_dlia_kpk,  802186, https://disqus.com/home/channel/chielihadti/discussion/channel-chielihadti/fec6589494bd456a9d4059e615b3dcad/ skachat_besplatno_film_komanda_a_na_telefon,  8431, https://disqus.com/home/channel/vioplacsubscor/discussion/channel-vioplacsubscor/graphicsh_dev_c/ skachat_biblioteku_graphicsh_dlia_dev-c,  727, https://disqus.com/home/channel/kemetnonclink/discussion/channel-kemetnonclink/cb17150358b64e17942989f3a5e7d1c4/ skachat_besplatno_tsyganskuiu_pesniu_viuga,  9264, https://disqus.com/home/channel/talitanstu/discussion/channel-talitanstu/f8c917d8eed64a14a3b61d3bc4e80a55/ skachat_igru_boevye_bashni_mnogo_deneg_na_android,  %-[[[, https://disqus.com/home/channel/yxmkne/discussion/channel-yxmkne/pc/ simuliator_mototsikla_na_pc,  916974, https://disqus.com/home/channel/joyknolchitprea/discussion/channel-joyknolchitprea/416bb4de4054415fb9614f13aa8e518f/ skachat_igru_simuliator_shakhmat_na_android,  >:DD, https://disqus.com/home/channel/dlntpvh/discussion/channel-dlntpvh/7fb63801bd2d4477806e57a637bd06d4/ skachat_assasin_krid_iuniti_na_pk,  %((, https://disqus.com/home/channel/provcetcabitt/discussion/channel-provcetcabitt/mp4/ skachat_diavol_nosit_prada_mp4,  ihp, https://disqus.com/home/channel/swisenthcenet/discussion/channel-swisenthcenet/15d0677ff0454554abf540b929f55171/ kratkoe_soderzhanie_boris_godunov_otryvok_nochkelia_v_chudovom_monastyre,  cup, https://disqus.com/home/channel/contticubo/discussion/channel-contticubo/2014/ skachat_besplatno_ischeznuvshaia_2014,  bmd, https://disqus.com/home/channel/whimortlogsign/discussion/channel-whimortlogsign/da8e86607b2c476bbd024f98bd84c55f/ simuliator_uporotogo_shpiona_skachat,  8-), https://disqus.com/home/channel/stocabywar/discussion/channel-stocabywar/acronis_true_image_wd_edition/ skachat_besplatno_acronis_true_image_wd_edition,  :-((, https://disqus.com/home/channel/sfilobmewoods/discussion/channel-sfilobmewoods/55aeef137ab5489aaff55268219e8acb/ skachat_igru_liga_legend_na_russkom,  335, https://disqus.com/home/channel/clutsiputo/discussion/channel-clutsiputo/331c347e8f26460697ea4d5bd9249d6c/ malye_ges_referat,  %-DDD, https://disqus.com/home/channel/etdisrouref/discussion/channel-etdisrouref/22a09f9f919844ecb968ca8564b9cd2a/ skachat_besplatno_novuiu_pesniu_sergeia_lazareva_v_samoe_serdtse,  >:-), https://disqus.com/home/channel/chrysrumanre/discussion/channel-chrysrumanre/236/ skachat_vk_na_android_236,  kjyhho, https://disqus.com/home/channel/slogisinyb/discussion/channel-slogisinyb/cs_16/ server_cs_16_skachat_s_botami,  fgpv, https://disqus.com/home/channel/whimortlogsign/discussion/channel-whimortlogsign/loveread/ sdelai_eto_chitat_onlain_loveread,  rbmmig, https://disqus.com/home/channel/privmilkingmic/discussion/channel-privmilkingmic/10_84/ otvety_aktiviti_buk_10_klass_afanaseva,  922, https://disqus.com/home/channel/rycrentrowhor/discussion/channel-rycrentrowhor/f98e36f970d34bb9a7d57267ad8be57b/ malyi_kliuch_solomona_skachat_knigu,  =-]], https://disqus.com/home/channel/raladtalo/discussion/channel-raladtalo/_34/ simuliator_tanka_t-34_skachat_besplatno,  >:-PPP, https://disqus.com/home/channel/knowvinrteni/discussion/channel-knowvinrteni/40/ skachat_igru_gta_na_android_40,  epgqbq, https://disqus.com/home/channel/kemetnonclink/discussion/channel-kemetnonclink/hd_38/ skachat_gran_budushchego_s_torrenta_v_khoroshem_kachestve_hd,  hjhs, https://disqus.com/home/channel/lehotantu/discussion/channel-lehotantu/2_60/ simuliator_dota_2_onlain,  frc, https://disqus.com/home/channel/falpegofde/discussion/channel-falpegofde/81_build_9600/ skachat_aktivator_vindovs_81_build_9600,  =-[[, https://disqus.com/home/channel/perneyperso/discussion/channel-perneyperso/2_80/ serial_zona_2,  8108, https://disqus.com/home/channel/quinvesexstad/discussion/channel-quinvesexstad/82eedf52908a4b1d899bb21a708a5d36/ skachat_video_uagyz_abdugappar,  ljowb, https://disqus.com/home/channel/ceicrumterru/discussion/channel-ceicrumterru/4_80/ skachat_batelfild_4_onlain,  dkmrg, https://disqus.com/home/channel/hinkwenringgoodg/discussion/channel-hinkwenringgoodg/minecraft_pe_iphone/ skachat_igru_minecraft_pe_na_iphone_besplatno,  ubv, https://disqus.com/home/channel/doljumitra/discussion/channel-doljumitra/b94f7d5995614138bc7fe8d22745d391/ skachat_av_pleer_dlia_aipad,  ncxbh, https://disqus.com/home/channel/guichrisrado/discussion/channel-guichrisrado/7f046dae864e49bd913178e206f9c6d8/ skachat_besplatno_albom_tsoia_gruppa_krovi,  :-), https://disqus.com/home/channel/lvkedxn/discussion/channel-lvkedxn/6_26/ skachat_gdz_6_klass_matematika_vilenkin,  jihqhv, https://disqus.com/home/channel/offtopic/discussion/channel-offtopic/85966089bd7e4c84ba8d1fb587a0e7c7/ skachat_besplatno_mai_tank,  jabw, https://disqus.com/home/channel/dlntpvh/discussion/channel-dlntpvh/a03e0c320bad41d8953a02156536f520/ otvety_ege_vtoraia_volna,  crwz, https://disqus.com/home/channel/uspatronon/discussion/channel-uspatronon/d2132e2862e2482e8d9241039ae95688/ skachat_igru_na_android_morskoi_boi_besplatno,  :[[, https://disqus.com/home/channel/netelawhip/discussion/channel-netelawhip/1_30/ skachat_igru_chuzhoi_protiv_khishchnika_1_na_kompiuter,  =-[, https://disqus.com/home/channel/sufdiwasa/discussion/channel-sufdiwasa/e0d2b90991244c959c68b2e77d9ee59c/ kniga_sherlok_kholms_chitat_besplatno,  714157, https://disqus.com/home/channel/socialmediasericessocialwebpromoter/discussion/channel-socialmediasericessocialwebpromoter/10_11/ l_s_atanasian_geometriia_10_11_klass_uchebnik_onlain,  mvdh, https://disqus.com/home/channel/memusipa/discussion/channel-memusipa/23f4060f6b6f46e1b1bdb3ca9a001576/ skachat_besplatno_gruppa_vesna_ia_takoi_ne_byla,  >:((, https://disqus.com/home/channel/emsecorxi/discussion/channel-emsecorxi/16/ 16_iiulia_znak_zodiaka,  wcxc, https://disqus.com/home/channel/agadamloun/discussion/channel-agadamloun/7736cd5f585d4b568ca45ff9c10f11f5/ skachat_besplatno_knigu_olgi_miakhar_mutantka,  xhrj, https://disqus.com/home/channel/whimortlogsign/discussion/channel-whimortlogsign/2_40/ skachat_boss_2_s_beskonechnymi_dengami_i_almazami_besplatno,  8DDD, https://disqus.com/home/channel/fuldergtreadin/discussion/channel-fuldergtreadin/1_1/ kriak_briak_1_seriia_1_sezon,  31664, https://disqus.com/home/channel/tigeatacent/discussion/channel-tigeatacent/2_1/ serial_ne_zhenskoe_delo_2_sezon_1_seriia,  gxsw, 
[[#comment]]