SunshinePHP Developer Conference 2015

gupnp_control_point_callback_set

(PECL gupnp >= 0.1.0)

gupnp_control_point_callback_setEstablece el punto de control callback

Descripción

bool gupnp_control_point_callback_set ( resource $cpoint , int $signal , mixed $callback [, mixed $arg ] )

Establece el punto de control de la función callback por cada señal.

Parámetros

cpoint

Un identificador de punto de control, devuelto por gupnp_control_point_new().

signal

El valor de la señal. La señal puede ser uno de los siguientes valores:

GUPNP_SIGNAL_DEVICE_PROXY_AVAILABLE
Emitido siempre que un nuevo dispositivo esté disponible.
GUPNP_SIGNAL_DEVICE_PROXY_UNAVAILABLE
Emitido siempre que un dispositivo ha dejado de estar disponible.
GUPNP_SIGNAL_SERVICE_PROXY_AVAILABLE
Emitido siempre que un nuevo servicio esté disponible.
GUPNP_SIGNAL_SERVICE_PROXY_UNAVAILABLE
Emitido siempre que un servicio ha dejado de estar disponible.

callback

La función callback para cierta señal. Típicamente, la función calback carga dos parámetros. El primero es el de identificador del proxy y el segundo es el arg.

arg

Dato de usuario para el callback.

Valores devueltos

Devuelve TRUE en caso de éxito o FALSE en caso de error.

Ejemplos

Ejemplo #1 Crea un nuevo contexto UPnP e inicia el navegador

<?php

function device_proxy_available_cb($proxy$arg)
{
    
$info gupnp_device_info_get($proxy);

    
$type $info['device_type'];
    
$location $info['location'];

    
printf("Dispositivo Disponible:\n");
    
printf("tipo:     %s\n"$type);
    
printf("ubicación: %s\n"$location);
}

/* Crea un contexto UPnP */
$context gupnp_context_new();

if (!
$context) {
 die(
"error creando el contexto GUPnP\n");
}

/* Estamos interesados en todo */
$cp gupnp_control_point_new($context"ssdp:all");

gupnp_control_point_callback_set($cp,
    
GUPNP_SIGNAL_DEVICE_PROXY_AVAILABLE'device_proxy_available_cb');

/* Empieza a navegar */
gupnp_control_point_browse_start($cp);

?>

Errores/Excepciones

Lanza un E_WARNING cuando la función callback es inválida.

Ver también

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top