async def _request(
            self,
            method: str,
            url: str,
            *,
            headers: dict = None,
            params: dict = None,
            json: dict = None) -> dict:
        """Make a request against the RainMachine device."""
        if not headers:
            headers = {}

        try:
            async with self._websession.request(method, url, headers=headers,
                                                params=params,
                                                json=json) as resp:
                resp.raise_for_status()
                data = await resp.json(content_type=None)
                return data
        except ClientError as err:
            raise RequestError(
                'Error requesting data from {}: {}'.format(url, err))
async def _request ( self , method : str , url : str , * , headers : dict = None , params : dict = None , json : dict = None ) -> dict : if not headers : headers = { } try : async with self . _websession . request ( method , url , headers = headers , params = params , json = json ) as resp : resp . raise_for_status ( ) data = await resp . json ( content_type = None ) return data except ClientError as err : raise RequestError ( 'Error requesting data from {}: {}' . format ( url , err ) )
Make a request against the RainMachine device.