カスタムApp

概要

  • TwiChaDashにBot機能を持たせることができます。
  • Pythonコードにより、機能を拡張できます。
  • これらの機能は、v1.1より使えます。
  • 仕様は随時変わることがあります。

仕組み

  • TwiChaDash内部から、IronPython経由でプログラムが呼ばれます。
  • 受信したタイミングで intercept 関数が呼ばれます。
    ここで処理された文字をベースに、リスト表示が作られたり、読み上げられます。
    (中での処理順序は、intercept⇒正規表現⇒ルール の順です)
  • そのほか、プログラム内部から、送信用の入力枠および
    送信ボタンを押すことができます。

前提条件

  • 内部処理は(今更かもですが)Python v2です。
  • 少なくとも、下記のものはインポートしてください。
import System
import clr

受信処理関数 (intercept)

基本構造は下記のとおりです。

def intercept(Message,Username):
     return ( Message )
  • 何も処理しないならば、Messageをそのまま返却してください。
  • 中身を空(=”) にして戻した場合は、表示処理をしません。
  • 文字列以外のものを代入しないでください。

入力アクション

変数名役割
OriginalText上の入力枠System.Windows.Forms.TextBox
TranslatedText下の入力枠System.Windows.Forms.TextBox
  • 入力枠のオブジェクトにアクセスできます。
  • テキストを取得したり書き換えたりするなら、.Text にアクセスしてください。
    (例:OriginalText.Text)

送信アクション

変数名役割
SendOriginalText母国語を送信System.Windows.Forms.TextBox
SendTranslatedText翻訳語を送信System.Windows.Forms.TextBox
  • 実装がうまく行かなくて・・・いまのところはこの仕様です。
    そのうち、もう少しまともに(関数化)したいところ。
  • 送信アクションを送る前に、入力アクションで値をセットしてください。
  • それぞれのボタンを押して、送信アクションをします。
    起動するには、.Text に “go” という文字列を代入してください。
  • SendTranslatedTextで翻訳をする際に、TranslatedTextがセットされてなくて
    なおかつOriginalTextがセットされている場合は、翻訳して送信します。