2012-03-16 15 views
2

iOSデバイスが「サーバー」として機能し、他のデバイスがクライアントのように動作するアプリケーションを開発しています。私が例にするならば、私はBonjourのBonjour - 複数のクライアント - ios iPhone

を使用して、これを作ることができれば Imが理解した上で苦労を取得: を+++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + + + + + + すべての端末に同じアプリがインストールされています。すべてのユーザーが同じWIFIに接続しています。

ユーザーはアプリにログインする必要があります。その場合、チャットルームにはインターネットからCMS(Webサーバー)が配置されます。

すべての "チャットルーム"。しかし、最初はチャットルームはすべて読み取り専用です。誰でもこれらをブラウズすることはできますが、誰もそれらに書き込むことはできません。

管理者(管理者権限を持つユーザー)がチャットルームの1つを開くと、すべてのクライアントが「オープン」のチャットルームに書き込むことができるようになりました。

もちろん、あるユーザーが何かを書き留めると、他のユーザーは彼から最新のコメントを参照します。

管理者はチャットルーム内のすべてのクライアントを表示する必要がありますが、クライアントはお互いを見ることができません。

++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++++

私が見つけたすべてのサンプル(WiTap WWDCから、...)は2つのデバイスのみを使用しています。私は4つのデバイスにWiTapをインストールしました。そして私は、2つのデバイスを使って接続し、 "サンプル"ゲームを行うことができます。

複数のクライアントが1つの「サーバー」に接続されるようにBonjourサービスを使用できますか?

ヒントは大歓迎です!

+0

あなたはチャットルームがWEBベースであると言います。その後、管理者はWebサーバーを介してチャットルームをロック/ロック解除でき、すべてのアプリケーション(管理者を含む)はクライアントとして機能します。それともadminsアプリもWEBサーバーとして機能していると言っていますか? –

+0

あなたにはポイントがありますが、チャットルームでの書き込みは、Bonjourサービスに接続しているクライアントでのみ可能です。他のクライアント(自宅または他のWIFI)はチャットルームに書き込むことはできません。 –

+1

ええと、Bonjourは実際には特定のネットワーク上のサービスをアナウンスするためのものです。たとえば、サーバーとして機能するハードウェアデバイス(またはアプリケーション)を持っている場合(telnet、HTTP、カスタムTCP ...など))Bojurを介してそれ自体を発表することができます。クライアントはBojurを介してIP:portを見つけます。それだけです。この時点から「接続先」と「通信先」はBonjourとは何の関係もありません。私は、あなたがBonjourサービスに接続していないことを意味します。 Bonjour経由でサービスをアナウンスすることができますので、他の人があなたを見つけることができます。また、どのサービスが「ローカル」Bonjourで発表されているかを見ることができます。 –

答えて

0

はい、Bonjourはそのように使用できます。たとえば、Mac OS XのApacheはmod_bonjourであるため、Webブラウザはローカルネットワーク上のWebサーバーを見つけることができます。これは、サーバーが1台で複数のブラウザーがあることを意味します。

BonjourがiOSで設定される方法は、サーバーとクライアントが同じローカルネットワーク上にある必要があるということです。あなたが記述した状況が、Bonjourをそのように使用することと互換性があるように聞こえるが、私はあなたが必要とは思わないように聞こえる。チャットサーバーのDNS名をアプリで使用すると、どのアプリでもサーバーを検出できます。サーバーは、どのクライアントが接続されているかを発見し、人々がお互いを見つけられるようにすることもできます(実際、私はそれがチャットルームのためだと思います)。

+0

はい、この状況のクライアントは同じネットワーク上にあります。あなたの答えは興味深いと思う。私はあなたの提案を掘り下げます。 –

0

これは良いスタート地点です。 http://mobileorchard.com/tutorial-networking-and-bonjour-on-iphone/私はchattyの助けを借りて同じサーバーとクライアントを構築しました。しかし、iPhoneがスリープモードになると、ソケット接続が失われるため、iOS5でのみ問題が発生します。私はこの問題を解決することができません。そう、助けを探している。 :)

関連する問題