コード例 #1
0
ファイル: views.py プロジェクト: gokultg1612/xbeewificloudkit
    def get(self, request, device_id=None, stream_id=None, format=None):
        """
        Query Device Cloud for DataPoints
        """
        username, password, cloud_fqdn = get_credentials(request)

        if not username or not password or not cloud_fqdn:
            return Response(status=status.HTTP_400_BAD_REQUEST)

        conn = DeviceCloudConnector(username, password, cloud_fqdn)

        # Only show the data from the last x minutes
        if 'startTime' in request.GET:
            try:
                time = datetime.utcfromtimestamp(
                    float(request.GET['startTime']))
            except ValueError:
                return Response(status=status.HTTP_400_BAD_REQUEST)
        else:
            time = datetime.utcnow() - timedelta(minutes=5)
        time_no_micro = time.replace(microsecond=0)
        iso_time = time_no_micro.isoformat()+'z'

        try:
            data_points = conn.get_datapoints(stream_id, iso_time)
        except HTTPError, e:
            return Response(status=e.response.status_code,
                            data=e.response.text)