Tubeyomi Scripting API

投稿日: Jul 23, 2017 7:40:13 AM

TubeyomiはAssetsディレクトリ内にあるJScriptファイル(.jsファイル)を起動時に読み込みます。(1.5.0以降)

JScriptはマイクロソフトが開発したスクリプト言語です。ECMAScriptやjavascriptと互換性があります。

API

[Package]

package Tubeyomi.Scripting;

[Class]

class CommentHandler;

[Method]

function Loaded();

function Commented(comment : Object);

function CommentedArray(commments : Object[]);

function Talked(comment : Object);

function TalkedArray(comments : Object[]);

[Object]

class Comment

{

int OrdinalId; //Tubeyomiが機械的に振る番号

string Number; //Livetubeのレス番 Twitchではnull

string Id; //LivetubeのID Twitchでは括弧で示される本来のID、Nameと同じ場合はnull

string Site; //サイト名 { Livetube, Twitch }

string StreamName; //配信者の名前 Twitchでは配信者のID

string Name; //表示されている名前

string HtmlName;

string UserName; //Livetubeの緑コテ、無ければNameと同じ TwitchではID

string Text;

string HtmlText;

string FormattedText; //読み上げのフォーマットが適用されたテキスト

string Message;

string HtmlMessage;

bool IsSkipped; //読み上げがスキップされたか

string Ban; //BAN理由 { Manual, Word, ImageSize, TextLength, Repeated, LineCount }

string Alert; //通知 { Follow, Subscription, Host, Bit }

long Date; //DateTime.Ticks Livetubeでは書き込み日時 Twitchでは取得日時

}

サンプルプログラム

LoggingSample.js

読み込んだコメントと読み上げられたコメントを取得し、テキストファイルに追記します。

細かいところ

IsChatなどのプロパティはありませんが、if (comment.Site == 'Livetube') のように判定できます。

Tubeyomiから呼び出せるJScriptは、JScript .NETというちょっと高性能なJScriptです。

packageやclassなどのステートメントが使えて、.NET Frameworkの機能の一部も利用できます。

最も奇妙なのは、.NET Framework 1.0の頃から存在していたらしいのに誰も使っていないことです。

僕も最近知りました。