(PECL gupnp >= 0.1.0)
gupnp_control_point_callback_set — Устанавливает callback-функцию контрольной точки
$cpoint
, int $signal
, mixed $callback
[, mixed $arg
] ) : boolУстанавливает callback-функцию контрольной точки для сигнала.
cpoint
Идентификатор контрольной точки, возвращаемый gupnp_control_point_new().
signal
Значение сигнала. Сигнал может быть одним из следующих значений:
GUPNP_SIGNAL_DEVICE_PROXY_AVAILABLE
GUPNP_SIGNAL_DEVICE_PROXY_UNAVAILABLE
GUPNP_SIGNAL_SERVICE_PROXY_AVAILABLE
GUPNP_SIGNAL_SERVICE_PROXY_UNAVAILABLE
callback
Callback-функция для определенного сигнала. Обычно callback-функция
принимает два параметра. Идентификатор параметра proxy
является первым, а arg
- вторым.
arg
Пользовательские данные для callback
.
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Пример #1 Создать новый контекст UPnP и начать просмотр
<?php
function device_proxy_available_cb($proxy, $arg)
{
$info = gupnp_device_info_get($proxy);
$type = $info['device_type'];
$location = $info['location'];
printf("Доступное устройство:\n");
printf("тип: %s\n", $type);
printf("расположение: %s\n", $location);
}
/* Создать контекст UPnP */
$context = gupnp_context_new();
if (!$context) {
die("Ошибка создания контекста GUPnP\n");
}
/* Нам все интересно */
$cp = gupnp_control_point_new($context, "ssdp:all");
gupnp_control_point_callback_set($cp,
GUPNP_SIGNAL_DEVICE_PROXY_AVAILABLE, 'device_proxy_available_cb');
/* Начать просмотр */
gupnp_control_point_browse_start($cp);
?>
Выдает E_WARNING с недопустимой callback-функцией.