セッションを結合するとき、ToolTalk サービスは、sessid によってメッセージパターンを更新します。たとえば、ptype を宣言する場合、あるいは TT_SESSION
または TT_FILE_IN_SESSION
を指定したメッセージパターンを登録する場合は、tt_session_join を使用してデフォルトセッションを結合します。次のコード例は、デフォルトセッションを結合する方法を示しています。
/* * Join the default session */ tt_session_join(tt_default_session()); |
表 9–2 は、処理の対象とするセッションを結合する場合に使用する ToolTalk 関数を示しています。
表 9–2 デフォルトセッションを結合するための ToolTalk 関数
返される型 |
ToolTalk 関数 |
機能 |
---|---|---|
char * |
tt_default_session(void) |
デフォルトセッションの ID を返す |
Tt_status |
tt_default_session_set(const char *sessid) |
デフォルトセッションを設定する |
char * |
tt_initial_session(void) |
初期セッションの ID を返す |
Tt_status |
tt_session_join(const char *sessid) |
このセッションを結合する |
Tt_status |
tt_session_quit(const char *sessid) |
セッションを終了する |
パターンが更新されてしまうと、結合したセッションを配信範囲としたメッセージを受信します。
あらかじめセッションを結合しており、ptype または新しいメッセージパターンを登録した場合、新しいパターンに一致するメッセージを受信するためには、再び同じセッションまたは新しいセッションを結合してパターンを更新しなければなりません。
デフォルトセッションを参照するメッセージを受信する必要がなくなった場合は、tt_session_quit() 関数を使用します。この関数は、セッションに配信範囲指定されたメッセージパターンから sessid を削除します。