Exemple #1
0
 public function getDevices($request)
 {
     Logger::debug(__METHOD__, self::$logfile);
     $service = isset($request['service']) ? $request['service'] : null;
     $this->respond(UPnP::getDevices($service));
 }
Exemple #2
0
foreach ($devices as $uid => $data) {
    $device = UPnP::getDevice($uid);
    $icon = null;
    $name = $device->getName();
    $icons = $device->getIcons();
    if (count($icons) > 0) {
        $first = array_shift($icons);
        $icon = $first->url;
    }
    $deviceList[$uid] = (object) array('name' => $name, 'icon' => $icon);
}
$device = null;
try {
    if (isset($_GET['d'])) {
        $d = $_GET['d'];
        $device = UPnP::getDevice($d);
        $services = $device->getServices();
        if (isset($_GET['s'])) {
            $serviceCode = $_GET['s'];
            $client = $device->getClient($serviceCode);
            $service = $device->getService($serviceCode);
            $actions = $service->getActions();
            if (isset($_GET['a'])) {
                $actionName = $_GET['a'];
                if (isset($actions[$actionName])) {
                    $action = $actions[$actionName];
                    foreach ($action as &$direction) {
                        foreach ($direction as &$method) {
                            $method['param'] = 'str';
                            if (isset($method['relatedStateVariable'])) {
                                $var = $service->getStateVar($method['relatedStateVariable']);
Exemple #3
0
function pr($value)
{
    echo '<pre>';
    print_r($value);
    echo '</pre>';
}
require_once 'src/at/mkweb/upnp/init.php';
try {
    // Discover devices
    UPnP::findDevices();
    // Subscribe or renew subscription to AVTransport
    $devices = UPnP::getDevices('AVTransport');
    echo "Starting subscriptions\n";
    foreach ($devices as $uid => $device) {
        echo "Checking subscription for " . $uid . "\n";
        $device = UPnP::getDevice($uid);
        $current = $device->getSubscriptions();
        if (count($current) > 0) {
            foreach ($current as $uid) {
                echo "Renew\n";
                $device->unSubscribe($uid);
                $device->subscribe();
            }
        } else {
            echo "Create\n";
            $device->subscribe('AVTransport');
        }
    }
} catch (\Exception $e) {
    echo get_class($e) . ': ' . $e->getMessage();
}