CallDistanceTransceiver.py: reset modem.ring_count before receiving
[SaveMySugar/python3-savemysugar.git] / src / savemysugar / CallDistanceTransceiver.py
index 4a7e139..bfae0b6 100755 (executable)
@@ -424,24 +424,27 @@ def test_send_receive():
         def send_command(self, command):
             pass
 
-        def get_response(self, response):
+        def get_response(self, response=None):
             # pylint: disable=unused-argument
 
-            setup_time = random.uniform(self.transceiver.call_setup_time_min,
-                                        self.transceiver.call_setup_time_max)
+            setup_time = random.uniform(self.transceiver.modulator.period_min,
+                                        self.transceiver.modulator.period_max)
 
             if self.ring_count == 0:
                 # dummy ring
                 pass
             elif self.ring_count == 1:
                 # received a '.'
-                time.sleep(setup_time + self.transceiver.dot_time.dist)
+                dot_time = self.transceiver.modulator.dot_time.dist
+                time.sleep(setup_time + dot_time)
             elif self.ring_count == 2:
                 # received a '/'
-                time.sleep(setup_time + self.transceiver.wordspace_time.dist)
+                wordspace_time = self.transceiver.modulator.wordspace_time.dist
+                time.sleep(setup_time + wordspace_time)
             else:
                 # received an 'EOM'
-                time.sleep(setup_time + self.transceiver.eom_time.dist)
+                eom_time = self.transceiver.modulator.eom_time.dist
+                time.sleep(setup_time + eom_time)
 
             self.ring_count += 1
             self.ring_count %= 4
@@ -454,9 +457,11 @@ def test_send_receive():
 
     modem.transceiver = xcv
 
+    xcv.transmit("CODEX PARIS", "0")
+
     while True:
-        xcv.receive_loop()
         modem.ring_count = 0
+        xcv.receive_loop()
         print()
         print("Message received!")
         print("\"%s\"" % xcv.get_text(), flush=True)