汁ごはん このページをアンテナに追加 RSSフィード

2011年05月01日 (日曜日)

ライブラリ作り

WindowsC++を使った開発をする時に、現在もメンテナンスされていてかつ実用的に動くXMPPクライアントライブラリを見つけられなかったので、仕方無しに作ってみようかと思います。いつまで続くのかは分かりませんが。

まずはStream, Stanzaクラス。この辺りは無難。Stanzaクラスの子クラスにはMessage, Presence, IQクラス。この辺りは誰が作っても変わらないはず。

ユーザーに直接見せるクラスはXmppClientクラス。受信したStanzaを受け取るコールバックメソッドがあったり、またRosterの管理をしたり。巨大なクラスになりそうなので、あまりに巨大になりそうだったら直接Stanzaを扱う低レベルな部分と、高レベルな部分でクラスを分割するような形になるのかも。

小道具として必要な物がいくつかあります。SAXパーサライクなXMLライブラリは自作予定。Winsockは2を利用。Validity Constraintsにまで準拠するような厳密な解釈をしようとしなければ、おそらく自作してしまった方が早いかと。TLSはOpenSSLを使った方がいいのか、WindowsSSL API(という物があるらしい)を使った方がいいのか、よく分かっていない。SASLはCyrus SASLを使う。Stringprepはどうしようか未定ですが、RFCを解析してプログラム中に表を持つようにするのかも。

まずはRFCの範囲の実装を頑張ります。XEPの範囲は追々。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/silphire/20110501/1304208815
Connection: close