Este post mostra código PHP para efetuar consulta do status de conclusão de um aluno em um curso do Moodle. Isso será feito via webservice com linguagem PHP. Trata-se de conclusão configurado no Moodle via rastreamento de conclusão. Isso é fito no moodle no seguinte endereço MOODLE_URL/course/completion.php?id=COURSEID em que se define os critérios de conclusão do curso.
Para usar este código, instale no Moodle o plugin restjonson, protocolo de comunicação json para webservice.
O resultado do webservice traz informação de conclusão do curso na coluna completed. Essa coluna traz valor false ou true.
//url de acesso $remotemoodle="xxxxxxxxxx"; //MOODLE_URL - endereço do Moodle $url=$remotemoodle . '/webservice/restjson/server.php'; //parametros a ser passado ao webservice $param=array(); $param['wstoken']="xxxxxx"; //token de acesso ao webservice $param['wsfunction']="core_completion_get_course_completion_status"; //especificar usuário $param['userid']=4; //especifique do usuário. Clique aqui e veja como recuperar id do usuário. $param['courseid']=67; //especifique id do curso //converter array para json $paramjson = json_encode($param); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 0); curl_setopt($ch, CURLOPT_POSTFIELDS, $paramjson); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); $result =json_decode($result); //imprimindo resultado print_r($result);