Esta é uma biblioteca PHP de terceiros que visa simplificar o uso do serviço web Vebra XML.
A versão atual da API é a versão 9.
NB: Esta biblioteca não é afiliada de forma alguma à Vebra.
Consulte o Guia do Usuário ou o esquema da API Vebra Versão 9 para obter mais informações.
PHP 5.3+
A biblioteca leve de solicitações HTTP do Buzz.
Se você estiver iniciando um novo projeto ou se o seu projeto existente não usa o compositor, baixe e instale-o:
curl -s http://getcomposer.org/installer | php
Crie um novo arquivo compositor.json com esta biblioteca como dependência:
{
"require" : {
"ydd/vebra" : " *@dev "
}
}
Se o seu projeto já estiver usando o compositor, edite o arquivo compositor.json no seu projeto e adicione esta biblioteca como uma dependência, conforme mostrado acima.
Instale as dependências do seu projeto usando o compositor:
php composer.phar install
Exija o autoloader do compositor em seu script ou código de inicialização:
<?php
require ' vendor/autoload.php ' ;
Para obter mais informações sobre o compositor, consulte o site do compositor.
As solicitações feitas ao webservice devem ser autenticadas. Inicialmente, isso é feito com seu nome de usuário e senha e o webservice retorna um token de autorização que deve ser armazenado e utilizado para todas as solicitações subsequentes. Se você não conseguir armazenar o token, não poderá fazer mais solicitações ao webservice até que o token de autenticação expire. O token de autenticação é válido por cerca de uma hora e o webservice retornará um cabeçalho 401 (Não autorizado) se você fizer uma solicitação com um token de autorização expirado. Nesse caso, a API irá autenticar novamente automaticamente e receberá um novo token de autenticação.
Para permitir esse comportamento, a biblioteca inclui uma classe de armazenamento de token padrão que salvará e carregará o token de um arquivo no sistema de arquivos local. Se quiser armazenar o token de maneira diferente (por exemplo, em um banco de dados), você poderá fornecer sua própria classe de armazenamento de token, que deve implementar TokenStorageInterface.
Para criar uma instância de YDDVebraTokenStorageFile, você passa o nome de usuário e o caminho para o diretório que deseja usar para armazenar os tokens (que devem ser graváveis). Para oferecer suporte a vários usuários, cada usuário possui seu próprio arquivo de token (derivado de um hash do nome de usuário).
$tokenStorage = new YDDVebraTokenStorageFile('username', __DIR__.'/tokens/');
Esta biblioteca leve de solicitações HTTP é usada para enviar solicitações HTTP para/retornar respostas HTTP do serviço da web. O Buzz tem alguns clientes para escolher (FileGetContents/Curl) e outros podem ser adicionados no futuro. Você precisa criar uma instância do cliente Buzz que deseja usar e uma instância do BuzzMessageFactory (usado pela API para criar um objeto Response).
Agora que temos os parâmetros e objetos necessários, podemos criar uma instância da API:
use YDDVebraAPI as VebraAPI;
use YDDVebraTokenStorageFile as TokenStorageFile;
use BuzzClientCurl as BuzzClientCurl;
use BuzzMessageFactoryFactory as BuzzMessageFactory;
$api = new VebraAPI(
'datafeedid',
'username',
'password',
new TokenStorageFile('username', __DIR__.'/tokens/'),
new BuzzClientCurl(),
new BuzzMessageFactory()
);
Recupere todas as ramificações (como uma coleção iterável de objetos de resumo de ramificação):
$branchSummaries = $api->getBranches();
Itere sobre os objetos de resumo da ramificação e recupere os objetos da ramificação para cada um deles:
foreach ($branchSummaries as $branchSummary) {
$branch = $api->getBranch($branchSummary->getClientId());
}
O objeto branch retornado possui acessadores para cada uma das propriedades:
echo $branch->getName();
Recuperar as propriedades de um determinado branch (como uma coleção iterável de objetos de resumo de propriedades):
$propertySummaries = $api->getPropertyList($branch->getClientId());
Itere sobre os objetos de resumo de propriedades e recupere objetos de propriedades para cada um deles:
foreach ($propertySummaries as $propertySummary) {
$property = $api->getProperty($branch->getClientId(), $propertySummary->getPropId());
}
O objeto de propriedade retornado possui acessadores para cada uma das propriedades:
echo $property->getAddress();
Recuperar propriedades que foram alteradas desde uma determinada data:
$properties = $api->getChangedProperties(new DateTime('2012-01-01'));
Recuperar arquivos que foram alterados desde uma determinada data:
$files = $api->getChangedFiles(new DateTime('2012-01-01'));
Damon Jones - [email protected]
Matthew Davis [email protected]
Vebra PHP API Wrapper é licenciado sob a licença MIT - consulte o arquivo LICENSE para obter detalhes