webcface.client module

class webcface.client.Client(name: str = '', host: str = '127.0.0.1', port: int = 7530, auto_reconnect: bool = True, auto_sync: float | None = None)[source]

Bases: Member

サーバーに接続する

詳細は Clientのドキュメント を参照

Parameters:
  • name – 名前

  • host – サーバーのアドレス

  • port – サーバーのポート

  • auto_reconnect – (ver2.0〜) 通信が切断された時に自動で再接続する。(デフォルト: True)

  • auto_sync – (ver2.1〜) 指定した間隔(秒)ごとに別スレッドで自動的に sync() をする (デフォルト: None (syncしない))

close() None[source]

接続を切る

  • ver1.1.1〜 キューにたまっているデータがすべて送信されるまで待機

  • ver1.1.2〜 サーバーへの接続に失敗した場合は待機しない

property connected: bool

サーバーに接続できていればtrue

ver2.0からプロパティ

property logging_handler: Handler

webcfaceに出力するloggingのHandler

(ver2.1〜: Log名は “default”, log().handler と同じ)

Returns:

logger.addHandler にセットして使う

property logging_io: TextIOBase

webcfaceとstderrに出力するio

(ver2.1〜: Log名は “default”, log().io と同じ)

member(member_name: str) Member[source]

他のメンバーにアクセスする

members() Iterable[Member][source]

サーバーに接続されている他のmemberをすべて取得する。

自分自身と、無名のmemberを除く。

on_member_entry(func: Callable) Callable[source]

Memberが追加されたときのイベント

コールバックの引数にはMemberオブジェクトが渡される。

ver2.0〜: * 呼び出したいコールバック関数をfuncとして client.on_member_entry(func) などとすれば関数を登録できる。 * または @client.on_member_entry をデコレーターとして使う。

property server_hostname: str

サーバーのホスト名 (ver2.0〜)

property server_name: str

サーバーの識別情報

Returns:

通常は”webcface”が返る

property server_version: str

サーバーのバージョン

start() None[source]

サーバーに接続を開始する

sync(timeout: float | None = 0, auto_start: bool = True) None[source]

送信用にセットしたデータをすべて送信キューに入れ、受信したデータを処理する

  • 実際に送信をするのは別スレッドであり、この関数はブロックしない。

  • サーバーに接続していない場合、start()を呼び出す。

  • ver2.0〜: 受信したデータがあれば各種コールバックをこのスレッドで呼び出し、

それがすべて完了するまでこの関数はブロックされる。 * ver2.0〜: timeoutが正の場合、データを受信してもしなくても timeout 経過するまでは繰り返しsync()を再試行する。 timeout=0 または負の値なら再試行せず即座にreturnする。 (デフォルト、ver1.1までのsync()と同じ) * timeout がNoneの場合、close()するまで無制限に待機する。 * autoReconnectがfalseでサーバーに接続できてない場合はreturnする。 (deadlock回避)

Parameters:
  • timeout – (ver2.0〜) sync()を再試行するタイムアウト (秒単位の実数、またはNone)

  • auto_start – (ver2.1〜)

wait_connection() None[source]

サーバーに接続が成功するまで待機する。

接続していない場合、start()を呼び出す。