예제 #1
0
    def __init__(self):
        super().__init__()
        self.stage = Stage(self)
        self.view = QtWidgets.QGraphicsView(self.stage)
        self.status_bar = QtWidgets.QStatusBar(self)

        self.setWindowTitle('Orchstr8 Workbench')
        self.setCentralWidget(self.view)
        self.setStatusBar(self.status_bar)

        self.block_height = self.make_status_label('Height: -- ')
        self.user_balance = self.make_status_label('User Balance: -- ')
        self.mining_balance = self.make_status_label('Mining Balance: -- ')

        self.wallet_log = LoggingOutput('Wallet', self)
        self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, self.wallet_log)
        self.spv_log = LoggingOutput('SPV Server', self)
        self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, self.spv_log)
        self.blockchain_log = LoggingOutput('Blockchain', self)
        self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, self.blockchain_log)

        self.blockchain_controls = BlockchainControls(self)
        self.addDockWidget(QtCore.Qt.RightDockWidgetArea,
                           self.blockchain_controls)

        self.network = QtNetwork.QNetworkAccessManager(self)
        self.socket = QtWebSockets.QWebSocket()
        self.socket.connected.connect(lambda: self.run_command('start'))
        self.socket.error.connect(lambda e: print(f'errored: {e}'))
        self.socket.textMessageReceived.connect(self.on_message)
        self.socket.open('ws://localhost:7954/log')
예제 #2
0
    def __init__(self, parent):
        super().__init__(parent)

        self.client = QtWebSockets.QWebSocket(
            "", QtWebSockets.QWebSocketProtocol.Version13, None)
        self.client.error.connect(self.error)

        self.client.open(QUrl("ws://127.0.0.1:8766"))
        self.client.pong.connect(self.onPong)
예제 #3
0
    def __init__(self, parent=None, url=None):
        super(Client, self).__init__(parent=parent)

        self.client = QtWebSockets.QWebSocket(
            origin='',
            version=QtWebSockets.QWebSocketProtocol.Version13,
            parent=None)
        self.client.error.connect(self.error)

        self.client.open(QtCore.QUrl("ws://%s" % url))
        self.client.pong.connect(self.on_pong)
예제 #4
0
    def __init__(self):
        super(ProcessMonitorWindow, self).__init__()
        self.ui = ProcessMonitorUI(self)

        self._ws_connected = False
        self.client = QtWebSockets.QWebSocket("", QtWebSockets.QWebSocketProtocol.Version13, None)

        # Subscribe to events from the ws connection
        self.client.error.connect(self.on_ws_error)
        self.client.connected.connect(self.on_connected)
        self.client.disconnected.connect(self.on_disconnected)
        self.client.textMessageReceived.connect(self.on_message)

        self.ui.process_list.action_requested.connect(self.on_action_requested)
        self.ui.process_list.process_state_changed.connect(self.process_state_changed)
        self.ui.btn_connect.clicked.connect(self.on_connect_clicked)
예제 #5
0
 def __init__(self, parent):
     super().__init__(parent)
     self.clients = []
     print("server name: {}".format(parent.serverName()))
     self.server = QtWebSockets.QWebSocketServer(parent.serverName(),
                                                 parent.secureMode(),
                                                 parent)
     if self.server.listen(QtNetwork.QHostAddress.LocalHost, 1302):
         print('Listening: {}:{}:{}'.format(
             self.server.serverName(),
             self.server.serverAddress().toString(),
             str(self.server.serverPort())))
     else:
         print('error')
     self.server.acceptError.connect(self.onAcceptError)
     self.server.newConnection.connect(self.onNewConnection)
     self.clientConnection = None
     print(self.server.isListening())
예제 #6
0
    def __init__(self, username, parent=None):
        super(Client, self).__init__(parent)

        self.webClient = QtWebSockets.QWebSocket(
            "", QtWebSockets.QWebSocketProtocol.VersionLatest, self)

        self.username = username
        self.functionMapper = {
            WHITE_PLAYER_DATA: self.processPlayerData,
            BLACK_PLAYER_DATA: self.processPlayerData,
            MOVE: self.processMove,
            MESSAGE: self.processMessage,
            SERVER_MESSAGE: self.processServerMessage,
            ERROR: self.processError
        }

        self.webClient.connected.connect(self.authorize)
        self.webClient.binaryMessageReceived.connect(self.processBinaryMessage)
예제 #7
0
 def __init__(self, parent, host=None, port=None):
     super(QtCore.QObject, self).__init__()
     # CONSTANTS
     self.clients_dict = {}
     self.client_connection = None
     # DATABASE
     self.db_connection = sqlite3.connect(
         os.path.join(SERVER_PATH, 'db', 'database.db'))
     # SERVER
     self.server = QtWebSockets.QWebSocketServer(parent.serverName(),
                                                 parent.secureMode(),
                                                 parent)
     if self.server.listen(QtNetwork.QHostAddress(host), port):
         print('Connected: %s : %s:%s' %
               (self.server.serverName(),
                self.server.serverAddress().toString(),
                str(self.server.serverPort())))
     # SIGNALS
     self.server.newConnection.connect(self._on_new_connection)
예제 #8
0
                    self._send_data(
                        client=self.clients_dict[(receiver, data['software'])],
                        data=result)

    def delete_message(self, data):
        """This method is called by the command 'delete_message'
        and it delete the given messages in the database

        :param data: The messages id
        :type data: list
        """
        for message_id in data:
            models.delete_message(db_connection=self.db_connection,
                                  message_id=message_id)


if __name__ == '__main__':

    parser = argparse.ArgumentParser(description='Launch Websocket server !\n',
                                     epilog='--host 10.10.9.69 --port 1302')
    parser.add_argument('--host', type=str, help='host', default='127.0.0.1')
    parser.add_argument('--port', type=int, help='port', default=1302)
    args = parser.parse_args()

    app = QtWidgets.QApplication([])
    signal.signal(signal.SIGINT, signal.SIG_DFL)  # ENABLE CTRL+C to stop
    serverObject = QtWebSockets.QWebSocketServer(
        'LauExchange', QtWebSockets.QWebSocketServer.NonSecureMode)
    server = WebSocketServer(serverObject, host=args.host, port=args.port)
    serverObject.closed.connect(app.quit)
    app.exec_()