Last active
August 29, 2015 14:02
-
-
Save erichnascimento/568289cfb5a6ef6d13a7 to your computer and use it in GitHub Desktop.
Exemplo de consumo do webservice do Selecty via PHP/JSON
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env php | |
<?php | |
/** | |
* Exemplo de consumo Selecty webservices | |
* | |
* @author Erich Nascimento <erich@youse.com.br> | |
* @copyright Youse Technologies | |
*/ | |
// URL Base | |
$base = 'http://globalempregos.selecty.com.br/ws/amfphp/json.php'; | |
// URL do serviço de autenticação | |
$authenticationService = 'system.youcloud.AuthenticationService.authenticationHost'; | |
$paramHostName = 'globalempregos.selecty.com.br'; | |
// | |
// Invoca o serviço de autenticação e armazena a chave de acesso | |
// | |
echo "Autenticando na plataforma...\n"; | |
$authKey = file_get_contents( | |
$base . '/' . | |
$authenticationService . '/' . | |
$paramHostName | |
); | |
// Como é um JSON, o mesmo DEVE ser decodificado | |
$authKey = json_decode($authKey); | |
echo "A chave de acesso dada foi: $authKey \n"; | |
echo "\n"; | |
echo "\n"; | |
// | |
// Invoca o serviço de estatística de vagas | |
// Repare que precisamos do $authKey | |
// | |
// URL do serviço de estatística de vagas | |
$statisticService = 'hr.CurriculumWebService.getVacancyStatistics'; | |
// Pode ser: "area", "city" ou "occupation" | |
$param1 = 'city'; | |
// Pode ser "emprego", "estagio" ou "null" | |
$param2 = 'emprego'; | |
echo "\n"; | |
// Invoca o serviço de autenticação e armazena a chave de acesso | |
echo "Obtendo a estatistica de vagas por cidade ($param1, $param2)...\n"; | |
$statistics = file_get_contents( | |
$base . '/' . | |
$statisticService . '/' . | |
$param1 . '/' . | |
$param2 . '/?' . | |
'authKey=' . urlencode($authKey) | |
); | |
// Decodifica a string JSON | |
$statistics = json_decode($statistics); | |
$totalVacancies = 0; | |
foreach ($statistics as $value) | |
{ | |
echo sprintf("\n%s (%s)", $value->label, $value->quantity); | |
// Incrementa o totalizador de vagas | |
$totalVacancies+=$value->quantity; | |
} | |
echo sprintf("\n\nTotal de vagas por cidade: %s vagas\n", $totalVacancies); | |
echo "\n"; | |
echo "\n"; | |
// | |
// Invoca o serviço que obtem as vagas | |
// Repare que precisamos do $authKey | |
// | |
// URL do serviço de obtenção de vagas | |
$vacancyService = 'hr.CurriculumWebService.getVacanciesByCriteria'; | |
// O filtro desejado | |
$param1 = '{"_tag": "emprego", "city": "São Paulo"}'; | |
// Total de registros por requisição | |
$param2 = 10; | |
// Offset (página) | |
$param3 = 0; | |
// Invoca o serviço de autenticação e armazena a chave de acesso | |
echo "\nObtendo vagas que sejam da área de TI ($param1)...\n"; | |
$itVacancies = file_get_contents( | |
$base . '/' . | |
$vacancyService . '/' . | |
urlencode($param1) . '/' . | |
$param2 . '/' . | |
$param3 . '/?' . | |
'authKey=' . urlencode($authKey) | |
); | |
// decodifica o resultado | |
$itVacancies = json_decode($itVacancies); | |
echo sprintf("\nListando as primeiras %d vagas encontradas: \n", count($itVacancies)); | |
foreach ($itVacancies as $value) | |
echo sprintf("\n%d vaga(s) para %s em %s - %s", $value->totalVacancies, $value->occupation, $value->city, $value->state); | |
echo "\n"; | |
echo "\n"; | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment