##// END OF EJS Templates
Update RC API methods...
Juan C. Espinoza -
r222:547f05cc34b8
parent child
Show More
@@ -455,27 +455,33 class RCConfiguration(Configuration):
455
455
456 def status_device(self):
456 def status_device(self):
457
457
458 try:
458 try:
459 self.device.status = 0
459 req = requests.get(self.device.url('status'))
460 req = requests.get(self.device.url('status'))
460 payload = req.json()
461 payload = req.json()
461 if payload['status']=='ok':
462 if payload['status']=='ok':
462 self.device.status = 1
463 self.device.status = 2
463 else:
464 else:
464 self.device.status = 0
465 self.device.status = 1
466 self.device.save()
467 self.message = payload['status']
468 return False
465 except Exception as e:
469 except Exception as e:
466 self.device.status = 0
470 if 'No route to host' not in str(e):
471 self.device.status = 4
472 self.device.save()
467 self.message = str(e)
473 self.message = str(e)
468 return False
474 return False
469
475
470 self.device.save()
476 self.device.save()
471 return True
477 return True
472
473
478
474 def reset_device(self):
479 def reset_device(self):
475
480
476 try:
481 try:
477 req = requests.post(self.device.url('reset'))
482 req = requests.post(self.device.url('reset'))
478 if 'ok' in req.text:
483 payload = req.json()
484 if payload['reset']=='ok':
479 self.message = 'RC restarted'
485 self.message = 'RC restarted'
480 else:
486 else:
481 self.message = 'RC restart not ok'
487 self.message = 'RC restart not ok'
@@ -490,8 +496,9 class RCConfiguration(Configuration):
490 def stop_device(self):
496 def stop_device(self):
491
497
492 try:
498 try:
493 req = requests.post(self.device.url('stop'))
499 req = requests.post(self.device.url('stop'))
494 if 'ok' in req.text:
500 payload = req.json()
501 if payload['stop']=='ok':
495 self.device.status = 2
502 self.device.status = 2
496 self.device.save()
503 self.device.save()
497 self.message = 'RC stopped'
504 self.message = 'RC stopped'
@@ -501,7 +508,12 class RCConfiguration(Configuration):
501 self.device.save()
508 self.device.save()
502 return False
509 return False
503 except Exception as e:
510 except Exception as e:
504 self.message = str(e)
511 if 'No route to host' not in str(e):
512 self.device.status = 4
513 else:
514 self.device.status = 0
515 self.message = str(e)
516 self.device.save()
505 return False
517 return False
506
518
507 return True
519 return True
@@ -509,8 +521,9 class RCConfiguration(Configuration):
509 def start_device(self):
521 def start_device(self):
510
522
511 try:
523 try:
512 req = requests.post(self.device.url('start'))
524 req = requests.post(self.device.url('start'))
513 if 'ok' in req.text:
525 payload = req.json()
526 if payload['start']=='ok':
514 self.device.status = 3
527 self.device.status = 3
515 self.device.save()
528 self.device.save()
516 self.message = 'RC running'
529 self.message = 'RC running'
@@ -518,7 +531,12 class RCConfiguration(Configuration):
518 self.message = 'RC start not ok'
531 self.message = 'RC start not ok'
519 return False
532 return False
520 except Exception as e:
533 except Exception as e:
521 self.message = str(e)
534 if 'No route to host' not in str(e):
535 self.device.status = 4
536 else:
537 self.device.status = 0
538 self.message = str(e)
539 self.device.save()
522 return False
540 return False
523
541
524 return True
542 return True
@@ -543,12 +561,14 class RCConfiguration(Configuration):
543 ## write clock divider
561 ## write clock divider
544 req = requests.post(self.device.url('divisor'),
562 req = requests.post(self.device.url('divisor'),
545 {'divisor': '{:d}'.format(self.clock_divider-1)})
563 {'divisor': '{:d}'.format(self.clock_divider-1)})
546 if 'ok' not in req.text:
564 payload = req.json()
565 if payload['divisor']=='ok':
547 self.message = 'Error configuring RC clock divider'
566 self.message = 'Error configuring RC clock divider'
548 return False
567 return False
549 ## write pulses & delays
568 ## write pulses & delays
550 req = requests.post(self.device.url('write'), data=b64encode(payload))
569 req = requests.post(self.device.url('write'), data=b64encode(payload))
551 if 'ok' in req.text:
570 payload = req.json()
571 if payload['write']=='ok':
552 self.device.status = 2
572 self.device.status = 2
553 self.device.save()
573 self.device.save()
554 self.message = 'RC configured'
574 self.message = 'RC configured'
@@ -559,7 +579,12 class RCConfiguration(Configuration):
559 return False
579 return False
560
580
561 except Exception as e:
581 except Exception as e:
562 self.message = str(e)
582 if 'No route to host' not in str(e):
583 self.device.status = 4
584 else:
585 self.device.status = 0
586 self.message = str(e)
587 self.device.save()
563 return False
588 return False
564
589
565 return True
590 return True
General Comments 0
You need to be logged in to leave comments. Login now