VoiceTextWebAPIなるものをPHPで動かしてみた

2014年7月10日

昨日Gunosyで、VoiceText Web API (β版)なるものがあがってきまして、面白そうだから使ってみました。
公式サイトではCURLしかコード例がなかったので、PHPに書き直して公開しておきます。サンプルもあるよ。

PHPを使った利用方法

手順としては、「利用登録」をしまして、そうしたらAPIキーが書かれたメールが送られてきますので、そのAPIキーを下のコードの「YOUR_API_KEY:」に置き換えれば動きます。すっごいシンプルで簡単でした。エラーの処理や分岐などはしていないですが、最低限は以下で動きます。 
 
ちなみに、以下からサンプルを動かすことができます。なぜか公式にサンプルがないんですよねw
 
http://rdlabo.jp/sample/api_voicetext.php
 
APIの詳しい説明は、こちらのドキュメントにありますのでそちらをご参照ください。
 

	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, "https://api.voicetext.jp/v1/tts");
	curl_setopt($ch, CURLOPT_HEADER, false);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
	curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
	
	// 認証
	$authorized = "YOUR_API_KEY:";
	curl_setopt($ch,CURLOPT_HTTPAUTH,CURLAUTH_BASIC);
	curl_setopt($ch,CURLOPT_USERPWD,$authorized);
	
	// 音声データの受け渡し
	$post_array = array(
		"text"=>"おはようございます",
		"speaker"=>"show",
	);
	$postdata="";
	foreach($post_array as $key=>$val){
		$postdata.=urlencode($key).'='.urlencode($val).'&';
	}
	curl_setopt($ch,CURLOPT_POST,true);
	curl_setopt($ch,CURLOPT_POSTFIELDS,$postdata);
	
	$output = curl_exec($ch);
	curl_close($ch);

	$fp = fopen("api_voicetext.wav", "w");
	fwrite($fp, $output);
	fclose($fp);

 
動かない場合は大体、fopen(“api_voicetext.wav”, “w”);の権限がない場合なので、当該ファイルをftpで作ってパーミッションを777にしてもらえればと思います。
 
それでは、また。

slackチームに参加下さい

ng-onsenui2.slack.com

OnsenUI2(Angular2)について知見を共有する場です。Angular2に限ってOnsenUI2を議論できる場がなかったのでつくりました。これから使い始めるという方はぜひご参加ください。
https://ng-onsenui2.herokuapp.com/

Ionic2.slack.com

日本語情報が少ないのでこちらで知見を共有できればと思います。お陰様で参加者100名を超えました。ありがとうございます。
https://ionic2-ja.herokuapp.com