async def METHOD_NAME(self, device):
    if self._fhempy_gateway is None:
        return
    # first update, set attributes and device readings like model, sid, ...
    if str(device["model"]) not in device_type_mapping:
        self.logger.error(
            f"{device['model']} not yet supported, please report an issue here: "
            f"https://github.com/fhempy/fhempy/issues"
        )
        await fhem.readingsSingleUpdateIfChanged(
            self.hash, "state", f"unsupported device: {device['model']}", 1
        )
        return
    # create device based on device model
    self._fhempy_device = globals()[device_type_mapping[str(device["model"])]](
        self.logger, self._fhempy_gateway
    )
    self._fhempy_device.set_hash(self.hash)
    await self._fhempy_device.METHOD_NAME(device)
    self._fhempy_gateway.gateway3.set_entity(self._fhempy_device)
    self._fhempy_gateway.gateway3.set_stats(self._fhempy_device)