UnderDoneの日記 - うし@人工無脳XML-RPCサービスβ版稼動
人工無脳とXML-RPCを介してチャットできる。
開発元にはPerlのコードがあるが、PHPでも書いてみた。ライブラリはXML-RPC for PHPを利用。ダウンロードして解凍するとMakefileがあったが、そのままパスを指定してrequireするだけでも使える。
なお、うし君とチャットするにはメールアドレスを登録してAPIキーを取得する必要がある。
サンプルコード:
<?php
require_once 'xmlrpc-2.1/lib/xmlrpc.inc';
$url = 'http://usikun.dip.jp/rpc/';
$client = new xmlrpc_client($url);
$client->return_type = 'xml';
//$client->setDebug(2);
$val = array(php_xmlrpc_encode('**api key**'), php_xmlrpc_encode('nob'), php_xmlrpc_encode(''), php_xmlrpc_encode($argv[1]));
$msg = new xmlrpcmsg('ChatBot.talk', $val);
$res = $client->send($msg);
if ($res->faultCode()) {
echo "FAILED: ".$res->faultString();
} else {
echo "OK: ";
print_r($res->value());
}
echo "\\n";
「hoge」と送ると「イキロ」と返ってきた。
追記:
コードの一部を修正。コメント参照。


このコードでも動きますが、パラメータが1つ足りません。
>$val = array(php_xmlrpc_encode(’**api key**’), php_xmlrpc_encode(’nob’), php_xmlrpc_encode(”), php_xmlrpc_encode($argv[1]));
3番目のパラメータはまだ使っていませんし、1つ少なくても動きますけどw
Comment by UnderDone — October 31, 2006 @ 2:11 pm
ぁ、なるほど。
よく仕様を見たら3番目は「友人の名前」ですね。
ありがとうございます。
Comment by nob.funaki — October 31, 2006 @ 8:55 pm
[…] PHPのコード(これと同じライブラリを使用): […]
Pingback by using API; blogWatcherの公開再開&API公開 — November 17, 2006 @ 10:01 am