<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>VCL XML RPC: xmlrpc_example.php</title>
<link href="xmlrpcdocs.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">VCL XML RPC
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">xmlrpc_example.php</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line">&lt;?php</div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment">  Licensed to the Apache Software Foundation (ASF) under one or more</span></div>
<div class="line"><span class="comment">  contributor license agreements.  See the NOTICE file distributed with</span></div>
<div class="line"><span class="comment">  this work for additional information regarding copyright ownership.</span></div>
<div class="line"><span class="comment">  The ASF licenses this file to You under the Apache License, Version 2.0</span></div>
<div class="line"><span class="comment">  (the &quot;License&quot;); you may not use this file except in compliance with</span></div>
<div class="line"><span class="comment">  the License.  You may obtain a copy of the License at</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">      http://www.apache.org/licenses/LICENSE-2.0</span></div>
<div class="line"><span class="comment"></span></div>
<div class="line"><span class="comment">  Unless required by applicable law or agreed to in writing, software</span></div>
<div class="line"><span class="comment">  distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
<div class="line"><span class="comment">  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
<div class="line"><span class="comment">  See the License for the specific language governing permissions and</span></div>
<div class="line"><span class="comment">  limitations under the License.</span></div>
<div class="line"><span class="comment">*/</span></div>
<div class="line"></div>
<div class="line">session_start();</div>
<div class="line"></div>
<div class="line">$url = <span class="stringliteral">&quot;http://{$_SERVER[&#39;HTTP_HOST&#39;]}{$_SERVER[&#39;PHP_SELF&#39;]}&quot;</span>;</div>
<div class="line">print <span class="stringliteral">&quot;&lt;a href=\&quot;$url?state=test\&quot;&gt;Test&lt;/a&gt;&lt;br&gt;\n&quot;</span>;</div>
<div class="line">print <span class="stringliteral">&quot;&lt;a href=\&quot;$url?state=listimages\&quot;&gt;List Available Images&lt;/a&gt;&lt;br&gt;\n&quot;</span>;</div>
<div class="line">print <span class="stringliteral">&quot;&lt;a href=\&quot;$url?state=addrequest\&quot;&gt;Add request for Test Image 1&lt;/a&gt;&lt;br&gt;\n&quot;</span>;</div>
<div class="line">print <span class="stringliteral">&quot;&lt;a href=\&quot;$url?state=requeststatus\&quot;&gt;Get status of request&lt;/a&gt;&lt;br&gt;\n&quot;</span>;</div>
<div class="line">print <span class="stringliteral">&quot;&lt;a href=\&quot;$url?state=connectdata\&quot;&gt;Get connection data&lt;/a&gt;&lt;br&gt;\n&quot;</span>;</div>
<div class="line">print <span class="stringliteral">&quot;&lt;a href=\&quot;$url?state=endrequest\&quot;&gt;End request&lt;/a&gt;&lt;br&gt;\n&quot;</span>;</div>
<div class="line"></div>
<div class="line">print <span class="stringliteral">&quot;&lt;pre&gt;\n&quot;</span>;</div>
<div class="line"></div>
<div class="line"><span class="comment">// test</span></div>
<div class="line"><span class="keywordflow">if</span>($_GET[<span class="stringliteral">&#39;state&#39;</span>] == <span class="stringliteral">&#39;test&#39;</span>) {</div>
<div class="line">        $rc = remoteVCLCall(<span class="stringliteral">&#39;XMLRPCtest&#39;</span>, array(<span class="stringliteral">&#39;foo&#39;</span>));</div>
<div class="line">        print_r($rc);</div>
<div class="line">}</div>
<div class="line"><span class="comment">// list images</span></div>
<div class="line">elseif($_GET[<span class="stringliteral">&#39;state&#39;</span>] == <span class="stringliteral">&#39;listimages&#39;</span>) {</div>
<div class="line">        $rc = remoteVCLCall(<span class="stringliteral">&#39;XMLRPCgetImages&#39;</span>, array());</div>
<div class="line">        print_r($rc);</div>
<div class="line">}</div>
<div class="line"><span class="comment">// add request</span></div>
<div class="line">elseif($_GET[<span class="stringliteral">&#39;state&#39;</span>] == <span class="stringliteral">&#39;addrequest&#39;</span>) {</div>
<div class="line">        $rc = remoteVCLCall(<span class="stringliteral">&#39;XMLRPCaddRequest&#39;</span>, array(98, <span class="stringliteral">&#39;now&#39;</span>, 60));</div>
<div class="line">        <span class="keywordflow">if</span>($rc[<span class="stringliteral">&#39;status&#39;</span>] == <span class="stringliteral">&#39;success&#39;</span>) {</div>
<div class="line">                print <span class="stringliteral">&quot;request id is {$rc[&#39;requestid&#39;]}&lt;br&gt;\n&quot;</span>;</div>
<div class="line">                $_SESSION[<span class="stringliteral">&#39;requestid&#39;</span>] = $rc[<span class="stringliteral">&#39;requestid&#39;</span>];</div>
<div class="line">        }</div>
<div class="line">        <span class="keywordflow">else</span> {</div>
<div class="line">                print_r($rc);</div>
<div class="line">        }</div>
<div class="line">}</div>
<div class="line"><span class="comment">// get request status</span></div>
<div class="line">elseif($_GET[<span class="stringliteral">&#39;state&#39;</span>] == <span class="stringliteral">&#39;requeststatus&#39;</span>) {</div>
<div class="line">        <span class="keywordflow">if</span>(! array_key_exists(<span class="stringliteral">&#39;requestid&#39;</span>, $_SESSION)) {</div>
<div class="line">                print <span class="stringliteral">&quot;no request created&lt;br&gt;\n&quot;</span>;</div>
<div class="line">                exit;</div>
<div class="line">        }</div>
<div class="line">        $rc = remoteVCLCall(<span class="stringliteral">&#39;XMLRPCgetRequestStatus&#39;</span>, array($_SESSION[<span class="stringliteral">&#39;requestid&#39;</span>]));</div>
<div class="line">        print <span class="stringliteral">&quot;current status of request {$_SESSION[&#39;requestid&#39;]} is {$rc[&#39;status&#39;]}&quot;</span>;</div>
<div class="line">}</div>
<div class="line"><span class="comment">// get connection data</span></div>
<div class="line">elseif($_GET[<span class="stringliteral">&#39;state&#39;</span>] == <span class="stringliteral">&#39;connectdata&#39;</span>) {</div>
<div class="line">        <span class="keywordflow">if</span>(! array_key_exists(<span class="stringliteral">&#39;requestid&#39;</span>, $_SESSION)) {</div>
<div class="line">                print <span class="stringliteral">&quot;no request created&lt;br&gt;\n&quot;</span>;</div>
<div class="line">                exit;</div>
<div class="line">        }</div>
<div class="line">        $rc = remoteVCLCall(<span class="stringliteral">&#39;XMLRPCgetRequestConnectData&#39;</span>, array($_SESSION[<span class="stringliteral">&#39;requestid&#39;</span>], $_SERVER[<span class="stringliteral">&quot;REMOTE_ADDR&quot;</span>]));</div>
<div class="line">        <span class="keywordflow">if</span>($rc[<span class="stringliteral">&#39;status&#39;</span>] == <span class="stringliteral">&#39;ready&#39;</span>)</div>
<div class="line">                print_r($rc);</div>
<div class="line">        <span class="keywordflow">else</span></div>
<div class="line">                print <span class="stringliteral">&quot;status of request is {$rc[&#39;status&#39;]}&quot;</span>;</div>
<div class="line">}</div>
<div class="line"><span class="comment">// end request</span></div>
<div class="line">elseif($_GET[<span class="stringliteral">&#39;state&#39;</span>] == <span class="stringliteral">&#39;endrequest&#39;</span>) {</div>
<div class="line">        <span class="keywordflow">if</span>(! array_key_exists(<span class="stringliteral">&#39;requestid&#39;</span>, $_SESSION)) {</div>
<div class="line">                print <span class="stringliteral">&quot;no request created&lt;br&gt;\n&quot;</span>;</div>
<div class="line">                exit;</div>
<div class="line">        }</div>
<div class="line">        $rc = remoteVCLCall(<span class="stringliteral">&#39;XMLRPCendRequest&#39;</span>, array($_SESSION[<span class="stringliteral">&#39;requestid&#39;</span>]));</div>
<div class="line">        <span class="keywordflow">if</span>($rc[<span class="stringliteral">&#39;status&#39;</span>] == <span class="stringliteral">&#39;error&#39;</span>)</div>
<div class="line">                print_r($rc);</div>
<div class="line">        <span class="keywordflow">else</span> {</div>
<div class="line">                print <span class="stringliteral">&quot;request ended&lt;br&gt;\n&quot;</span>;</div>
<div class="line">                unset($_SESSION[<span class="stringliteral">&#39;requestid&#39;</span>]);</div>
<div class="line">        }</div>
<div class="line">}</div>
<div class="line">print <span class="stringliteral">&quot;&lt;/pre&gt;\n&quot;</span>;</div>
<div class="line"></div>
<div class="line"><span class="keyword">function</span> remoteVCLCall($method, $args) {</div>
<div class="line">        $request = xmlrpc_encode_request($method, $args);</div>
<div class="line">        $header  = <span class="stringliteral">&quot;Content-Type: text/xml\r\n&quot;</span>;</div>
<div class="line">        $header .= <span class="stringliteral">&quot;X-User: userid\r\n&quot;</span>;    <span class="comment">// user your userid here</span></div>
<div class="line">        $header .= <span class="stringliteral">&quot;X-Pass: password\r\n&quot;</span>;  <span class="comment">// user your password here</span></div>
<div class="line">        $header .= <span class="stringliteral">&quot;X-APIVERSION: 2&quot;</span>;       <span class="comment">// this is to allow for future changes to the api</span></div>
<div class="line">        $context = stream_context_create(</div>
<div class="line">                array(</div>
<div class="line">                        <span class="stringliteral">&#39;http&#39;</span> =&gt; array(</div>
<div class="line">                                <span class="stringliteral">&#39;method&#39;</span> =&gt; <span class="stringliteral">&quot;POST&quot;</span>,</div>
<div class="line">                                <span class="stringliteral">&#39;header&#39;</span> =&gt; $header,</div>
<div class="line">                                <span class="stringliteral">&#39;content&#39;</span> =&gt; $request</div>
<div class="line">                        )</div>
<div class="line">                )</div>
<div class="line">        );</div>
<div class="line">        $file = file_get_contents(<span class="stringliteral">&quot;https://vcl.ncsu.edu/scheduling/index.php?mode=xmlrpccall&quot;</span>, <span class="keyword">false</span>, $context);</div>
<div class="line">        $response = xmlrpc_decode($file);</div>
<div class="line">        <span class="keywordflow">if</span>(xmlrpc_is_fault($response)) {</div>
<div class="line">                trigger_error(<span class="stringliteral">&quot;xmlrpc: {$response[&#39;faultString&#39;]} ({$response[&#39;faultCode&#39;]})&quot;</span>);</div>
<div class="line">                exit;</div>
<div class="line">        }</div>
<div class="line">        <span class="keywordflow">return</span> $response;</div>
<div class="line">}</div>
<div class="line">?&gt;</div>
</div><!-- fragment --> </div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Feb 13 2015 13:43:55 for VCL XML RPC by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.5
</small></address>
</body>
</html>
