~~NOCACHE~~ ~~DISCUSSION~~ ## PocketBridge ## 概要 PCとスマートフォン(または端末間)で、テキストメッセージやファイルをシームレスに直接送受信できるWeb/PWAアプリケーションです。 Firebaseによるリアルタイム同期と、WebRTC DataChannelを用いたサーバーレスP2Pファイル転送により、容量制限やクラウドストレージ費用を気にせずセキュアに共有できます。 ## システム構成図 {{.:pasted:20261008-075101.png?direct 600}} ## 画面イメージ ### メイン画面(トーク) {{.:pasted:20261008-075716.png?direct 300}} {{.:pasted:20261008-075820.png?direct 300}} ### メイン画面 ## 主な機能 * **Googleアカウント認証**: Googleログインで安全かつ手軽に端末間で同一アカウント・フレンド連携。 * **マルチデバイス対応(PWA/拡張機能/Web)**: PCブラウザ、スマートフォンのホーム画面追加(PWA)、Chrome拡張機能としてどこからでも利用可能。 * **リアルタイムテキスト同期**: Cloud Firestoreを利用した高速なメッセージ送受信・会話履歴の同期。 * **高速P2Pファイル転送**: WebRTC DataChannelにより端末同士が直接通信。大容量ファイルもクラウドストレージを介さず直接・高速に転送。 * **ゼロストレージコスト設計**: アバターなどのアイコン情報はクライアント側で最適化(Base64)し、ファイル転送はP2Pで完結するため、クラウドの容量課金が発生しません。 * **デスクトップ / Web通知**: メッセージやファイル送信リクエストをプッシュ通知で即座に通知。 ## 基本操作 ### 初回起動とログイン 1. **アクセス**: PCブラウザまたはスマートフォンのブラウザでアクセスします(スマホは「ホーム画面に追加」でアプリ化可能)。 2. **Googleログイン**: 画面の「Googleでログイン」ボタンを押し、Googleアカウントで認証します。 ### 操作方法 * **テキスト送信**: メッセージ入力欄にテキストを入力して「送信」ボタン(またはEnter)でリアルタイムに共有されます。 * **ファイル送信(P2P)**: * クリップアイコン/ファイル送信ボタンから送信したいファイルを選択します。 * 相手端末(同一ユーザーの他端末または友達)に転送リクエストが届きます。 * 受信側で「受信」を許可すると、端末間で直接P2P通信が確立されダウンロードが始まります。 * **フレンド・グループ管理**: 友達追加やチャンネル切り替えにより、特定端末同士やグループ間でのやり取りが可能です。 * **設定**: プロフィールのアバター変更、通知のオン/オフ切り替えが可能です。 ## システムアーキテクチャ * **Firebase Authentication**: ユーザー認証(Googleログイン) * **Firebase Hosting**: 静的Webアプリケーション(HTML/CSS/JS)の高速配信 * **Cloud Firestore**: トーク履歴、フレンド情報、P2P接続確立用シグナリング(SDP / ICE Candidate)の管理 * **公開STUNサーバー(Google)**: NAT/ファイアウォール越えのためのパブリックIP解決 * **WebRTC DataChannel**: 端末間(PC ⇄ スマホ等)の暗号化直接P2Pファイル転送 ## トラブルシューティング * **P2Pファイル転送が始まらない / 失敗する**: * 送信側・受信側の双方がPocketBridgeを開いた状態(オンライン)である必要があります。 * 厳格な企業内ファイアウォールや対称型NAT環境ではP2P接続が制限される場合があります。その場合は同一Wi-Fi内での接続などをお試しください。 * **通知が届かない**: ブラウザ側の「通知の許可」設定がブロックされていないかご確認ください。 * **ログインできない**: ポップアップブロックが有効になっている場合は、一時的に解除して再度ログインしてください。 ## 開発情報 - **開発**: mnztech.work - **バージョン**: 1.0 - **対応環境**: モダンブラウザ(Chrome, Edge, Safari, Firefox)、Android(PWA / Android App対応予定) - **技術スタック**: JavaScript (ES6+), WebRTC, Firebase (Auth / Firestore / Hosting), PWA - **生成AI**: Gemini ## 更新履歴 - **v1.0**: 初回リリース(PWA / WebRTC P2Pファイル転送 / Firestore同期対応) {{tag>生成AI WebRTC PWA Firebase Webアプリ}}