@@ -18,8 +18,8 TZ=America/Lima | |||||
18 | DOCKER_DATA=/data/dockers/radarsys/ |
|
18 | DOCKER_DATA=/data/dockers/radarsys/ | |
19 | LOCAL_IP=192.168.1.128 |
|
19 | LOCAL_IP=192.168.1.128 | |
20 |
|
20 | |||
21 | MQTT_SERVER=10.10.10.200 |
|
21 | # MQTT_SERVER=10.10.10.200 | |
22 |
|
|
22 | MQTT_SERVER = 192.168.100.5 | |
23 | MQTT_PORT = 1883 |
|
23 | MQTT_PORT = 1883 | |
24 | MQTT_KEEPALIVE = 3660 |
|
24 | MQTT_KEEPALIVE = 3660 | |
25 |
|
25 |
@@ -355,6 +355,7 class ABSConfiguration(Configuration): | |||||
355 |
|
355 | |||
356 | def stop_device(self): |
|
356 | def stop_device(self): | |
357 | self.device.status = 2 |
|
357 | self.device.status = 2 | |
|
358 | self.active_beam = 0 | |||
358 | self.device.save() |
|
359 | self.device.save() | |
359 | self.message = 'ABS has been stopped.' |
|
360 | self.message = 'ABS has been stopped.' | |
360 | self.save() |
|
361 | self.save() | |
@@ -364,6 +365,9 class ABSConfiguration(Configuration): | |||||
364 | def stop_device_mqtt(self): |
|
365 | def stop_device_mqtt(self): | |
365 |
|
366 | |||
366 | self.device.status = 2 |
|
367 | self.device.status = 2 | |
|
368 | self.active_beam = 0 | |||
|
369 | # conf_active = None | |||
|
370 | # conf_active.save() | |||
367 | self.device.save() |
|
371 | self.device.save() | |
368 | self.message = 'ABS has been stopped.' |
|
372 | self.message = 'ABS has been stopped.' | |
369 | self.save() |
|
373 | self.save() | |
@@ -426,7 +430,7 class ABSConfiguration(Configuration): | |||||
426 | message += ''.join([fromBinary2Char(beam.module_6bits(i)) for beam in beams]) |
|
430 | message += ''.join([fromBinary2Char(beam.module_6bits(i)) for beam in beams]) | |
427 | status = ['0'] * 64 |
|
431 | status = ['0'] * 64 | |
428 | n = 0 |
|
432 | n = 0 | |
429 |
|
433 | print("Estoy en write_device normal",flush=True) | ||
430 | sock = self.send_multicast(message) |
|
434 | sock = self.send_multicast(message) | |
431 |
|
435 | |||
432 | while True: |
|
436 | while True: | |
@@ -500,6 +504,16 class ABSConfiguration(Configuration): | |||||
500 | conf_active.save() |
|
504 | conf_active.save() | |
501 | return True |
|
505 | return True | |
502 |
|
506 | |||
|
507 | ||||
|
508 | # DEV_STATES = ( | |||
|
509 | # (0, 'No connected'), | |||
|
510 | # (1, 'Connected'), | |||
|
511 | # (2, 'Configured'), | |||
|
512 | # (3, 'Running'), | |||
|
513 | # (4, 'Unknown'), | |||
|
514 | # (5, 'Busy') | |||
|
515 | # ) | |||
|
516 | ||||
503 | def write_device_mqtt(self): |
|
517 | def write_device_mqtt(self): | |
504 |
|
518 | |||
505 | if self.experiment is None: |
|
519 | if self.experiment is None: | |
@@ -545,6 +559,8 class ABSConfiguration(Configuration): | |||||
545 | apuntes_up_down=inicializacion+ apuntes_up_down+finalizacion |
|
559 | apuntes_up_down=inicializacion+ apuntes_up_down+finalizacion | |
546 | mqtt_client.publish(os.environ.get('TOPIC_ABS', 'abs/beams'),apuntes_up_down) |
|
560 | mqtt_client.publish(os.environ.get('TOPIC_ABS', 'abs/beams'),apuntes_up_down) | |
547 |
|
561 | |||
|
562 | self.active_beam = beams[0].pk | |||
|
563 | ||||
548 | #Start DDS-RC-JARS |
|
564 | #Start DDS-RC-JARS | |
549 | if confdds: |
|
565 | if confdds: | |
550 | confdds.start_device() |
|
566 | confdds.start_device() | |
@@ -554,6 +570,12 class ABSConfiguration(Configuration): | |||||
554 | if confjars: |
|
570 | if confjars: | |
555 | confjars.start_device() |
|
571 | confjars.start_device() | |
556 |
|
572 | |||
|
573 | self.device.status = 3 | |||
|
574 | self.save() | |||
|
575 | ||||
|
576 | conf_active, __ = ABSActive.objects.get_or_create(pk=1) | |||
|
577 | conf_active.conf = self | |||
|
578 | conf_active.save() | |||
557 | return True |
|
579 | return True | |
558 |
|
580 | |||
559 | def read_module(self, module): |
|
581 | def read_module(self, module): | |
@@ -657,6 +679,7 class ABSConfiguration(Configuration): | |||||
657 | return False |
|
679 | return False | |
658 |
|
680 | |||
659 | sock = self.send_multicast('MNTR') |
|
681 | sock = self.send_multicast('MNTR') | |
|
682 | print("Estoy en status_deice",flush=True) | |||
660 |
|
683 | |||
661 | n = 0 |
|
684 | n = 0 | |
662 | status = ['0'] * 64 |
|
685 | status = ['0'] * 64 | |
@@ -777,6 +800,7 class ABSConfiguration(Configuration): | |||||
777 | status = ['0'] * 64 |
|
800 | status = ['0'] * 64 | |
778 | message = 'CHGB{}'.format(beam_pos) |
|
801 | message = 'CHGB{}'.format(beam_pos) | |
779 | sock = self.send_multicast(message) |
|
802 | sock = self.send_multicast(message) | |
|
803 | print("Estoy en send_beam ",flush=True) | |||
780 | while True: |
|
804 | while True: | |
781 | #for i in range(32): |
|
805 | #for i in range(32): | |
782 | try: |
|
806 | try: | |
@@ -810,6 +834,93 class ABSConfiguration(Configuration): | |||||
810 | self.save() |
|
834 | self.save() | |
811 | return True |
|
835 | return True | |
812 |
|
836 | |||
|
837 | def change_beam_mqtt(self, beam_pos): | |||
|
838 | """ | |||
|
839 | This function connects to a multicast group and sends the beam number | |||
|
840 | to all abs modules. | |||
|
841 | """ | |||
|
842 | print ('Send beam') | |||
|
843 | print (self.active_beam) | |||
|
844 | beams = ABSBeam.objects.filter(abs_conf=self) | |||
|
845 | #print beams[self.active_beam-1].module_6bits(0) | |||
|
846 | active = ABSActive.objects.get(pk=1) | |||
|
847 | if active.conf != self: | |||
|
848 | self.message = 'La configuracion actual es la del siguiente enlace %s.' % active.conf.get_absolute_url() | |||
|
849 | self.message += "\n" | |||
|
850 | self.message += 'Se debe realizar un write en esta configuracion para luego obtener un status valido.' | |||
|
851 | ||||
|
852 | return False | |||
|
853 | ||||
|
854 | # Se manda a cero RC para poder realizar cambio de beam | |||
|
855 | if self.experiment is None: | |||
|
856 | confs = [] | |||
|
857 | else: | |||
|
858 | confs = Configuration.objects.filter(experiment = self.experiment).filter(type=0) | |||
|
859 | confdds = '' | |||
|
860 | confjars = '' | |||
|
861 | confrc = '' | |||
|
862 | #TO STOP DEVICES: DDS-JARS-RC | |||
|
863 | for i in range(0,len(confs)): | |||
|
864 | if i==0: | |||
|
865 | for conf in confs: | |||
|
866 | if conf.device.device_type.name == 'dds': | |||
|
867 | confdds = conf | |||
|
868 | confdds.stop_device() | |||
|
869 | break | |||
|
870 | if i==1: | |||
|
871 | for conf in confs: | |||
|
872 | if conf.device.device_type.name == 'jars': | |||
|
873 | confjars = conf | |||
|
874 | confjars.stop_device() | |||
|
875 | break | |||
|
876 | if i==2: | |||
|
877 | for conf in confs: | |||
|
878 | if conf.device.device_type.name == 'rc': | |||
|
879 | confrc = conf | |||
|
880 | confrc.stop_device() | |||
|
881 | break | |||
|
882 | if beam_pos > 0: | |||
|
883 | beam_pos = beam_pos - 1 | |||
|
884 | else: | |||
|
885 | beam_pos = 0 | |||
|
886 | ||||
|
887 | #El indice del apunte debe ser menor que el numero total de apuntes | |||
|
888 | #El servidor tcp en el embebido comienza a contar desde 0 | |||
|
889 | # status = ['0'] * 64 | |||
|
890 | # message = 'CHGB{}'.format(beam_pos) | |||
|
891 | # sock = self.send_multicast(message) | |||
|
892 | # while True: | |||
|
893 | # #for i in range(32): | |||
|
894 | # try: | |||
|
895 | # data, address = sock.recvfrom(1024) | |||
|
896 | # print (address, data) | |||
|
897 | # data = data.decode() | |||
|
898 | # if data == '1': | |||
|
899 | # status[int(address[0][10:])-1] = '3' | |||
|
900 | # elif data == '0': | |||
|
901 | # status[int(address[0][10:])-1] = '1' | |||
|
902 | # except socket.timeout: | |||
|
903 | # print('Timeout') | |||
|
904 | # break | |||
|
905 | # except Exception as e: | |||
|
906 | # print ('Error {}'.format(e)) | |||
|
907 | # pass | |||
|
908 | ||||
|
909 | # sock.close() | |||
|
910 | ||||
|
911 | #Start DDS-RC-JARS | |||
|
912 | if confdds: | |||
|
913 | confdds.start_device() | |||
|
914 | if confrc: | |||
|
915 | #print confrc | |||
|
916 | confrc.start_device() | |||
|
917 | if confjars: | |||
|
918 | confjars.start_device() | |||
|
919 | ||||
|
920 | self.message = "ABS Beam has been changed" | |||
|
921 | self.module_status = ''.join(status) | |||
|
922 | self.save() | |||
|
923 | return True | |||
813 |
|
924 | |||
814 | def get_absolute_url_import(self): |
|
925 | def get_absolute_url_import(self): | |
815 | return reverse('url_import_abs_conf', args=[str(self.id)]) |
|
926 | return reverse('url_import_abs_conf', args=[str(self.id)]) |
@@ -406,10 +406,11 | |||||
406 | document.location = "{% url 'url_send_beam' dev_conf.id beam.id %}"; |
|
406 | document.location = "{% url 'url_send_beam' dev_conf.id beam.id %}"; | |
407 | }); |
|
407 | }); | |
408 |
|
408 | |||
409 | a=$("#change_beam_mqtt{{forloop.counter}}") |
|
409 | change_beam_mqtt_btn=$("#change_beam_mqtt{{forloop.counter}}") | |
410 | a.click(function () { |
|
410 | change_beam_mqtt_btn.click(function () { | |
411 | info="change_beam_mqtt{{forloop.counter}}" |
|
411 | info="change_beam_mqtt{{forloop.counter}}" | |
412 | socket.emit('change_beam',{data:info}) |
|
412 | socket.emit('change_beam',{data:info}); | |
|
413 | document.location = "{% url 'url_send_beam_mqtt' dev_conf.id beam.id %}"; | |||
413 | }); |
|
414 | }); | |
414 |
|
415 | |||
415 | {% endif %} |
|
416 | {% endif %} |
@@ -9,6 +9,7 urlpatterns = ( | |||||
9 | path('<int:id_conf>/import/', views.import_file, name='url_import_abs_conf'), |
|
9 | path('<int:id_conf>/import/', views.import_file, name='url_import_abs_conf'), | |
10 | #url(r'^(?P<id_conf>-?\d+)/status/', views.abs_conf, {'status_request':True},name='url_status_abs_conf'), |
|
10 | #url(r'^(?P<id_conf>-?\d+)/status/', views.abs_conf, {'status_request':True},name='url_status_abs_conf'), | |
11 | path('<int:id_conf>/change_beam/<int:id_beam>/', views.send_beam, name='url_send_beam'), |
|
11 | path('<int:id_conf>/change_beam/<int:id_beam>/', views.send_beam, name='url_send_beam'), | |
|
12 | path('<int:id_conf>/change_beam/<int:id_beam>/', views.change_beam_mqtt, name='url_send_beam_mqtt'), | |||
12 | path('<int:id_conf>/plot/', views.plot_patterns, name='url_plot_abs_patterns'), |
|
13 | path('<int:id_conf>/plot/', views.plot_patterns, name='url_plot_abs_patterns'), | |
13 | path('<int:id_conf>/plot/<int:id_beam>/', views.plot_patterns, name='url_plot_abs_patterns2'), |
|
14 | path('<int:id_conf>/plot/<int:id_beam>/', views.plot_patterns, name='url_plot_abs_patterns2'), | |
14 | path('<int:id_conf>/plot/<int:id_beam>/<slug:antenna>/pattern.png/', views.plot_pattern, name='url_plot_beam'), |
|
15 | path('<int:id_conf>/plot/<int:id_beam>/<slug:antenna>/pattern.png/', views.plot_pattern, name='url_plot_beam'), |
@@ -287,7 +287,7 def send_beam(request, id_conf, id_beam): | |||||
287 | else: |
|
287 | else: | |
288 | i += 1 |
|
288 | i += 1 | |
289 | beam_pos = i + 1 #Estandarizar |
|
289 | beam_pos = i + 1 #Estandarizar | |
290 |
print |
|
290 | print('{} Position {}'.format(beam.name,str(beam_pos))) | |
291 | conf.send_beam(beam_pos) |
|
291 | conf.send_beam(beam_pos) | |
292 |
|
292 | |||
293 | return redirect('url_abs_conf', conf.id) |
|
293 | return redirect('url_abs_conf', conf.id) | |
@@ -302,6 +302,81 def send_beam(request, id_conf, id_beam): | |||||
302 |
|
302 | |||
303 | return render(request, 'confirm.html', kwargs) |
|
303 | return render(request, 'confirm.html', kwargs) | |
304 |
|
304 | |||
|
305 | def change_beam_mqtt(request, id_conf, id_beam): | |||
|
306 | ||||
|
307 | conf = get_object_or_404(ABSConfiguration, pk=id_conf) | |||
|
308 | ||||
|
309 | abs = Configuration.objects.filter(pk=conf.device.conf_active).first() | |||
|
310 | if abs!=conf: | |||
|
311 | url = '#' if abs is None else abs.get_absolute_url() | |||
|
312 | label = 'None' if abs is None else abs.label | |||
|
313 | messages.warning( | |||
|
314 | request, | |||
|
315 | mark_safe('The current configuration has not been written in the modules, the active configuration is <a href="{}">{}</a>'.format( | |||
|
316 | url, | |||
|
317 | label | |||
|
318 | )) | |||
|
319 | ) | |||
|
320 | return redirect(conf.get_absolute_url()) | |||
|
321 | ||||
|
322 | beams = ABSBeam.objects.filter(abs_conf=conf) | |||
|
323 | beam = get_object_or_404(ABSBeam, pk=id_beam) | |||
|
324 | ||||
|
325 | if request.method == 'POST': | |||
|
326 | ||||
|
327 | beams_list = ABSBeam.objects.filter(abs_conf=conf) | |||
|
328 | conf.active_beam = id_beam | |||
|
329 | ||||
|
330 | i = 0 | |||
|
331 | for b in beams_list: | |||
|
332 | if b.id == int(id_beam): | |||
|
333 | break | |||
|
334 | else: | |||
|
335 | i += 1 | |||
|
336 | beam_pos = i + 1 #Estandarizar | |||
|
337 | ||||
|
338 | print('{} Position {}'.format(beam.name,str(beam_pos))) | |||
|
339 | conf.change_beam_mqtt(beam_pos) | |||
|
340 | ||||
|
341 | module_messages = json.loads(conf.module_messages) | |||
|
342 | kwargs = {} | |||
|
343 | kwargs['connected_modules'] = str(conf.connected_modules())+'/64' | |||
|
344 | kwargs['dev_conf'] = conf | |||
|
345 | ||||
|
346 | if conf.operation_mode == 0: | |||
|
347 | kwargs['dev_conf_keys'] = ['label', 'operation_mode'] | |||
|
348 | else: | |||
|
349 | kwargs['dev_conf_keys'] = ['label', 'operation_mode', 'operation_value'] | |||
|
350 | ||||
|
351 | kwargs['title'] = 'ABS Configuration' | |||
|
352 | kwargs['suptitle'] = 'Details' | |||
|
353 | kwargs['button'] = 'Edit Configuration' | |||
|
354 | if conf.active_beam != 0: | |||
|
355 | kwargs['active_beam'] = int(conf.active_beam) | |||
|
356 | ||||
|
357 | ||||
|
358 | kwargs['beams'] = beams | |||
|
359 | # kwargs['modules_status'] = all_status | |||
|
360 | # kwargs['color_status'] = color_status | |||
|
361 | ||||
|
362 | ||||
|
363 | kwargs['module_messages'] = module_messages | |||
|
364 | ||||
|
365 | ###### SIDEBAR ###### | |||
|
366 | kwargs.update(sidebar(conf=conf)) | |||
|
367 | ||||
|
368 | # return redirect('url_abs_conf', conf.id) | |||
|
369 | return render(request, 'abs_conf_mqtt.html',kwargs) | |||
|
370 | ||||
|
371 | kwargs = { | |||
|
372 | 'title': 'ABS', | |||
|
373 | 'suptitle': conf.label, | |||
|
374 | 'message': 'Are you sure you want to change ABS Beam through MQTT to: {}?'.format(beam.name), | |||
|
375 | 'delete': False | |||
|
376 | } | |||
|
377 | kwargs['menu_configurations'] = 'active' | |||
|
378 | ||||
|
379 | return render(request, 'confirm.html', kwargs) | |||
305 |
|
380 | |||
306 | def add_beam(request, id_conf): |
|
381 | def add_beam(request, id_conf): | |
307 |
|
382 |
@@ -78,9 +78,8 def GetTemperatures(data): | |||||
78 |
|
78 | |||
79 | def on_connect(mqtt_client, userdata, flags, rc): |
|
79 | def on_connect(mqtt_client, userdata, flags, rc): | |
80 | if rc == 0: |
|
80 | if rc == 0: | |
81 | print('Connected successfullyasdss') |
|
81 | # print('Connected successfullyasdss') | |
82 | mqtt_client.subscribe("atrad/test4") |
|
82 | mqtt_client.subscribe("atrad/test4") | |
83 | print("Exito") |
|
|||
84 | else: |
|
83 | else: | |
85 | print('Bad connection. Code:', rc) |
|
84 | print('Bad connection. Code:', rc) | |
86 |
|
85 |
@@ -442,6 +442,7 class Experiment(models.Model): | |||||
442 |
|
442 | |||
443 |
|
443 | |||
444 | for conf in confs: |
|
444 | for conf in confs: | |
|
445 | print("conf->",conf) | |||
445 | print(conf.device) |
|
446 | print(conf.device) | |
446 | print(conf.device.status) |
|
447 | print(conf.device.status) | |
447 | print("--------------",flush=True) |
|
448 | print("--------------",flush=True) |
@@ -60,9 +60,9 | |||||
60 | {% else %} |
|
60 | {% else %} | |
61 | <div class="col-md-3 hidden-xs hidden-sm" role="complementary"> |
|
61 | <div class="col-md-3 hidden-xs hidden-sm" role="complementary"> | |
62 | <br><br> |
|
62 | <br><br> | |
63 | <div id="sidebar"> |
|
63 | <div id="sidebar"> | |
64 | {% block sidebar%} |
|
64 | {% block sidebar%} | |
65 | {% include "sidebar_devices.html" %} |
|
65 | {% include "sidebar_devices.html" %} | |
66 | {% endblock %} |
|
66 | {% endblock %} | |
67 | </div> |
|
67 | </div> | |
68 | </div> |
|
68 | </div> | |
@@ -88,8 +88,10 | |||||
88 | {% endfor %} |
|
88 | {% endfor %} | |
89 | {% endif %} |
|
89 | {% endif %} | |
90 | {% endblock %} |
|
90 | {% endblock %} | |
91 | {% block content %} |
|
91 | ||
92 |
{% |
|
92 | {% block content %} | |
|
93 | {% endblock %} | |||
|
94 | ||||
93 | </div> |
|
95 | </div> | |
94 | {% block content-graph %} |
|
96 | {% block content-graph %} | |
95 | {% endblock %} |
|
97 | {% endblock %} |
@@ -40,8 +40,6 | |||||
40 | {% endfor%} |
|
40 | {% endfor%} | |
41 | </tr> |
|
41 | </tr> | |
42 | {% for object in objects %} |
|
42 | {% for object in objects %} | |
43 | <p>{{ object }}</p> |
|
|||
44 | <p>{{ objects }}</p> |
|
|||
45 | <tr class="clickable-row" data-href="{{object.get_absolute_url}}"> |
|
43 | <tr class="clickable-row" data-href="{{object.get_absolute_url}}"> | |
46 | <td>{{ forloop.counter|add:offset }}</td> |
|
44 | <td>{{ forloop.counter|add:offset }}</td> | |
47 | {% for key in keys %} |
|
45 | {% for key in keys %} |
@@ -46,7 +46,7 | |||||
46 | {% else %} |
|
46 | {% else %} | |
47 | <td class="text-info"><strong> Connected </strong></td> |
|
47 | <td class="text-info"><strong> Connected </strong></td> | |
48 | {% endif %} |
|
48 | {% endif %} | |
49 | </tr> |
|
49 | </tr> | |
50 |
|
50 | |||
51 | {% for key in dev_conf_keys %} |
|
51 | {% for key in dev_conf_keys %} | |
52 | <tr> |
|
52 | <tr> |
@@ -1579,6 +1579,7 def dev_conf_write_mqtt(request,id_conf): | |||||
1579 | kwargs['suptitle'] = 'Details' |
|
1579 | kwargs['suptitle'] = 'Details' | |
1580 | kwargs['button'] = 'Edit Configuration' |
|
1580 | kwargs['button'] = 'Edit Configuration' | |
1581 |
|
1581 | |||
|
1582 | print("conf.active_beam: {}".format(conf.active_beam)) | |||
1582 | if conf.active_beam != 0: |
|
1583 | if conf.active_beam != 0: | |
1583 | kwargs['active_beam'] = int(conf.active_beam) |
|
1584 | kwargs['active_beam'] = int(conf.active_beam) | |
1584 |
|
1585 |
@@ -199,7 +199,7 class RCConfiguration(Configuration): | |||||
199 | 'params': json.dumps(line_data['params']) |
|
199 | 'params': json.dumps(line_data['params']) | |
200 | } |
|
200 | } | |
201 | ) |
|
201 | ) | |
202 | print(line,flush=True) |
|
202 | # print(line,flush=True) | |
203 |
|
203 | |||
204 | for i, line in enumerate(self.get_lines()): |
|
204 | for i, line in enumerate(self.get_lines()): | |
205 | line_params = json.loads(line.params) |
|
205 | line_params = json.loads(line.params) | |
@@ -563,10 +563,10 class RCConfiguration(Configuration): | |||||
563 | else: |
|
563 | else: | |
564 | data = {'manual': [clock.multiplier, clock.divisor, clock.reference]} |
|
564 | data = {'manual': [clock.multiplier, clock.divisor, clock.reference]} | |
565 | payload = self.request('setfreq', 'post', data=json.dumps(data)) |
|
565 | payload = self.request('setfreq', 'post', data=json.dumps(data)) | |
566 | print(payload) |
|
566 | # print(payload) | |
567 | if payload['command'] != 'ok': |
|
567 | if payload['command'] != 'ok': | |
568 | self.message = 'RC write: {}'.format(payload['command']) |
|
568 | self.message = 'RC write: {}'.format(payload['command']) | |
569 | print('RC write: {}'.format(payload['command'])) |
|
569 | # print('RC write: {}'.format(payload['command'])) | |
570 | else: |
|
570 | else: | |
571 | self.message = payload['programming'] |
|
571 | self.message = payload['programming'] | |
572 | if payload['programming'] == 'fail': |
|
572 | if payload['programming'] == 'fail': | |
@@ -620,12 +620,12 class RCConfiguration(Configuration): | |||||
620 | self.device.status = 3 |
|
620 | self.device.status = 3 | |
621 | self.device.save() |
|
621 | self.device.save() | |
622 | self.message = 'RC configured and started' |
|
622 | self.message = 'RC configured and started' | |
623 | print('RC configured and started') |
|
623 | # print('RC configured and started') | |
624 | else: |
|
624 | else: | |
625 | self.device.status = 1 |
|
625 | self.device.status = 1 | |
626 | self.device.save() |
|
626 | self.device.save() | |
627 | self.message = 'RC write: {}'.format(payload['write']) |
|
627 | self.message = 'RC write: {}'.format(payload['write']) | |
628 | print('RC write: {}'.format(payload['write'])) |
|
628 | # print('RC write: {}'.format(payload['write'])) | |
629 | return False |
|
629 | return False | |
630 |
|
630 | |||
631 | #payload = self.request('start', 'post') |
|
631 | #payload = self.request('start', 'post') | |
@@ -688,11 +688,11 class RCLine(models.Model): | |||||
688 | ordering = ['channel'] |
|
688 | ordering = ['channel'] | |
689 |
|
689 | |||
690 | def __str__(self): |
|
690 | def __str__(self): | |
691 | print("AAAA: ",self.rc_configuration,flush=True) |
|
691 | # print("AAAA: ",self.rc_configuration,flush=True) | |
692 | ret = u'{}|{} - {}'.format(self.pk, self.get_name(),self.rc_configuration.name) |
|
692 | # ret = u'{}|{} - {}'.format(self.pk, self.get_name(),self.rc_configuration.name) | |
693 | return ret |
|
693 | # return ret | |
694 |
|
|
694 | if self.rc_configuration: | |
695 |
|
|
695 | return u'{}|{} - {}'.format(self.pk, self.get_name(), self.rc_configuration.name) | |
696 |
|
696 | |||
697 | def jsonify(self): |
|
697 | def jsonify(self): | |
698 |
|
698 |
@@ -355,22 +355,22 def update_lines_position(request, conf_id): | |||||
355 |
|
355 | |||
356 |
|
356 | |||
357 | def import_file(request, conf_id): |
|
357 | def import_file(request, conf_id): | |
358 | print("HOLA",flush=True) |
|
358 | # print("HOLA",flush=True) | |
359 | conf = get_object_or_404(RCConfiguration, pk=conf_id) |
|
359 | conf = get_object_or_404(RCConfiguration, pk=conf_id) | |
360 | print("HOLA2",flush=True) |
|
360 | # print("HOLA2",flush=True) | |
361 | if request.method=='POST': |
|
361 | if request.method=='POST': | |
362 | form = RCImportForm(request.POST, request.FILES) |
|
362 | form = RCImportForm(request.POST, request.FILES) | |
363 | print("HOLA3",flush=True) |
|
363 | # print("HOLA3",flush=True) | |
364 | if form.is_valid(): |
|
364 | if form.is_valid(): | |
365 | print("HOLA4",flush=True) |
|
365 | #print("HOLA4",flush=True) | |
366 | # try: |
|
366 | # try: | |
367 | print("HOLA5",flush=True) |
|
367 | #print("HOLA5",flush=True) | |
368 | data = conf.import_from_file(request.FILES['file_name']) |
|
368 | data = conf.import_from_file(request.FILES['file_name']) | |
369 | print("HOLA6",flush=True) |
|
369 | #print("HOLA6",flush=True) | |
370 | conf.dict_to_parms(data) |
|
370 | conf.dict_to_parms(data) | |
371 | print("1",flush=True) |
|
371 | #print("1",flush=True) | |
372 | conf.update_pulses() |
|
372 | conf.update_pulses() | |
373 | print("2",flush=True) |
|
373 | #print("2",flush=True) | |
374 | messages.success(request, 'Configuration "%s" loaded succesfully' % request.FILES['file_name']) |
|
374 | messages.success(request, 'Configuration "%s" loaded succesfully' % request.FILES['file_name']) | |
375 | return redirect(conf.get_absolute_url_edit()) |
|
375 | return redirect(conf.get_absolute_url_edit()) | |
376 |
|
376 |
General Comments 0
You need to be logged in to leave comments.
Login now