I want to store data directly to the influxdb as it is forecast data.
Until now I used an own function to call theAPI from influxdb directly. I would like to replace this by inbuilt functionality
https://habapp.readthedocs.io/en/23.09.2/interface_openhab.html#HABApp.openhab.interface_sync.set_persistence_data
But how is the correct way to use it?
def SetPersistData(
self,
PersistItem: str | OpenhabItem,
Time: Optional[datetime] = None,
Value: Optional[int | float | str] = None,
) -> None:
if isinstance(PersistItem, str):
PersistItem = OpenhabItem.get_item(PersistItem)
# PersistItem.set_persistence_data("influxdb", time=Time, state=Value)
# -> AttributeError: 'NumberItem' object has no attribute 'set_persistence_data'
self.oh.set_persistence_data(PersistItem, "influxdb", time=Time, state=Value)
return
This leads to that error:
2023-12-25 18:05:26.611 [INFO ] [Rule.TestEnv ] - TestExecuteRule: Test wird durchgefĂĽhrt
2023-12-25 18:05:26.966 [ERROR] [HABApp.Worker ] - Error in TestEnv.TestExecuteRule: aiohttp.client.ClientSession._request() got multiple values for keyword argument 'params'
2023-12-25 18:05:26.967 [ERROR] [HABApp.Worker ] - File "/etc/openhab/habapp/rules/test/TestEnvironment.py", line 95 in TestExecuteRule
2023-12-25 18:05:26.967 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:26.967 [ERROR] [HABApp.Worker ] - 86 | def TestExecuteRule(self, event: ItemCommandEvent) -> None:
2023-12-25 18:05:26.967 [ERROR] [HABApp.Worker ] - (...)
2023-12-25 18:05:26.968 [ERROR] [HABApp.Worker ] - 91 | # Switch zurĂĽcksetzen
2023-12-25 18:05:26.968 [ERROR] [HABApp.Worker ] - 92 | self.TestCommandItem.off()
2023-12-25 18:05:26.968 [ERROR] [HABApp.Worker ] - 94 | # eigentliche Funktion ausfĂĽhren
2023-12-25 18:05:26.968 [ERROR] [HABApp.Worker ] - --> 95 | self.TestRuleContent()
2023-12-25 18:05:26.969 [ERROR] [HABApp.Worker ] - 97 | return
2023-12-25 18:05:26.969 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.969 [ERROR] [HABApp.Worker ] - self = <TestEnvironment TestEnv>
2023-12-25 18:05:26.970 [ERROR] [HABApp.Worker ] - self.log = <Logger Rule.TestEnv (DEBUG)>
2023-12-25 18:05:26.970 [ERROR] [HABApp.Worker ] - self.TestCommandItem = <SwitchItem name: swi_System_Test_HABApp, value: ON, last_change: 2023-12-25T18:05:26.626985, last_update: 2023-12-25T18:05:26.626985>
2023-12-25 18:05:26.971 [ERROR] [HABApp.Worker ] - event = <ItemCommandEvent name: swi_System_Test_HABApp, value: ON>
2023-12-25 18:05:26.971 [ERROR] [HABApp.Worker ] - LOGGER = 'TestExecuteRule: '
2023-12-25 18:05:26.972 [ERROR] [HABApp.Worker ] - LOGGER + "Test wird durchgefĂĽhrt" = 'TestExecuteRule: Test wird durchgefĂĽhrt'
2023-12-25 18:05:26.972 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.973 [ERROR] [HABApp.Worker ] -
2023-12-25 18:05:26.973 [ERROR] [HABApp.Worker ] - File "/etc/openhab/habapp/rules/test/TestEnvironment.py", line 105 in TestRuleContent
2023-12-25 18:05:26.973 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:26.973 [ERROR] [HABApp.Worker ] - 100 | def TestRuleContent(self) -> None:
2023-12-25 18:05:26.974 [ERROR] [HABApp.Worker ] - 101 | LOGGER: Final[str] = "{}: ".format(inspect.currentframe().f_code.co_name)
2023-12-25 18:05:26.974 [ERROR] [HABApp.Worker ] - 103 | # Beginn vom eigentlichen CodeUtils
2023-12-25 18:05:26.974 [ERROR] [HABApp.Worker ] - 104 | P: InfluxDB_Persistence_LowLevel = self.get_rule("InfluxDB_Persistence_LowLevel")
2023-12-25 18:05:26.975 [ERROR] [HABApp.Worker ] - --> 105 | P.SetPersistData("num_Weather_Temp", datetime.now() + timedelta(minutes=10), 30)
2023-12-25 18:05:26.975 [ERROR] [HABApp.Worker ] - 107 | # Ende vom eigentlichen Code
2023-12-25 18:05:26.975 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.975 [ERROR] [HABApp.Worker ] - LOGGER = 'TestRuleContent: '
2023-12-25 18:05:26.976 [ERROR] [HABApp.Worker ] - P = <InfluxDB_Persistence_LowLevel>
2023-12-25 18:05:26.976 [ERROR] [HABApp.Worker ] - self = <TestEnvironment TestEnv>
2023-12-25 18:05:26.976 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.977 [ERROR] [HABApp.Worker ] -
2023-12-25 18:05:26.977 [ERROR] [HABApp.Worker ] - File "/etc/openhab/habapp/rules/persistence/persistence_influxdb_lowlevel.py", line 248 in SetPersistData
2023-12-25 18:05:26.977 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:26.977 [ERROR] [HABApp.Worker ] - 238 | def SetPersistData(
2023-12-25 18:05:26.978 [ERROR] [HABApp.Worker ] - 239 | self,
2023-12-25 18:05:26.978 [ERROR] [HABApp.Worker ] - (...)
2023-12-25 18:05:26.978 [ERROR] [HABApp.Worker ] - 242 | Value: Optional[int | float | str] = None,
2023-12-25 18:05:26.978 [ERROR] [HABApp.Worker ] - 243 | ) -> None:
2023-12-25 18:05:26.979 [ERROR] [HABApp.Worker ] - 244 | if isinstance(PersistItem, str):
2023-12-25 18:05:26.980 [ERROR] [HABApp.Worker ] - 245 | PersistItem = OpenhabItem.get_item(PersistItem)
2023-12-25 18:05:26.980 [ERROR] [HABApp.Worker ] - 247 | # PersistItem.set_persistence_data(time=Time, state=Value)
2023-12-25 18:05:26.980 [ERROR] [HABApp.Worker ] - --> 248 | self.oh.set_persistence_data(PersistItem, "influxdb", time=Time, state=Value)
2023-12-25 18:05:26.981 [ERROR] [HABApp.Worker ] - 250 | return
2023-12-25 18:05:26.981 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.982 [ERROR] [HABApp.Worker ] - PersistItem = <NumberItem name: num_Weather_Temp, value: 6.49, last_change: 2023-12-25T18:00:32.222764, last_update: 2023-12-25T18:03:32.252971>
2023-12-25 18:05:26.982 [ERROR] [HABApp.Worker ] - self = <InfluxDB_Persistence_LowLevel>
2023-12-25 18:05:26.983 [ERROR] [HABApp.Worker ] - Time = datetime.datetime(2023, 12, 25, 18, 15, 26, 622435)
2023-12-25 18:05:26.984 [ERROR] [HABApp.Worker ] - Value = 30
2023-12-25 18:05:26.984 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.984 [ERROR] [HABApp.Worker ] -
2023-12-25 18:05:26.985 [ERROR] [HABApp.Worker ] - File "/opt/habapp/lib/python3.11/site-packages/HABApp/openhab/connection/handler/func_sync.py", line 231 in set_persistence_data
2023-12-25 18:05:26.985 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:26.985 [ERROR] [HABApp.Worker ] - 218 | def set_persistence_data(item: str | ItemRegistryItem, persistence: str | None, time: datetime.datetime, state: Any):
2023-12-25 18:05:26.985 [ERROR] [HABApp.Worker ] - (...)
2023-12-25 18:05:26.986 [ERROR] [HABApp.Worker ] - 227 | assert isinstance(item, (str, ItemRegistryItem)), type(item)
2023-12-25 18:05:26.986 [ERROR] [HABApp.Worker ] - 228 | assert isinstance(persistence, str) or persistence is None, persistence
2023-12-25 18:05:26.987 [ERROR] [HABApp.Worker ] - 229 | assert isinstance(time, datetime.datetime), time
2023-12-25 18:05:26.987 [ERROR] [HABApp.Worker ] - --> 231 | return run_coro_from_thread(
2023-12-25 18:05:26.987 [ERROR] [HABApp.Worker ] - 232 | async_set_persistence_data(item=item, persistence=persistence, time=time, state=state),
2023-12-25 18:05:26.987 [ERROR] [HABApp.Worker ] - 233 | calling=set_persistence_data
2023-12-25 18:05:26.988 [ERROR] [HABApp.Worker ] - 234 | )
2023-12-25 18:05:26.988 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.988 [ERROR] [HABApp.Worker ] - type(item) = <class 'HABApp.openhab.items.number_item.NumberItem'>
2023-12-25 18:05:26.988 [ERROR] [HABApp.Worker ] - (str, ItemRegistryItem) = (<class 'str'>, <class 'HABApp.core.internals.item_registry.item_registry_item.ItemRegistryItem'>)
2023-12-25 18:05:26.989 [ERROR] [HABApp.Worker ] - item = <NumberItem name: num_Weather_Temp, value: 6.49, last_change: 2023-12-25T18:00:32.222764, last_update: 2023-12-25T18:03:32.252971>
2023-12-25 18:05:26.989 [ERROR] [HABApp.Worker ] - persistence = 'influxdb'
2023-12-25 18:05:26.989 [ERROR] [HABApp.Worker ] - state = 30
2023-12-25 18:05:26.989 [ERROR] [HABApp.Worker ] - time = datetime.datetime(2023, 12, 25, 18, 15, 26, 622435)
2023-12-25 18:05:26.990 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.990 [ERROR] [HABApp.Worker ] -
2023-12-25 18:05:26.990 [ERROR] [HABApp.Worker ] - File "/opt/habapp/lib/python3.11/site-packages/HABApp/core/asyncio.py", line 76 in run_coro_from_thread
2023-12-25 18:05:26.990 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:26.991 [ERROR] [HABApp.Worker ] - 70 | def run_coro_from_thread(coro: _Coroutine[_Any, _Any, _CORO_RET], calling: _Callable) -> _CORO_RET:
2023-12-25 18:05:26.991 [ERROR] [HABApp.Worker ] - 71 | # This function call is blocking, so it can't be called in the async context
2023-12-25 18:05:26.992 [ERROR] [HABApp.Worker ] - 72 | if async_context.get(None) is not None:
2023-12-25 18:05:26.992 [ERROR] [HABApp.Worker ] - 73 | raise AsyncContextError(calling)
2023-12-25 18:05:26.992 [ERROR] [HABApp.Worker ] - 75 | fut = _run_coroutine_threadsafe(coro, loop)
2023-12-25 18:05:26.993 [ERROR] [HABApp.Worker ] - --> 76 | return fut.result()
2023-12-25 18:05:26.993 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.993 [ERROR] [HABApp.Worker ] - _run_coroutine_threadsafe = <function run_coroutine_threadsafe at 0x760e7d48>
2023-12-25 18:05:26.993 [ERROR] [HABApp.Worker ] - async_context = <ContextVar name='async_ctx' at 0x74d72178>
2023-12-25 18:05:26.994 [ERROR] [HABApp.Worker ] - calling = <function set_persistence_data at 0x74c209d8>
2023-12-25 18:05:26.994 [ERROR] [HABApp.Worker ] - coro = <coroutine object async_set_persistence_data at 0x707c3930>
2023-12-25 18:05:26.994 [ERROR] [HABApp.Worker ] - fut = <Future at 0x6b7df4d0 state=finished raised TypeError>
2023-12-25 18:05:26.994 [ERROR] [HABApp.Worker ] - loop = <_UnixSelectorEventLoop running=True closed=False debug=True>
2023-12-25 18:05:26.995 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.995 [ERROR] [HABApp.Worker ] -
2023-12-25 18:05:26.995 [ERROR] [HABApp.Worker ] - File "/usr/lib/python3.11/concurrent/futures/_base.py", line 456 in result
2023-12-25 18:05:26.995 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:26.996 [ERROR] [HABApp.Worker ] - 428 | def result(self, timeout=None):
2023-12-25 18:05:26.996 [ERROR] [HABApp.Worker ] - (...)
2023-12-25 18:05:26.996 [ERROR] [HABApp.Worker ] - 453 | if self._state in [CANCELLED, CANCELLED_AND_NOTIFIED]:
2023-12-25 18:05:26.996 [ERROR] [HABApp.Worker ] - 454 | raise CancelledError()
2023-12-25 18:05:26.997 [ERROR] [HABApp.Worker ] - 455 | elif self._state == FINISHED:
2023-12-25 18:05:26.997 [ERROR] [HABApp.Worker ] - --> 456 | return self.__get_result()
2023-12-25 18:05:26.997 [ERROR] [HABApp.Worker ] - 457 | else:
2023-12-25 18:05:26.997 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:26.998 [ERROR] [HABApp.Worker ] - [CANCELLED, CANCELLED_AND_NOTIFIED] = ['CANCELLED', 'CANCELLED_AND_NOTIFIED']
2023-12-25 18:05:26.998 [ERROR] [HABApp.Worker ] - CANCELLED = 'CANCELLED'
2023-12-25 18:05:26.998 [ERROR] [HABApp.Worker ] - CANCELLED_AND_NOTIFIED = 'CANCELLED_AND_NOTIFIED'
2023-12-25 18:05:26.998 [ERROR] [HABApp.Worker ] - FINISHED = 'FINISHED'
2023-12-25 18:05:26.999 [ERROR] [HABApp.Worker ] - self = None
2023-12-25 18:05:26.999 [ERROR] [HABApp.Worker ] - timeout = None
2023-12-25 18:05:27.000 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:27.000 [ERROR] [HABApp.Worker ] -
2023-12-25 18:05:27.000 [ERROR] [HABApp.Worker ] - File "/usr/lib/python3.11/concurrent/futures/_base.py", line 401 in __get_result
2023-12-25 18:05:27.001 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:27.001 [ERROR] [HABApp.Worker ] - 398 | def __get_result(self):
2023-12-25 18:05:27.001 [ERROR] [HABApp.Worker ] - 399 | if self._exception:
2023-12-25 18:05:27.001 [ERROR] [HABApp.Worker ] - 400 | try:
2023-12-25 18:05:27.002 [ERROR] [HABApp.Worker ] - --> 401 | raise self._exception
2023-12-25 18:05:27.002 [ERROR] [HABApp.Worker ] - 402 | finally:
2023-12-25 18:05:27.002 [ERROR] [HABApp.Worker ] - 403 | # Break a reference cycle with the exception in self._exception
2023-12-25 18:05:27.002 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:27.003 [ERROR] [HABApp.Worker ] - self = None
2023-12-25 18:05:27.003 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:27.003 [ERROR] [HABApp.Worker ] -
2023-12-25 18:05:27.003 [ERROR] [HABApp.Worker ] - File "/opt/habapp/lib/python3.11/site-packages/HABApp/openhab/connection/handler/func_async.py", line 398 in async_set_persistence_data
2023-12-25 18:05:27.004 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:27.004 [ERROR] [HABApp.Worker ] - 382 | async def async_set_persistence_data(item: str | ItemRegistryItem, persistence: str | None,
2023-12-25 18:05:27.004 [ERROR] [HABApp.Worker ] - 383 | time: datetime, state: Any):
2023-12-25 18:05:27.004 [ERROR] [HABApp.Worker ] - 384 | # noinspection PyProtectedMember
2023-12-25 18:05:27.005 [ERROR] [HABApp.Worker ] - (...)
2023-12-25 18:05:27.005 [ERROR] [HABApp.Worker ] - 391 | params = {
2023-12-25 18:05:27.005 [ERROR] [HABApp.Worker ] - 392 | 'time': convert_to_oh_type(time),
2023-12-25 18:05:27.006 [ERROR] [HABApp.Worker ] - 393 | 'state': convert_to_oh_type(state),
2023-12-25 18:05:27.006 [ERROR] [HABApp.Worker ] - 394 | }
2023-12-25 18:05:27.006 [ERROR] [HABApp.Worker ] - 395 | if persistence is not None:
2023-12-25 18:05:27.006 [ERROR] [HABApp.Worker ] - 396 | params['serviceId'] = persistence
2023-12-25 18:05:27.007 [ERROR] [HABApp.Worker ] - --> 398 | ret = await put(f'/rest/persistence/items/{item:s}', params=params)
2023-12-25 18:05:27.007 [ERROR] [HABApp.Worker ] - 399 | if ret.status >= 300:
2023-12-25 18:05:27.007 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:27.007 [ERROR] [HABApp.Worker ] - item = 'num_Weather_Temp'
2023-12-25 18:05:27.008 [ERROR] [HABApp.Worker ] - params = {'time': '2023-12-25T18:15:26.622435+0100', 'state': '30', 'serviceId': 'influxdb'}
2023-12-25 18:05:27.008 [ERROR] [HABApp.Worker ] - params['serviceId'] = 'influxdb'
2023-12-25 18:05:27.008 [ERROR] [HABApp.Worker ] - persistence = 'influxdb'
2023-12-25 18:05:27.008 [ERROR] [HABApp.Worker ] - state = 30
2023-12-25 18:05:27.009 [ERROR] [HABApp.Worker ] - time = datetime.datetime(2023, 12, 25, 18, 15, 26, 622435)
2023-12-25 18:05:27.009 [ERROR] [HABApp.Worker ] - persistence is not None = True
2023-12-25 18:05:27.009 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:27.009 [ERROR] [HABApp.Worker ] -
2023-12-25 18:05:27.010 [ERROR] [HABApp.Worker ] - File "/opt/habapp/lib/python3.11/site-packages/HABApp/openhab/connection/handler/handler.py", line 108 in put
2023-12-25 18:05:27.010 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:27.010 [ERROR] [HABApp.Worker ] - 103 | async def put(self, url: str, log_404=True, json=None, data=None, **kwargs: Any) -> ClientResponse | None:
2023-12-25 18:05:27.011 [ERROR] [HABApp.Worker ] - 104 | if self.read_only or not self.online:
2023-12-25 18:05:27.011 [ERROR] [HABApp.Worker ] - 105 | return None
2023-12-25 18:05:27.011 [ERROR] [HABApp.Worker ] - 107 | mgr = _RequestContextManager(
2023-12-25 18:05:27.012 [ERROR] [HABApp.Worker ] - --> 108 | self.request(METH_PUT, url, data=data, json=json, **kwargs, **self.options, **kwargs)
2023-12-25 18:05:27.012 [ERROR] [HABApp.Worker ] - 109 | )
2023-12-25 18:05:27.012 [ERROR] [HABApp.Worker ] - 110 | if data is None:
2023-12-25 18:05:27.012 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:27.013 [ERROR] [HABApp.Worker ] - _RequestContextManager = <class 'aiohttp.client._RequestContextManager'>
2023-12-25 18:05:27.013 [ERROR] [HABApp.Worker ] - not self.online = False
2023-12-25 18:05:27.013 [ERROR] [HABApp.Worker ] - self = <HABApp.openhab.connection.handler.handler.ConnectionHandler object at 0x74c775f0>
2023-12-25 18:05:27.013 [ERROR] [HABApp.Worker ] - self.online = True
2023-12-25 18:05:27.014 [ERROR] [HABApp.Worker ] - self.options = {}
2023-12-25 18:05:27.014 [ERROR] [HABApp.Worker ] - self.read_only = False
2023-12-25 18:05:27.014 [ERROR] [HABApp.Worker ] - self.read_only or not self.online = False
2023-12-25 18:05:27.015 [ERROR] [HABApp.Worker ] - self.request = <bound method ClientSession._request of <aiohttp.client.ClientSession object at 0x74b7fd30>>
2023-12-25 18:05:27.015 [ERROR] [HABApp.Worker ] - data = None
2023-12-25 18:05:27.015 [ERROR] [HABApp.Worker ] - json = None
2023-12-25 18:05:27.015 [ERROR] [HABApp.Worker ] - kwargs = {'params': {'time': '2023-12-25T18:15:26.622435+0100', 'state': '30', 'serviceId': 'influxdb'}}
2023-12-25 18:05:27.016 [ERROR] [HABApp.Worker ] - log_404 = True
2023-12-25 18:05:27.016 [ERROR] [HABApp.Worker ] - METH_PUT = 'PUT'
2023-12-25 18:05:27.016 [ERROR] [HABApp.Worker ] - url = '/rest/persistence/items/num_Weather_Temp'
2023-12-25 18:05:27.016 [ERROR] [HABApp.Worker ] - ------------------------------------------------------------
2023-12-25 18:05:27.017 [ERROR] [HABApp.Worker ] -
2023-12-25 18:05:27.017 [ERROR] [HABApp.Worker ] - --------------------------------------------------------------------------------
2023-12-25 18:05:27.017 [ERROR] [HABApp.Worker ] - Traceback (most recent call last):
2023-12-25 18:05:27.017 [ERROR] [HABApp.Worker ] - File "/opt/habapp/lib/python3.11/site-packages/HABApp/core/internals/wrapped_function/wrapped_thread.py", line 94, in run
2023-12-25 18:05:27.018 [ERROR] [HABApp.Worker ] - self.func_obj(*self.func_args, **self.func_kwargs)
2023-12-25 18:05:27.018 [ERROR] [HABApp.Worker ] - File "/etc/openhab/habapp/rules/test/TestEnvironment.py", line 95, in TestExecuteRule
2023-12-25 18:05:27.018 [ERROR] [HABApp.Worker ] - self.TestRuleContent()
2023-12-25 18:05:27.018 [ERROR] [HABApp.Worker ] - File "/etc/openhab/habapp/rules/test/TestEnvironment.py", line 105, in TestRuleContent
2023-12-25 18:05:27.019 [ERROR] [HABApp.Worker ] - P.SetPersistData("num_Weather_Temp", datetime.now() + timedelta(minutes=10), 30)
2023-12-25 18:05:27.019 [ERROR] [HABApp.Worker ] - File "/etc/openhab/habapp/rules/persistence/persistence_influxdb_lowlevel.py", line 248, in SetPersistData
2023-12-25 18:05:27.019 [ERROR] [HABApp.Worker ] - self.oh.set_persistence_data(PersistItem, "influxdb", time=Time, state=Value)
2023-12-25 18:05:27.019 [ERROR] [HABApp.Worker ] - File "/opt/habapp/lib/python3.11/site-packages/HABApp/openhab/connection/handler/func_sync.py", line 231, in set_persistence_data
2023-12-25 18:05:27.020 [ERROR] [HABApp.Worker ] - return run_coro_from_thread(
2023-12-25 18:05:27.020 [ERROR] [HABApp.Worker ] - ^^^^^^^^^^^^^^^^^^^^^
2023-12-25 18:05:27.021 [ERROR] [HABApp.Worker ] - File "/opt/habapp/lib/python3.11/site-packages/HABApp/core/asyncio.py", line 76, in run_coro_from_thread
2023-12-25 18:05:27.021 [ERROR] [HABApp.Worker ] - return fut.result()
2023-12-25 18:05:27.021 [ERROR] [HABApp.Worker ] - ^^^^^^^^^^^^
2023-12-25 18:05:27.022 [ERROR] [HABApp.Worker ] - File "/usr/lib/python3.11/concurrent/futures/_base.py", line 456, in result
2023-12-25 18:05:27.022 [ERROR] [HABApp.Worker ] - return self.__get_result()
2023-12-25 18:05:27.022 [ERROR] [HABApp.Worker ] - ^^^^^^^^^^^^^^^^^^^
2023-12-25 18:05:27.022 [ERROR] [HABApp.Worker ] - File "/usr/lib/python3.11/concurrent/futures/_base.py", line 401, in __get_result
2023-12-25 18:05:27.022 [ERROR] [HABApp.Worker ] - raise self._exception
2023-12-25 18:05:27.023 [ERROR] [HABApp.Worker ] - File "/opt/habapp/lib/python3.11/site-packages/HABApp/openhab/connection/handler/func_async.py", line 398, in async_set_persistence_data
2023-12-25 18:05:27.023 [ERROR] [HABApp.Worker ] - ret = await put(f'/rest/persistence/items/{item:s}', params=params)
2023-12-25 18:05:27.023 [ERROR] [HABApp.Worker ] - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2023-12-25 18:05:27.023 [ERROR] [HABApp.Worker ] - File "/opt/habapp/lib/python3.11/site-packages/HABApp/openhab/connection/handler/handler.py", line 108, in put
2023-12-25 18:05:27.024 [ERROR] [HABApp.Worker ] - self.request(METH_PUT, url, data=data, json=json, **kwargs, **self.options, **kwargs)
2023-12-25 18:05:27.024 [ERROR] [HABApp.Worker ] - TypeError: aiohttp.client.ClientSession._request() got multiple values for keyword argument 'params'