def METHOD_NAME(address1: str,
                    address2: str, read_ext_input: int,
                    pv_module: str,
                    num: int) -> None:
    # für Openwb Version 1.9 können mit der bisherigen Parametrisierung zwei IP-Adressen ausgelesen werden
    # ebenso wird bei Speicheraufruf Speicher und PV ausgelesen
    # in openwb v2.0 geht nur noch eine IP Adresse und die Pv muss separat ausgelesen werden
    addresses = [address for address in [address1, address2] if address != "none"]
    read_ext = (read_ext_input == 1)
    log.debug('e3dc IP-Adresse1: %s', address1)
    log.debug('e3dc IP-Adresse2: %s', address2)
    log.debug('e3dc read_ext: %s', read_ext)
    log.debug('e3dc pv_module: %s', pv_module)
    log.debug('e3dc id: %d', num)
    soc = 0   # type: Union[int, float]
    power = 0
    pv_external = 0
    pv = 0
    pv_other = pv_module != "none"
    for address in addresses:
        log.debug("Ip: %s, read_external %s pv_other %s", address, read_ext, pv_other)
        with modbus.ModbusTcpClient_(address, port=502) as client:
            soc_tmp, power_tmp = read_bat(client)
            soc += soc_tmp
            power += power_tmp
            pv_tmp = read_inverter(client)
            if read_ext:
                pv_external_tmp = read_external_inverter(client)
            else:
                pv_external_tmp = 0
            pv += pv_tmp
            pv_external += pv_external_tmp
    soc /= len(addresses)
    log.debug("Soc %d power %d pv %d pv_external %d",
              soc, power, pv, pv_external)
    counter_import, counter_export = sim_count(power, prefix="speicher")
    get_bat_value_store(1).set(BatState(power=power, soc=soc, imported=counter_import, exported=counter_export))
    # pv_other sagt aus, ob WR definiert ist, und dessen PV Leistung auch gilt
    # wenn 0 gilt nur PV und pv_external aus e3dc
    pv_total = pv + pv_external
    # Wenn wr1 nicht definiert ist, gilt nur die PV Leistung die hier im Modul ermittelt wurde
    # als gesamte PV Leistung für wr1
    # Wenn wr1 definiert ist, gilt die bestehende PV Leistung aus Wr1 und das was hier im Modul ermittelt wurde
    # als gesamte PV Leistung für wr1
    if pv_other:
        pv_total = pv_total + files.pv[0].power.read()
    log.debug("wr update pv_other %s pv_total %d", pv_other, pv_total)
    _, exported_pv = sim_count(pv_total, prefix="pv")
    get_inverter_value_store(num).set(InverterState(exported=exported_pv, power=pv_total))