【背景】
会社は、部門の同僚間のビジネス コミュニケーションを促進するために LAN 上で使用できるチャット ソフトウェアを導入したいと考えています。
今日は主にサーバーサイドのソースコードについてお話しますが、明日は引き続きクライアントのソースコードを書きます。
【アイデア】
社内のすべてのコンピュータにPython環境を構築したので、PythonとSocketIOを使用して簡単に実装したいと思います。
サーバー側は直接 Python であり、サーバー上で実行され、GUI インターフェイスは必要ありません。
クライアント GUI は tkinter を使用するため、パッケージ化する必要はなく、ターミナル上で py ファイルを直接実行するだけで済みます。
一般的な設計では、クライアントはサーバーに完全に接続されています。サーバーはクライアント メッセージを受信し、接続されているすべてのクライアントにブロードキャストします。クライアント インターフェイスに表示される効果はチャット ルームです。
【必須パッケージ】
インストールする必要がある主なパッケージは次のとおりです。
TCP 接続通信が必要であるため、ソケットのインストールには
マルチスレッドが必要です。そのため、スレッド
クライアントのインストールには GUI インターフェイスが必要であるため、tkinter をインストールする必要があります。
【サーバー側のキーコード】
LAN 展開なので、ホスト名はローカル マシンを表す「127.0.0.1」です。空いているポートを選択してください。私は 9090 を選択しました。
外部ネットワークに展開する場合は、対応するパブリック ネットワーク設定を行うだけです。
HOST = '127.0.0.1'
PORT = 9090
サーバーインスタンス、Cli を作成する