COMPANY SERVICE STAFF BLOG NEWS CONTACT

STAFF BLOG

スタッフブログ

TECHNICAL

テクログ

2013.04.26

FuelPHPでSOAP通信を行うサンプル

テクログ

FuelPHPのRequestクラスはSOAP通信をサポートしています。

http://fuelphp.com/docs/classes/request/soap.html

試しに、SOAP通信によるAPIを提供しているMantisBTの特定Issueにコメント投稿をしてみました。

// MantisBT APIのURL
$url = "[MantisBTのベースURL]/api/soap/mantisconnect.php?wsdl";

// FuelCoreRequest_Soapクラスのインスタンス
$soap = Request::forge($url, "soap");

// Issueへのコメント追加API
$soap->set_function("mc_issue_note_add");

// パラメータをセット
$soap->set_params(array(
?"username" => "[username]",
?"password" => "[password]",
?"issue_id" => [チケットのID],
?"note" => array("text" => "[コメント内容]"),
));

try
{
?// APIの実行とレスポンスの取得
?$response = $soap->execute()->response();
}
catch(Exception $e)
{
?// エラー処理
}

MantisBTのその他のAPIは “[MantisBTのベースURL]/api/soap/mantisconnect.php” から確認出来ます。

例えばGitLabのWeb hookと組み合わせて、コミットコメントからIssueのIDを割り出して、コミット内容を自動投稿とかも簡単そうですね。

この記事を書いた人

core-corp

入社年

出身地

業務内容

特技・趣味

テクログに関する記事一覧

TOP