1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
\r
2 <html xmlns="http://www.w3.org/1999/xhtml" lang="ja-JP" xml:lang="ja-JP">
\r
4 <!-- $Id: xmlrpc.html,v 1.5 2005-03-19 08:34:53 kimitake Exp $ -->
\r
6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
\r
7 <title>Nucleus - XML-RPC インターフェイス</title>
\r
8 <link rel="stylesheet" type="text/css" href="styles/manual.css" />
\r
12 <div class="heading">
\r
19 <a href="index.html">開発者マニュアルに戻る</a>
\r
23 このドキュメントはNucleusが提供するXML-RPCインターフェイスと、生成される<a href="#errorcodes">エラーメッセージ</a>についての解説です。この仕様は将来変更される可能性があることに注意して下さい。
\r
27 NucleusにおけるXML-RPCインターフェイスのURLは以下のようになります:
\r
29 <b>http://www.yourserver.com/yourpath/nucleus/xmlrpc/server.php</b>
\r
33 <a name="bloggerApi" id="bloggerApi"></a>
\r
34 <h1>Blogger API (XML-RPC)</h1>
\r
37 Nucleusは<a href="http://www.blogger.com/developers/api/1_docs/">Blogger API</a>に対応しています。これはBloggerと通信するツールやサービスに対して、Nucleusとも通信できるようにするものです。Nucleusの仕様により、いくつかのパラメータに若干の違いがあります。これについては後述の説明を参照して下さい。呼び出しや応答のメソッドは、もちろん、Bloggerのものと同じ構造になっています。
\r
41 ここに挙げたリストは利用できるメソッドの一覧です。クリックするとさらに詳しい情報を得ることができます(それぞれのリンク先はBlogger APIの仕様書やその<a href="http://groups.yahoo.com/group/bloggerDev">メーリングリスト</a>です)。
\r
45 <li><b><a href="http://www.blogger.com/developers/api/1_docs/xmlrpc_newPost.html">blogger.newPost</a></b></li>
\r
46 <li><b><a href="http://www.blogger.com/developers/api/1_docs/xmlrpc_editPost.html">blogger.editPost</a></b></li>
\r
48 <li><b><a href="http://groups.yahoo.com/group/bloggerDev/message/296">blogger.getPost</a></b></li>
\r
49 <li><b><a href="http://groups.yahoo.com/group/bloggerDev/message/147">blogger.deletePost</a></b></li>
\r
50 <li><b><a href="http://www.blogger.com/developers/api/1_docs/xmlrpc_getUsersBlogs.html">blogger.getUsersBlogs</a></b></li>
\r
52 <li><b><a href="http://groups.yahoo.com/group/bloggerDev/message/225">blogger.getRecentPosts</a></b></li>
\r
53 <li><b><a href="http://groups.yahoo.com/group/bloggerDev/message/315">blogger.getUserInfo</a></b></li>
\r
54 <li><b><a href="http://www.blogger.com/developers/api/1_docs/xmlrpc_getTemplate.html">blogger.getTemplate</a></b></li>
\r
55 <li><b><a href="http://www.blogger.com/developers/api/1_docs/xmlrpc_setTemplate.html">blogger.setTemplate</a></b></li>
\r
60 Nucleusは内部的に異なる実装を用いているため、パラメータの扱いに若干の違いがあります。概説すると:
\r
65 <li>Appkeyは無視されます。</li>
\r
66 <li>Nucleusの場合は本文のあとにタイトルとカテゴリが続きます。Bloggerでは 'コンテンツ' と呼ばれるは本文だけが存在します。これらの追加されたパーツを利用可能にするため、<tt><title></tt>や<tt><category></tt>をNucleusに送るコンテンツに含めることができます。これらのタグは getRecentPosts の呼び出しでのみ追加されます。</li>
\r
67 <li>Bloggerで 'templates' と呼ばれているものに相当するのが、Nucleusの 'スキン' です。ひとつのシステムに複数のスキンを設定でき、それぞれのスキンをblogごとに使い分けることができます。メソッド blogger.setTemplate と blogger.getTemplate は、Nucleusのblog設定で選択されているblogのデフォルトスキンに影響します。'main' と 'archiveIndex' の二種類のテンプレートは、Nucleusの 'メインの目次ページ' と '月別アーカイブ一覧ページ' に相当します。(<em>訳注: Blogger の仕様がわからないので、この項不確か</em>)</li>
\r
69 <li>項目 <tt>publish</tt> は、追加した項目がデフォルトでドラフトになるか公開になるかを決める箇所です。<tt>blogger.editPost</tt> を使う場合は、<tt>publish</tt> がドラフトと公開のどちらになっていても無視されます。</li>
\r
70 <li><tt>getUserInfo</tt> を呼び出した場合、返値のうち 'lastname' は空になり、'firstname' にフルネームが入ります。これはNucleusが姓と名を分けない仕様になっていることに由来します。</li>
\r
72 <li>メソッド <tt>getRecentPostst</tt> は <tt>authorName</tt> と <tt>title</tt> を追加パラメータとして返します。Bloggerもまたこれらの値を返します(この仕様は文書化されていないようですが)。</li>
\r
75 <a name="metaWeblogApi" id="metaWeblogApi"></a>
\r
76 <h1><a name="metaweblog"></a>metaWeblog API</h1>
\r
79 Nucleus v1.1以降、<a href="http://www.xmlrpc.com/metaWeblogApi">metaWeblog API</a>もサポートされました。これはBlogger APIの拡張版です。
\r
83 Nucleus v2.5では <code>newMediaObject</code> と <code>getRecentPosts</code> の二つのメソッドにも対応しました(これらは最初のmetaWeblog仕様には存在しませんでした)。
\r
87 利用可能なメソッド一覧は以下の通りです(<a href="http://www.xmlrpc.com/metaWeblogApi">specification</a>に詳しい情報があります):
\r
91 <li>metaWeblog.newPost</li>
\r
92 <li>metaWeblog.editPost</li>
\r
93 <li>metaWeblog.getPost</li>
\r
94 <li>metaWeblog.getCategories</li>
\r
95 <li>metaWeblog.newMediaObject (v2.5)</li>
\r
96 <li>metaWeblog.getRecentPosts (v2.5)</li>
\r
100 <a name="mtApi" id="mtApi"></a>
\r
101 <h1>Movable Type API</h1>
\r
103 <p>v2.5から、Nucleusは<a href="http://www.movabletype.org/docs/mtmanual_programmatic.html">Movable Type API</a>からのメソッドをサポートするようになりました。</p>
\r
105 <p>利用できるメソッドの一覧を以下に示します:</p>
\r
108 <li>mt.supportedMethods</li>
\r
110 <li>mt.supportedTextFilters</li>
\r
111 <li>mt.publishPost</li>
\r
112 <li>mt.getCategoryList</li>
\r
113 <li>mt.getPostCategories</li>
\r
114 <li>mt.setPostCategories</li>
\r
115 <li>mt.getRecentPostTitles</li>
\r
117 <li>mt.getTrackbackPings</li>
\r
123 <li>Nucleusはアイテムひとつにつき一つだけカテゴリを設定することができます。これは 'primary' 以外のカテゴリ設定項目はすべて無視されることを意味します。</li>
\r
124 <li>トラックバックはNucleusのコアではサポート対象外です(プラグインの導入によって利用することができるようになります)。このため、<code>mt.getTrackbackPings</code> のデフォルトの返値は空です。</li>
\r
126 <li>Nucleusはテキストフィルタを実装していません。このため、<code>mt.getSupportedTextFilters</code> は空の値を返します。</li>
\r
129 <h1><a name="errorcodes"></a>エラーコード</h1>
\r
132 以下に示すのは、それぞれのメソッドから得られるエラーの種類です:
\r
143 <td>Login Error <br />
\r
144 ログインエラー(ユーザ名とパスワードの組み合わせが正しくないと推測されます)</td>
\r
149 <td>No Such Blog<br />
\r
150 指定されたBlogは存在しません</td>
\r
154 <td>Not a Team Member<br />
\r
160 <td>Cannot add Empty Items<br />
\r
161 空のアイテムは投稿できません</td>
\r
166 <td>Amount parameter must be in range 1..20<br />
\r
167 パラメータの値は 1..20 の範囲でなければなりません(<i>getRecentItems</i></td>
\r
171 <td>No Such Item<br />
\r
172 指定されたアイテムは存在しません</td>
\r
177 <td>Not Allowed to Alter Item<br />
\r
178 アイテム追加の権限がありません</td>
\r
182 <td>Invalid media type<br />
\r
188 <td>File is too large<br />
\r
189 ファイルが大きすぎます(最大のアップロードファイルサイズ)</td>
\r
193 <td>Other error on newMediaObject<br />
\r
194 newMediaObject で予期せぬエラーが発生しました(何が起きたのかもう少し情報が含まれるでしょう)</td>
\r
198 <td><i>その他のコード < 100</i></td>
\r
199 <td>Errors encountered by the Useful Inc. XML-RPC implementation<br />
\r
200 Usefil Inc. XML-RPC の実行でエラーが発生しました</td>
\r
203 <td><i>その他のコード > 100</i></td>
\r
205 <td>Errors encountered by the XML parser<br />
\r
206 XML パーサでエラーが発生しました</td>
\r