コード例 #1
0
ファイル: audio_modem.py プロジェクト: shivaenigma/electrum
    def _recv(self, parent):
        def receiver_thread():
            try:
                with self._audio_interface() as interface:
                    src = interface.recorder()
                    dst = BytesIO()
                    amodem.main.recv(config=self.modem_config,
                                     src=src,
                                     dst=dst)
                    return dst.getvalue()
            except Exception:
                traceback.print_exc()

        def on_success(blob):
            if blob:
                blob = zlib.decompress(blob)
                print_msg('Received:', repr(blob))
                parent.setText(blob)

        kbps = self.modem_config.modem_bps / 1e3
        msg = 'Receiving from Audio MODEM ({0:.1f} kbps)...'.format(kbps)
        return WaitingDialog(parent=parent,
                             message=msg,
                             run_task=receiver_thread,
                             on_success=on_success)
コード例 #2
0
ファイル: trustedcoin.py プロジェクト: aeugenis/electrum
 def before_send(self):
     # request billing info before forming the transaction
     self.billing_info = None
     self.waiting_dialog = WaitingDialog(self.window, 'please wait...',
                                         self.request_billing_info)
     self.waiting_dialog.start()
     self.waiting_dialog.wait()
     if self.billing_info is None:
         self.window.show_message('Could not contact server')
         return True
     return False
コード例 #3
0
    def _send(self, parent, blob):
        def sender_thread():
            with self._audio_interface() as interface:
                src = BytesIO(blob)
                dst = interface.player()
                amodem.main.send(config=self.modem_config, src=src, dst=dst)

        print_msg('Sending:', repr(blob))
        blob = zlib.compress(blob)

        kbps = self.modem_config.modem_bps / 1e3
        msg = 'Sending to Audio MODEM ({0:.1f} kbps)...'.format(kbps)
        WaitingDialog(parent, msg, sender_thread)
コード例 #4
0
    def _send(self, parent, blob):
        def sender_thread():
            try:
                with self._audio_interface() as interface:
                    src = BytesIO(blob)
                    dst = interface.player()
                    amodem.send.main(config=self.modem_config, src=src, dst=dst)
            except Exception:
                traceback.print_exc()

        print_msg('Sending:', repr(blob))
        blob = zlib.compress(blob)

        kbps = self.modem_config.modem_bps / 1e3
        msg = 'Sending to Audio MODEM ({0:.1f} kbps)...'.format(kbps)
        return WaitingDialog(parent=parent, message=msg, run_task=sender_thread)
コード例 #5
0
    def _recv(self, parent):
        def receiver_thread():
            with self._audio_interface() as interface:
                src = interface.recorder()
                dst = BytesIO()
                amodem.main.recv(config=self.modem_config, src=src, dst=dst)
                return dst.getvalue()

        def on_finished(blob):
            if blob:
                blob = zlib.decompress(blob)
                print_msg('Received:', repr(blob))
                parent.setText(blob)

        kbps = self.modem_config.modem_bps / 1e3
        msg = 'Receiving from Audio MODEM ({0:.1f} kbps)...'.format(kbps)
        WaitingDialog(parent, msg, receiver_thread, on_finished)
コード例 #6
0
ファイル: trustedcoin.py プロジェクト: aeugenis/electrum
 def settings_dialog(self):
     self.waiting_dialog = WaitingDialog(self.window, 'please wait...',
                                         self.request_billing_info,
                                         self.show_settings_dialog)
     self.waiting_dialog.start()