dslclib.src.expression_controller module#
- class dslclib.src.expression_controller.ExpressionController(ip: str | None = None, port: int = 20000)#
ベースクラス:
dslclib.src.base.BaseClient
Ericaの表情をコントロールするクライアント. ソケットにコマンドを送ることでEricaの表情を動かす.
- パラメータ:
ip (str, optional) --
ipアドレス.
デフォルトはNoneであり,Noneが与えられた時,127.0.0.1(ローカルホスト)を指定し, もし,docker内でこのモジュールが立ち上がっていた場合,自動でそれが認識され,host.docker.internalを指定する.
host.docker.internalは,docker内からローカルホストのポートに接続するために必要である.
port (int = 20000) -- ソケット通信を行うポート.
サンプル
>>> client = ExpressionController() ipがNoneだったため、127.0.0.1をipアドレスとして設定します。 >>> client Socket( ip = 127.0.0.1 port = 20000 ) >>>
- express(expression: str | None = None, valence: float = 0, arousal: float = 0, dominance: float = 0, real_intension: float | None = None) None #
Ericaの表情を支持するメソッド. ExpressionTypeを用いることで,簡単に指示を行うことができる.
ExpressionTypeに事前定義されたビルトインの表情を指示する場合は,expressionに表情のidを与える.
独自の表情を指示する場合は,valence, arousal, dominance, real_intensionを与える.
- パラメータ:
expression (str, optional) -- ビルトインの表情を指示する場合に入力する. ExpressionTypeを用いることで,簡単にビルトインの表情を指示することができる.
valence (float, default = 0) -- ExpressionTypeにない独自の表情を指示する時に与える.
arousal (float, default = 0) -- ExpressionTypeにない独自の表情を指示する時に与える.
dominance (float, default = 0) -- ExpressionTypeにない独自の表情を指示する時に与える.
real_intension (float, optional) -- ExpressionTypeにない独自の表情を指示する時に与える.
- class dslclib.src.expression_controller.ExpressionType(MouthA: Literal['mouth-a'] = 'mouth-a', MouthI: Literal['mouth-i'] = 'mouth-i', MouthU: Literal['mouth-u'] = 'mouth-u', MouthE: Literal['mouth-e'] = 'mouth-e', MouthO: Literal['mouth-o'] = 'mouth-o', Normal: Literal['normal'] = 'normal', FullSmile: Literal['fullsmile'] = 'fullsmile', Smile: Literal['smile'] = 'smile', Bad: Literal['bad'] = 'bad', Angry: Literal['angry'] = 'angry', EyeClose: Literal['eye-close'] = 'eye-close', EyeOpen: Literal['eye-open'] = 'eye-open', EyeUp: Literal['eye-up'] = 'eye-up', EyeDown: Literal['eye-down'] = 'eye-down')#
ベースクラス:
object
Expression
Ericaの表情を事前定義したデータクラス. ExpressionType()とインスタンス化する必要はない.
- Angry: Literal['angry'] = 'angry'#
- Bad: Literal['bad'] = 'bad'#
- EyeClose: Literal['eye-close'] = 'eye-close'#
- EyeDown: Literal['eye-down'] = 'eye-down'#
- EyeOpen: Literal['eye-open'] = 'eye-open'#
- EyeUp: Literal['eye-up'] = 'eye-up'#
- FullSmile: Literal['fullsmile'] = 'fullsmile'#
- MouthA: Literal['mouth-a'] = 'mouth-a'#
- MouthE: Literal['mouth-e'] = 'mouth-e'#
- MouthI: Literal['mouth-i'] = 'mouth-i'#
- MouthO: Literal['mouth-o'] = 'mouth-o'#
- MouthU: Literal['mouth-u'] = 'mouth-u'#
- Normal: Literal['normal'] = 'normal'#
- Smile: Literal['smile'] = 'smile'#