Page 1 of 1

XML-RPC Example?

Posted: Fri Feb 10, 2017 8:54 pm
by henriqueweiand
I do not know very well this type of consumption of api (XML-RPC), could someone contribute in this topic, with some example of client so that I can develop something on top? PHP client of course!

Re: XML-RPC Example?

Posted: Sat Apr 08, 2017 10:04 am
by vespino
This should work, at least it does for me:

Code: Select all

<?php //xmlrpc function function xmlrpc_call($url, $methodName, $callvars) { //request $request=xmlrpc_encode_request($methodName, $callvars, array('encoding'=>'utf-8')); //context $context=stream_context_create(array('http'=>array('method'=>'POST', 'header'=>'Content-Type: text/xml', 'content'=>$request))); //response if(!$response=@file_get_contents($url, false, $context)) { //set error return 'Error occured in setting data from xml-rpc [file_get_contents]'; }else{ //decode $xmlrpc=xmlrpc_decode($response, 'utf-8'); //xmlrpc_is_fault if(xmlrpc_is_fault($xmlrpc)) { //fault $data[0]['fault']=$xmlrpc['faultCode']; //faultString $data[1]['faultString']=$xmlrpc['faultString']; }else{ //set data $data=$xmlrpc; } } return $data; } //login to opensubtitles $LogIn=xmlrpc_call( $xmlrpc_url, 'LogIn', array( 'user', 'pass', 'language', 'useragent' ) ); //set token $token=$LogIn['token']; //queries $queries[]=array( 'query'=>'Prison Break', 'sublanguageid'=>'eng', 'season'=>1, 'episode'=>1 ); //SearchSubtitles $SearchSubtitles=xmlrpc_call( $xmlrpc_url, 'SearchSubtitles', array( $token, $queries ) ); print_r($SearchSubtitles); ?>