Telepathy

| この項目では、アプリケーションフレームワークについて説明しています。超能力については「テレパシー」をご覧ください。

|

Telepathy（テレパシー）は、インスタントメッセージングやVoice over IP、ビデオ会議のような個人間のコミュニケーションを目的とするソフトウェアを作成する際に使われるアプリケーションフレームワークの総称である。テレパシーを使うことで、D-Busのプロセス間通信メカニズムによるコンポーネントを利用したコミュニケーションソフトウェアを作ることが出来る。各アプリケーションとそれらが用いているネットワークプロトコルの境界を明確にすることにより、コミュニケーションソフトウェアの開発を単純にすること、また自由ソフトウェアやオープンソースソフトウェアの開発者たちによるコード再利用を促進することが目標とされている。

以下に挙げる例は、テレパシーのインターフェイスを出力する様々なプロトコルが自由ソフトウェアとして実装されているケースである。

* Gabble：オープンソースのインスタントメッセージングサーバであるXMPPに用いられている。XMPPの拡張機能であるJingle（英語版）のサポートも含む。
* Butterfly：MSN Messengerに用いられている。
* Idle：Internet Relay Chatに用いられている。
* Salut：リンク・ローカルな XMPP プロトコルに使用されている。
* Haze：Pidginに用いられている、libpurpleライブラリがサポートするプロトコルのアクセスに用いられる。2007年のGoogle Summer of Codeプロジェクトの一環として行われた[1]。
* Telepathy-SofiaSIP：ノキアのオープンソースなSofia-SIP libraryを用いたセッション確立プロトコルに用いられる。

末端のアプリケーションに低位テレパシーコンポーネント（例えば接続マネージャ）の詳細を表示する方法を提示するコンポーネントの一つに、ミッション・コントロールがある[2]。

テレパシーを用いた基本的なインスタントメッセンジャーとテレビ電話ソフトウェアがノキア製携帯電話であるNokia 770、N800、N810に搭載されている。Maemo・OpenMokoスマートフォンプラットフォームの一部である。

## 仕様

[編集]

プロトコルを実装することにより、「接続マネージャ」と呼ばれるD-Busサービスが与えられる。サービスに接続するためには、テレパシーのクライアントがその実装されたプロトコルを用いる必要がある。一度接続が成立すれば、以降のコミュニケーションは、接続により要求される“チャンネル”というオブジェクトを用いて行われる。例えば、あるチャンネルではテキストメッセージを送受信したり、コンタクトリストを表示したり、もしくはIP電話をしたりすることが出来る。

## 関連アプリケーション

[編集]

* Empathy
* Decibel

## 外部リンク

[編集]

ポータル FOSS

* プロジェクトのウェブサイト
* Telepathyの開発代表者 Robert McQueenによるスピーチが視聴可能："IM/VOIP Communications Framework" (77MB oggビデオ)もしくはストリーミングフラッシュビデオから。

## 脚注

[編集]

1. ^ “Telepathy - Pidgin - Trac”. 2007年7月18日閲覧。
2. ^ mission-control

* 表
* 話
* 編
* 歴

freedesktop.orgのプロジェクト

コンポーネント|

* Avahi
* Compiz
* D-Bus
* DRI
* Enchant
* Flatpak
* kmscon（英語版）
* luit（英語版）
* nouveau
* PackageKit
* Plymouth（英語版）
* PulseAudio
* systemd
* Wayland
* X.Org Server
* Glamor
* Xephyr（英語版）

ライブラリ|

* AppStream
* cairo
* Fontconfig
* glitz
* GStreamer
* Mesa 3D
* fprint
* HarfBuzz
* Pango
* Poppler
* Swfdec
* Video Acceleration API（英語版）
* XCB
* Xft

フレームワーク|

* CppUnit（英語版）
* Galago
* GeoClue
* Open Collaboration Services（英語版）
* Telepathy

ミーテイング|

* Create Project（英語版）
* Portland Project