Search in sources :

Example 26 with UDAServiceId

use of org.teleal.cling.model.types.UDAServiceId in project openhab1-addons by openhab.

the class SonosZonePlayer method saveQueue.

public boolean saveQueue(String name, String queueID) {
    if (name != null && queueID != null && isConfigured()) {
        Service service = device.findService(new UDAServiceId("AVTransport"));
        Action action = service.getAction("SaveQueue");
        ActionInvocation invocation = new ActionInvocation(action);
        try {
            invocation.setInput("Title", name);
            invocation.setInput("ObjectID", queueID);
        } catch (InvalidValueException ex) {
            logger.error("Action Invalid Value Exception {}", ex.getMessage());
        } catch (NumberFormatException ex) {
            logger.error("Action Invalid Value Format Exception {}", ex.getMessage());
        }
        executeActionInvocation(invocation);
        return true;
    } else {
        return false;
    }
}
Also used : InvalidValueException(org.teleal.cling.model.types.InvalidValueException) Action(org.teleal.cling.model.meta.Action) ActionInvocation(org.teleal.cling.model.action.ActionInvocation) Service(org.teleal.cling.model.meta.Service) UpnpService(org.teleal.cling.UpnpService) UDAServiceId(org.teleal.cling.model.types.UDAServiceId)

Example 27 with UDAServiceId

use of org.teleal.cling.model.types.UDAServiceId in project openhab1-addons by openhab.

the class SonosZonePlayer method addURIToQueue.

public boolean addURIToQueue(String URI, String meta, int desiredFirstTrack, boolean enqueueAsNext) {
    if (isConfigured() && URI != null && meta != null) {
        Service service = device.findService(new UDAServiceId("AVTransport"));
        Action action = service.getAction("AddURIToQueue");
        ActionInvocation invocation = new ActionInvocation(action);
        try {
            invocation.setInput("InstanceID", "0");
            invocation.setInput("EnqueuedURI", URI);
            invocation.setInput("EnqueuedURIMetaData", meta);
            invocation.setInput("DesiredFirstTrackNumberEnqueued", new UnsignedIntegerFourBytes(desiredFirstTrack));
            invocation.setInput("EnqueueAsNext", enqueueAsNext);
        } catch (InvalidValueException ex) {
            logger.error("Action Invalid Value Exception {}", ex.getMessage());
        } catch (NumberFormatException ex) {
            logger.error("Action Invalid Value Format Exception {}", ex.getMessage());
        }
        executeActionInvocation(invocation);
        return true;
    }
    return false;
}
Also used : InvalidValueException(org.teleal.cling.model.types.InvalidValueException) Action(org.teleal.cling.model.meta.Action) UnsignedIntegerFourBytes(org.teleal.cling.model.types.UnsignedIntegerFourBytes) ActionInvocation(org.teleal.cling.model.action.ActionInvocation) Service(org.teleal.cling.model.meta.Service) UpnpService(org.teleal.cling.UpnpService) UDAServiceId(org.teleal.cling.model.types.UDAServiceId)

Aggregations

UDAServiceId (org.teleal.cling.model.types.UDAServiceId)27 UpnpService (org.teleal.cling.UpnpService)26 Service (org.teleal.cling.model.meta.Service)26 ActionInvocation (org.teleal.cling.model.action.ActionInvocation)25 Action (org.teleal.cling.model.meta.Action)25 InvalidValueException (org.teleal.cling.model.types.InvalidValueException)12 SAXException (org.xml.sax.SAXException)3 PeriodFormatter (org.joda.time.format.PeriodFormatter)2 PeriodFormatterBuilder (org.joda.time.format.PeriodFormatterBuilder)2 SonosCommandType (org.openhab.binding.sonos.SonosCommandType)2 UnsignedIntegerFourBytes (org.teleal.cling.model.types.UnsignedIntegerFourBytes)2 ArrayList (java.util.ArrayList)1 Matcher (java.util.regex.Matcher)1 Pattern (java.util.regex.Pattern)1 IllegalClassException (org.apache.commons.lang.IllegalClassException)1 Period (org.joda.time.Period)1 DateTimeFormatter (org.joda.time.format.DateTimeFormatter)1 SonosBindingProvider (org.openhab.binding.sonos.SonosBindingProvider)1 Command (org.openhab.core.types.Command)1 BindingConfigParseException (org.openhab.model.item.binding.BindingConfigParseException)1