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の頃から存在していたらしいのに誰も使っていないことです。
僕も最近知りました。