jhamnerx/wialon-api-php

PHP client for the Wialon API.

Installs: 4

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

pkg:composer/jhamnerx/wialon-api-php

dev-main 2025-10-23 00:21 UTC

This package is auto-updated.

Last update: 2025-11-23 02:47:58 UTC


README

Cliente PHP para la API de Wialon.

Nota: Este paquete es un fork de xint0/wialon-php publicado únicamente para uso personal en proyectos propios. Se le han realizado mejoras y actualizaciones específicas para necesidades particulares.

Instalación

Requisitos

  • PHP 8.1 o superior.
  • Implementación de cliente HTTP PSR-18.

Instalar usando Composer

Instalar con el adaptador Guzzle 7:

composer require jhamnerx/wialon-api-php php-http/guzzle7-adapter

Si ya tienes un cliente PSR-18 en tu proyecto, puedes instalar solo el cliente de la API de Wialon:

composer require jhamnerx/wialon-api-php

Cómo usar

Autenticación con token

Primero sigue las instrucciones en la documentación del SDK de Wialon para obtener un token de autenticación.

Iniciar sesión en el servicio Wialon

use Jhamnerx\WialonApiPhp\Wialon;
use Jhamnerx\WialonApiPhp\WialonException;

// Puedes especificar un host personalizado.
$baseUri = 'https://hst-api.wialon.com';

$wialon = new Wialon($baseUri);

try {
    $token = 'tu token de autenticación';
    $wialon->login($token);
    // Después de iniciar sesión se retorna un ID de sesión.
    $wialon->sessionId();
} catch (WialonException $exception) {
    // WialonException se lanza cuando la petición falla o el servicio retorna un error.
}

Cerrar sesión

use Jhamnerx\WialonApiPhp\Wialon;
use Jhamnerx\WialonApiPhp\WialonException;

$token = 'token';

$wialon = new Wialon();

$wialon->login($token);
$wialon->logout();

$wialon->sessionId(); // Retorna `null` después de cerrar sesión.

Obtener unidad por nombre

use Jhamnerx\WialonApiPhp\Wialon;
use Jhamnerx\WialonApiPhp\WialonException;

$token = 'token';

$wialon = new Wialon();

$wialon->login($token);

$data = $wialon->unitByName('Nombre de unidad'); // Retorna un array asociativo con los datos de respuesta.

Obtener ubicación por coordenadas

use Jhamnerx\WialonApiPhp\Wialon;
use Jhamnerx\WialonApiPhp\WialonException;

$token = 'token';

$wialon = new Wialon();

$wialon->login($token);

$longitude = -111.004287;
$latitude = 30.6141861;
$format = '32100';
$data = $wialon->getLocations($longitude, $latitude, $format); // Retorna un array asociativo con los datos de respuesta.

/*
$data == ["Magdalena, Sonora, Mexico"]
*/

Buscar múltiples unidades por IDs

use Jhamnerx\WialonApiPhp\Wialon;

$wialon = new Wialon();
$wialon->login($token);

// Array de IDs de dispositivos
$devices_actives = ['123456', '789012', '345678'];

// Convertir a string con separador |
$propValueMask = implode('|', $devices_actives); // "123456|789012|345678"

// Buscar todas las unidades con esos IDs
$response = $wialon->searchItems('avl_unit', 'sys_id', $propValueMask);

// $response['items'] contendrá todas las unidades que coincidan

Licencia

El cliente de la API de Wialon es software de código abierto licenciado bajo la licencia MIT.

Créditos

Este paquete es un fork de xint0/wialon-php creado por Rogelio Jacinto. Agradecemos su trabajo original que sirvió como base para este proyecto.