Examples of DigitalSTROMBindingConfig


Examples of org.openhab.binding.digitalstrom.internal.config.DigitalSTROMBindingConfig

 
 
  protected DigitalSTROMBindingConfig parseBindingConfigString(String context, Item item,
      String bindingConfig) throws BindingConfigParseException{
   
    DigitalSTROMBindingConfig configItem = new DigitalSTROMBindingConfig();
    configItem.init(item, bindingConfig);
   
    if (!configItem.isValid()) {
      throw new BindingConfigParseException("itemType mismatch ... wrong item:"+item.getName()+" for digitalstrom hardware");
    }
    return configItem;
  }
View Full Code Here

Examples of org.openhab.binding.digitalstrom.internal.config.DigitalSTROMBindingConfig

  @Override
  public List<String> getItemNamesByDsid(String dsid) {
    List<String> itemNames = new ArrayList<String>();
    for (BindingConfig bindingConf : bindingConfigs.values()) {
      DigitalSTROMBindingConfig digitalSTROM2BindingConf = (DigitalSTROMBindingConfig)bindingConf;
      if (digitalSTROM2BindingConf.dsid !=null && digitalSTROM2BindingConf.dsid.getValue().equals(dsid)) {
        itemNames.add(digitalSTROM2BindingConf.itemName);
      }
    }
    return itemNames;
View Full Code Here

Examples of org.openhab.binding.digitalstrom.internal.config.DigitalSTROMBindingConfig

  @Override
  public List<DigitalSTROMBindingConfig> getAllCircuitConsumptionItems() {
    List<DigitalSTROMBindingConfig> circuitConsumptionItems = new ArrayList<DigitalSTROMBindingConfig>();
    for (BindingConfig bindingConf : bindingConfigs.values()) {
      DigitalSTROMBindingConfig digitalSTROM2BindingConf = (DigitalSTROMBindingConfig)bindingConf;
      if (digitalSTROM2BindingConf.isValidMeterItem()) {
        circuitConsumptionItems.add(digitalSTROM2BindingConf);
      }
    }
    return circuitConsumptionItems;
  }
View Full Code Here

Examples of org.openhab.binding.digitalstrom.internal.config.DigitalSTROMBindingConfig

  @Override
  public List<DigitalSTROMBindingConfig> getAllDeviceConsumptionItems() {
    List<DigitalSTROMBindingConfig> deviceConsumptionItems = new ArrayList<DigitalSTROMBindingConfig>();
    for (BindingConfig bindingConf : bindingConfigs.values()) {
      DigitalSTROMBindingConfig digitalSTROM2BindingConf = (DigitalSTROMBindingConfig)bindingConf;
      if (digitalSTROM2BindingConf.isValidDeviceMeterItem()) {
        deviceConsumptionItems.add(digitalSTROM2BindingConf);
      }
    }
    return deviceConsumptionItems;
  }
View Full Code Here

Examples of org.openhab.binding.digitalstrom.internal.config.DigitalSTROMBindingConfig

     
      Collection<String> itemNames=provider.getItemNames();
   
      //initialize devices
      for (String itemName : itemNames){
        DigitalSTROMBindingConfig confItem = getConfigForItemName(itemName);
        if (confItem != null && confItem.dsid != null) {
          if (rawDsidToDeviceMap.size() == 0 && serverIsFound()) {
            rawDsidToDeviceMap = getAllDigitalSTROMDevicesMap();
          }
          Device device = rawDsidToDeviceMap.get(confItem.dsid.getValue());
View Full Code Here

Examples of org.openhab.binding.digitalstrom.internal.config.DigitalSTROMBindingConfig

        if (percent != -1) {
          if (percent > -1 && percent < 101) {

            if (device.getOutputMode().equals(OutputModeEnum.SLAT)) {

              DigitalSTROMBindingConfig confItem = getConfigForItemName(itemName);
              if (confItem != null) {

                if (confItem.context != null
                    && confItem.context
                        .equals(ContextConfig.slat)) {

                  int old = device.getSlatPosition();
                  device.setSlatPosition(fromPercentToValue(
                      percent,
                      device.getMaxSlatPosition()));

                  boolean transmitted = digitalSTROM
                      .setDeviceOutputValue(
                          getSessionToken(),
                          device.getDSID(),
                          null,
                          DeviceConstants.DEVICE_SENSOR_SLAT_OUTPUT,
                          fromPercentToValue(
                              percent,
                              device.getMaxSlatPosition()));
                  if (!transmitted) {
                    device.setSlatPosition(old);
                    logger.error("could NOT successfully set new value for slats ..."
                        + cm.toString());
                  }
                } else {

                  int old = device.getOutputValue();

                  device.setOutputValue(fromPercentToValue(
                      percent, device.getMaxOutPutValue()));

                  boolean transmitted = digitalSTROM
                      .setDeviceValue(
                          getSessionToken(),
                          device.getDSID(),
                          null,
                          fromPercentToValue(
                              percent,
                              device.getMaxOutPutValue()));
                  if (!transmitted) {
                    device.setOutputValue(old);
                    logger.error("could NOT successfully set new value ..."
                        + cm.toString());
                  }

                }
              }

            } else {

              int old = device.getOutputValue();

              device.setOutputValue(fromPercentToValue(percent,
                  device.getMaxOutPutValue()));

              boolean transmitted = digitalSTROM.setDeviceValue(
                  getSessionToken(),
                  device.getDSID(),
                  null,
                  fromPercentToValue(percent,
                      device.getMaxOutPutValue()));
              if (!transmitted) {
                device.setOutputValue(old);
                logger.error("could NOT successfully set new value ..."
                    + cm.toString());
              }

            }
          }
        }
      } else if (cm instanceof org.openhab.core.library.types.StopMoveType) {

        if (device.getOutputMode().equals(OutputModeEnum.SLAT)) {

          DigitalSTROMBindingConfig confItem = getConfigForItemName(itemName);
          if (confItem != null) {
            if (confItem.context != null
                && confItem.context.equals(ContextConfig.slat)) {
              logger.warn("stop and move command NOT possible for slats, use PercentType command or up and down please");
            } else {
              handleStopMoveForRollershutter(device, cm);
            }
          }
        } else if (device.getOutputMode()
            .equals(OutputModeEnum.UP_DOWN)) {
          handleStopMoveForRollershutter(device, cm);
        }
      } else if (cm instanceof org.openhab.core.library.types.UpDownType) {

        if (device.getOutputMode().equals(OutputModeEnum.SLAT)) {

          // 255 is max open, 0 is closed
          DigitalSTROMBindingConfig confItem = getConfigForItemName(itemName);
          if (confItem != null) {

            if (confItem.context != null
                && confItem.context.equals(ContextConfig.slat)) {

              if (((org.openhab.core.library.types.UpDownType) cm)
                  .equals(UpDownType.UP)) {

                int slatPosition = device.getSlatPosition();
                int newPosition = slatPosition
                    + DeviceConstants.MOVE_STEP_SLAT;
                if (newPosition > device.getMaxSlatPosition()) {
                  newPosition = device.getMaxSlatPosition();
                }

                boolean transmitted = digitalSTROM
                    .setDeviceOutputValue(
                        getSessionToken(),
                        device.getDSID(),
                        null,
                        DeviceConstants.DEVICE_SENSOR_SLAT_OUTPUT,
                        newPosition);
                if (transmitted) {
                  device.setSlatPosition(newPosition);
                }

              } else if (((org.openhab.core.library.types.UpDownType) cm)
                  .equals(UpDownType.DOWN)) {

                int slatPosition = device.getSlatPosition();
                int newPosition = slatPosition
                    - DeviceConstants.MOVE_STEP_SLAT;
                if (newPosition < device.getMinSlatPosition()) {
                  newPosition = device.getMinSlatPosition();
                }
                boolean transmitted = digitalSTROM
                    .setDeviceOutputValue(
                        getSessionToken(),
                        device.getDSID(),
                        null,
                        DeviceConstants.DEVICE_SENSOR_SLAT_OUTPUT,
                        newPosition);

                if (transmitted) {
                  device.setSlatPosition(newPosition);
                }
              }
            } else {
              handleUpDownForRollershutter(device, cm);
            }
          }

        } else if (device.getOutputMode()
            .equals(OutputModeEnum.UP_DOWN)) {
          handleUpDownForRollershutter(device, cm);
        } else {
          logger.warn("Wrong item configuration ... this hardware is not a rollershutter: "
              + itemName);
        }
      }

    } else {

      // this item is not mapped to real hardware, it is to make scene
      // calls (as they are known in digitalSTROM)

      if (cm instanceof DecimalType) {
        DigitalSTROMBindingConfig confItem = getConfigForItemName(itemName);
        if (confItem != null && confItem.context != null) {
          if (confItem.context.equals(ContextConfig.apartment)) {
            digitalSTROM.callApartmentScene(getSessionToken(),
                confItem.groupID, null, ApartmentSceneEnum
                    .getApartmentScene(((DecimalType) cm)
                        .intValue()), false);
          } else if (confItem.context.equals(ContextConfig.zone)) {
            digitalSTROM.callZoneScene(getSessionToken(),
                confItem.zoneID, null, confItem.groupID, null,
                ZoneSceneEnum.getZoneScene(((DecimalType) cm)
                    .intValue()), false);
          }
        }
      } else if (cm instanceof StringType) {
        DigitalSTROMBindingConfig confItem = getConfigForItemName(itemName);
        if (confItem != null && confItem.context != null) {
          int scene = -1;
          try {
            scene = Integer.parseInt(cm.toString());
          } catch (java.lang.NumberFormatException e) {
View Full Code Here

Examples of org.openhab.binding.digitalstrom.internal.config.DigitalSTROMBindingConfig

          state = device.getOutputValue() > 0 ? OnOffType.ON
              : OnOffType.OFF;
        } else if (item instanceof NumberItem) {

          DigitalSTROMBindingConfig confItem = getConfigForItemName(item
              .getName());
          if (confItem != null) {
            if (confItem.consumption != null) {

              int value = -1;
              switch (confItem.consumption) {

              case ACTIVE_POWER:
                value = device.getPowerConsumption();

                if (value != -1) {
                  state = new DecimalType(value);
                }
                break;
              case OUTPUT_CURRENT:
                value = device.getEnergyMeterValue();

                if (value != -1) {
                  state = new DecimalType(value);
                }
                break;
              default:
                break;

              }
            }
          }
        } else if (item instanceof RollershutterItem) {

          DigitalSTROMBindingConfig confItem = getConfigForItemName(item
              .getName());
          if (confItem != null) {

            if (confItem.context != null
                && confItem.context.equals(ContextConfig.slat)) {

              int output = getPercent(
                  device.getMaxSlatPosition(),
                  device.getSlatPosition());

              state = new PercentType(100 - output);
            } else if (confItem.context != null
                && confItem.context
                    .equals(ContextConfig.awning)) {

              int output = getPercent(device.getMaxOutPutValue(),
                  device.getOutputValue());

              state = new PercentType(output);
            } else {
              int output = getPercent(device.getMaxOutPutValue(),
                  device.getOutputValue());

              state = new PercentType(100 - output);
            }
          }
        } else if (item instanceof StringItem) {
          DigitalSTROMBindingConfig confItem = getConfigForItemName(item
              .getName());
          if (confItem != null) {

            if (confItem.consumption != null) {
              int value = -1;
View Full Code Here

Examples of org.openhab.binding.digitalstrom.internal.config.DigitalSTROMBindingConfig

        }
      }
      deviceMap.remove(itemName);
     
      //initialize the device
      DigitalSTROMBindingConfig confItem = getConfigForItemName(itemName);
      if (confItem != null && confItem.dsid != null) {
        if (rawDsidToDeviceMap.size() == 0 && serverIsFound()) {
          rawDsidToDeviceMap = getAllDigitalSTROMDevicesMap();
        }
        device = rawDsidToDeviceMap.get(confItem.dsid.getValue());
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.