Jettyとsocket.io.jsを利用してWebSocketのアプリケーションを動かしてみました。Javascript側は、node.js+socket.ioの場合と変わらないので、主にJavaのサーバー部分を中心にまとめています。 socket.ioとsocket.io-javaの関係 socket.ioはnode.jsのモジュールの一つで、WebSocketサーバーとJavascriptクライアントを共に提供します。 前回の記事速習!node.js + socket.ioでは、node.js、socket.ioのセットアップについて簡単に紹介しました。 socket.ioは、クロスブラウザに対応していてどのブラウザでも同じインタフェースで実装できます。また、WebSocketに対応していないブラウザでは代替の通信方法を自動的に選択してくれるので便利です。 2011年4月16日現在
intro なんだかんだ WebSocket を使ってるのに、 WebSocket サーバを自分で書いたことが無かったので、RFC も落ち着いてきたここらで、仕様を読みながら実装してみようと思いました。 "WebSocket サーバ 実装" とかでググると、 Socket.IO とか pywebsocket で WebSocket アプリ作って、「WebSocket サーバを実装」みたいなタイトルになってることが多いみたいですが、 (Apache にPHP で HelloWorld して、「HTTP サーバ実装しました」とは言わないよね。) この記事では、 WebSocket プロトコルをしゃべるサーバ自体を実装します。 といっても、全部やるのはちょっと大変だったので、基本的なテキストメッセージのやりとりの部分だけやって、エコーサーバができるところまでやりました。 完成版のソースは以下で
今日のポストはWebRTCについて。Webでリアルタイム通信サービスを実現するためのAPIです。ブラウザで、plug-inを使わずにテレビ電話サービスを作ることが出来るようになります。 WebRTCってなーに? WebRTCのプロジェクトページの冒頭で、WebRTCを以下のように定義しています。 WebRTC is a free, open project that enables web browsers with Real-Time Communications (RTC) capabilities viasimpleJavascriptAPIs. The WebRTC components have been optimized to best serve this purpose. ベタに訳すると「WebRTCはオープンなプロジェクトです。簡単な複数のJavascript
長い記事なので、先に結論だけ書いておきます。WebSocketのバイナリメッセージ機能は、これまでのインターネットのあり方をひっくり返します。「そんなの知ってるよ」という方もいるとは思います。僕も理屈では分かってたつもりだけど、実際にアプリを作ってみて、具体的にそれを感じることができたので、ちょっと長いですがどういうことなのか説明してみます。 WebSocketとは # WebSocketは、HTML5関連の中でも特に注目を集めている技術の一つです。通常のHTTP通信であればクライアントからのリクエストなしにサーバーは応答しませんが、WebSocketを使うことでクライアントとサーバーの間で双方向の通信が可能となります。これを利用することで、今後様々なリアルタイム性の高いサービスを構築することが可能になるでしょう。 そんなWebSocketですが、これまで波乱の道を歩んできました。数年前か

WebSocket client for Titanium MobileはTitanium MobileでWebViewを使わずにWebSocketを直接扱えるようにするライブラリです。 Webブラウザでリアルタイムにメッセージを交換したいならば使ってみたいのがWebSocketです。そんなWebSocketを使う場合、Webブラウザ(またはコンポーネント)を使いますが、直接扱ってしまおうというのがWebSocket client for Titanium Mobileです。Titanium開発者は必見です。 まずサーバを立ち上げます。サンプルサーバが付属していますのでそれを使います。 ついでサンプルのiPhoneクライアントを立ち上げます。 コネクトを実行するとサーバ側で接続が確認できます。 メッセージを飛ばせば表示されます。iPhone側ではこんな感じに表示されます。 切断しました。
WebSocketって何? WebSocketは、Javascriptでサーバとリアルタイム双方向通信をする仕組みです。概要は第1回 WebSocket登場までの歴史:Jettyで始めるWebSocket超入門|gihyo.jp …技術評論社によくまとまっています。 この記事ではWebSocketサーバを実装しながら、どういうプロトコルかを解説します。サンプルコードはWebSocket Draft 76でechoサーバーを作ってみた - いろいろな何かのものを参考にさせていただいています。ありがとうございます。 ※WebSocketプロトコルは現在ドラフトの段階なので、そのうち仕様が変わる可能性があります。この記事は20111/23時点の情報です。 プロトコル概要 WebSocketで通信を行なうおおまかな流れは次のようになります。 クライアントとサーバの間でハンドシェイクを行ない、接続

ずっと、待ち焦がれていたAPIが、ついにテスト実装されました。ブラウザから、カメラのライブストリームを取得するStreamAPI (仕様はWHAT WGのサイトに記載)です。 この機能により、Webアプリのポテンシャルが飛躍的に向上すると期待されます。例えば、ビデオチャット。 カメラから取得した映像データを、Websocket で相互に交換すれば、ブラウザのネイティブ機能だけで、簡単に実現できます。 この機能が、実装されたのは、Opera mobileのテクニカルプレビュー(forAndroid)。以下のサイトの[Androidbuild]からインストール出来ます。 http://my.opera.com/core/blog/2011/03/23/webcam-orientation-preview また、詳しくは以下のブログ(WebOSGoodies)で紹介されています。是非、ご
Legendary scribbles aboutJavaScript,HTML5, AJAX,PHP,CSS, and ∞. クライアントサーバ間で非同期双方向通信を実現するWebSocketAPIの実装が進んでいる。今のところFirefox 4、Chrome 4、Opera 10.70、Safari 5がWebSocketAPIの実装を取り込んでいる。1日現在、WebSocketAPIはW3Cドラフトの段階にあり仕様は固まっていない。またIEもサポートしていない。しかしWebページやWebアプリがクライアントサーバ間通信を実施するための有用なツールになっており、優れたユーザ体験を提供するためには活用を検討したい技術になっている。 クライアントサーバ間通信はすでにAjax技術で実現されているため、WebSocketAPIの利点がよくわからかいユーザも多いようだ。既存のAj
第7回のHTML5とか勉強会で、羽田野さんにAudio DataAPIを教えていただいて依頼、やりたかったことがあります。それは、AudioをWebSocketを使ってストリーミング配信すること。これが出来たので紹介します。 音声ストリーミングは、リアルタイム系のサービスの中では難しい部類の一つ。遅延がひどいと、自然なコミュニケーションが難しく、またネットワーク転送中にジッタ(データ到達間隔が揺らぐこと)が起きると、音がプツプツ切れたり間延びしたりと明らかに違和感が生じます。インターネットでは、厳密な意味でのQoS制御は困難ですので、どうしても遅延やジッタが生じますし、これらのパラメータはネットワーク転送だけでなく、サーバーークライアントでの実装ももろに効いてきます。 といったわけで、音声ストリーミングみたいなサービスがブラウザ+Javascriptだけで出来たら、結構嬉しいよな〜やりた
1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く