GGTalk は、クライアントとサーバーを含む QQ の高度な模倣バージョンであり、.net を使用して開発されたインスタント メッセージング システムです。この記事を通じて、GG の全体像と最新の進捗状況を誰もが理解できるように、また、いくつかのよくある質問への回答もここにまとめた、まとめのような記事を書きたいと思います。
もっと身近なところで言えば、私個人の目標は、QQ おもちゃの模倣度の高いバージョンを作ることではなく、実際に使用できる製品を作り (このプロセスにはまだ長い道のりがあります)、それを維持し続けることです。 。
1. 実装機能
(01) 登録、ログイン、友達追加、友達リストを作成します。
(02) セルフィーアバター。
(03) テキストチャット、フォント設定、GIF動的表現、ウィンドウ振動、スクリーンショット、手書きパッド、ログインステータス(オンライン、外出中、話中、応答不可、非表示)、入力リマインダー
(04) グループ機能:グループ作成、グループ参加、グループ退出、グループチャット
(05) ファイル転送、フォルダ転送(ブレークポイント・レジューム転送対応)
(06) 音声およびビデオチャット
(07) リモートディスク
(08) リモートアシスタンス
(09) 共有デスクトップ(共有するデスクトップ領域を指定可能)
(10) 信頼性の高いP2P
(11)ネットワークディスク
(12) オフラインメッセージ
(13) オフラインファイル
(14) トレイの点滅: QQ とまったく同じで、メッセージを受信すると、トレイに対応する友達のアバターが点滅します。アバターをクリックすると、友達とのチャットボックスがポップアップします。
(15) 最近の連絡先リスト
(16) システム設定: 起動時の自動起動、マイクデバイスインデックス、カメラデバイスインデックス、メインウィンドウがフォークされたときにプログラムを閉じるかウィンドウを非表示にするか。
(17)チャット記録:ローカル保存とサーバー側保存の2つの方法をサポートします。
(18) フレンドグループ:グループの追加・削除、グループ名の変更、フレンドが所属するグループの変更を行います。
(19) チャットウィンドウを開くと、最後の会話の最後の文が自動的に表示されます。
(20) 入力リマインダー: QQ と同様に、相手がメッセージを入力しているときに、私の側のチャット ボックスに相手の「入力」プロンプトが表示されます。
(21) 自動記録: GG2014 は、最後に開いたメイン インターフェイスの位置とサイズ、最後に設定されたフォントの色とサイズなどを自動的に記録します。
(22) メインフォームは自動的に脇に隠されます。
(23) ビデオチャットを録画します。
2. 今後実装予定の機能
(1) 永続化サポートの追加
(2) テレビ会議
3.GGTalk開発環境
開発環境:VS2010、開発言語:C#、.NET Frameworkバージョン:2.0
クライアントを展開する場合、クライアント マシンには VC++2008runtime および VC++2010runtime もインストールする必要があります。
4. GGTalk関連の手順
1. GG を WAN に展開する場合は、サーバーの構成ファイルでリスニング ポートを設定し、クライアントの構成ファイルでサーバーの IP とポートを指定できます。
2. 仮想データベース
(1) 導入とテストを容易にするために、GG は実際の物理データベースを使用せず、メモリ内のデータベース (サーバー側の VirtualDB クラス) を仮想化し、ユーザーの登録情報、友人関係、グループ情報、等
(2) GG には複数の組み込みユーザー (10000、10001、10002、10003) があり、ログイン パスワードはすべて「1」です。
(3) GG に組み込まれているユーザーは全員友達です。
(4) GG には、G001 と G002 の 2 つの組み込みグループがあります。 G001 グループにはすべての組み込みテスト ユーザーが含まれ、G002 グループには 2 人のユーザー (10000 と 10001) が含まれます。
(5) 上記の組み込み情報をVirtualDBクラスのコンストラクタに設定します。
3. マイクとカメラの選択は、クライアントシステム設定画面(SystemSettingForm)で指定できます。
4. 音声とビデオ: 多くの友人が、なぜ音声やビデオ機器が適切に動作しないのか、または音声やビデオがスムーズでないのかを尋ねます。これについては、OMCS 公式ドキュメント (カメラ、マイク、スピーカー、機器) を直接参照してください。テスト、帯域幅要件。
5. 特記事項: GG プロジェクトでは、私が書いたコードが公開される限り、すべて公開されます。すべての DLL にソース コードが必要な場合は、他のソース コードを要求しないでください:)