* Ghosts on the Web [#o5a04eec]

Category:[[仕様メモ]]

ゴーストって割とローカルで「閉じて」いて、Webと連係して
どうこうってのは(Webから一方的にデータを取るヘッドラインを
除くと)あんまり無いような気がします。

何となく個人的には、今年はゴーストonWebについて色々やって
みたいなーと、そんなメモです。


**SSTP ActiveXコントロール [#z227950a]

単純にWebページからゴーストに対してメッセージを送るだけなら、
(既にあるかもしれませんが)ActiveXコントロールを作る
のが一番楽かと。

OBJECTタグでページにActiveXを埋め込んでおいて、
JavaScriptか何かでそのActiveXを制御、クライアントでDSSTPを
使ってゴーストにスクリプトを叩き込みます。

***メリット [#f585bcce]

-作るのも使うのも楽そう
-クライアント側にプログラムをインストール等の準備が要らない

***デメリット [#y210099d]

-Webからの一方的なデータ送信にしか使えない(相方向のインタラクションができない)
-ブラウザ、OSを選ぶ
-クライアント側でゴーストが立っていないと意味が無い

***要確認 [#mf7979ea]

-既にあるか?
-ActiveXからのSSTP送受信のフィジビリティ

***実装例 [#m9d441a3]

-とりあえず作ってみました。[[浮子屋本舗:/other/dsstpsend.html]]



**S-V on Web(仮称) [#gf715845]

Webブラウザ上で動作するSSTP-Viewerもどきを作って、ページ内
(或いはポップアップ)に表示します。

ページ内のJavaScriptでそのSSTP-Viewerもどきにスクリプトを
喋らせます。

SSPでなくSSTP-Viewerもどき、なのは単純にゴーストのフル
機能を実装するのはとても面倒だと思われるからで、
SVGを使うのであれば比較的実装が簡単かという日和見です。

***メリット [#re17f923]

-クライアントにゴーストが立っている必要がありません。
それどころか、ベースウェアが何もインストールされていなくても
動作します。(''これ重要!'')
-Webページのイベント(例えばあるリンクにマウスが乗った)に反応して
インタラクティブにゴーストを喋らせることができます。
-例えば、ゴーストに更新履歴を喋らせて、その更新履歴の中身から
\URLタグで別ページに飛ばす、あるいはゴーストに[はい][いいえ]な
選択肢を喋らせて、ユーザの選んだ結果をCGIで集計する、等の、
Webとゴーストで双方向のインタラクションが比較的容易かと。

***デメリット [#db9ca6c9]

-SVGの再配布に関するポリシー関連をクリアしなければいけません。
-実装が結構大変そうです。

***実装方式案 [#z4891bcf]

-FLASHで作成、javascriptでHTMLページとやりとり
--どうも最新版のFLASHでもPNGの読み込みができないらしい(致命的!)
--PNGの読み込みさえできれば一番向いた技術か?
--でもprofessional版が必要、高い(8万)!

-Java Appletとして作成、Java Plug-in(JObject)及びJavaScriptでHTMLとやりとり
--Javaもなんだかんだ言って実行環境の影響を受けやすいような
--Javaで作ってしまうとWindowsネイティブとしての再利用はかなり無理

-ActiveX(C++)として作成
--ActiveX->JavaScript、JavaScript->ActiveX の情報の受け渡し経路がまだ見えない
--動作するブラウザ、OSが限定される
--でも出来てしまえばWindowsネイティブアプリにもユーザコントロールとして再利用できそう

-JavaScript+DHTML+CGIで作成
--スクリプトで全部書くのはかなりめどい…
--CGIを経由することにすると、その度にサーバとの通信が発生→リアルタイム性低下
--画像を全部読み込んでから動作させる、なんてことができなそう
--一応技術的には上記の画像の読み込み遅延を除けば可能ではありそう
--一番ブラウザ、OSを選ばない方式
--ソースが公開状態と言えるので皆で色々拡張できるかも

***JavaScript [#p499aa49]

-ちょっと形は違うけど、とりあえず作ってみました。[[浮子屋本舗:/other/sakurajavascript.html]]

----

何かコメントあればこちらに。
#comment(below);

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS