def tunnel_api(request, octoprinttunnel): if request.path.lower() == '/_tsd_/tunnelusage/': start_of_next_month = (datetime.now().replace(day=1) + timedelta(days=32)).replace(day=1) return HttpResponse(json.dumps({ 'total': cache.octoprinttunnel_get_stats(octoprinttunnel.printer.user.id), 'monthly_cap': -1 if octoprinttunnel.printer.user.is_pro else settings.OCTOPRINT_TUNNEL_CAP, 'reset_in_seconds': (start_of_next_month - datetime.now()).total_seconds(), }), content_type='application/json') if request.path.lower() == '/_tsd_/webcam/0/': pic = (cache.printer_pic_get(octoprinttunnel.printer.id) or {}).get('img_url', None) return HttpResponse( json.dumps({'snapshot': pic}), content_type='application/json', ) raise Http404
def pic(self): pic_data = cache.printer_pic_get(self.id) return dict_or_none(pic_data)
def health_check(request): User.objects.all()[:1] cache.printer_pic_get(0) return HttpResponse('Okay')