シューマイぼっと改

提供: ますとどんちほー図書館
移動先: 案内検索

シューマイぼっと改とは、シューマイが以前作成した「シューマイぼっと(β)」の後継にあたる対話型botである。シューマイぼっと(β)や他のいくつかのbotと違い、返答しかしないという特徴を持ち、自発的に発言(時報など)する事は無い。

     _                        _ ____            _
    | | __ _ _ __   __ _ _ __(_)  _ \ __ _ _ __| | __
 _  | |/ _` | '_ \ / _` | '__| | |_) / _` | '__| |/ /
| |_| | (_| | |_) | (_| | |  | |  __/ (_| | |  |   <
 \___/ \__,_| .__/ \__,_|_|  |_|_|   \__,_|_|  |_|\_\

 _  __                        _                           _ ____   ___ _____
| |/ /___ _ __ ___   ___  ___| |__  _   _ _ __ ___   __ _(_) __ ) / _ \_   _|
| ' // _ \ '_ ` _ \ / _ \/ __| '_ \| | | | '_ ` _ \ / _` | |  _ \| | | || |
| . \  __/ | | | | | (_) \__ \ | | | |_| | | | | | | (_| | | |_) | |_| || |
|_|\_\___|_| |_| |_|\___/|___/_| |_|\__,_|_| |_| |_|\__,_|_|____/ \___/ |_|

VER 1.0.0 クライアント起動時に表示されるアスキーアート[1]。もしかして:自己満)

命令の書き方

シューマイぼっと改でなにかをする際は必ず@shumai_botにメンションを張る必要があります。@shumai_botメンションを付けていない投稿はシューマイぼっと改から命令だと認識されず、全て無視されます。

次に、やりたい事をタグで指定します。タグを付けることで何をしたいのかをシューマイぼっと改に認識させます。タグがない投稿は後述する無名関数として実行される場合があります。

基本形

@shumai_bot #命令 それ以外の場所は引数

命令一覧

シューマイぼっと改で使える命令は以下の通りです。

なんでも肯定

@shumai_bot #なんでも肯定 肯定させたい文

返り値:シューマイぼっと改が「はいそうです」と肯定します。

読み込み元:LTL

投稿先:LTL

絶対に肯定させる場合に使います。

使用例:@shumai_bot ん?今なんでもするって言ったか? #なんでも肯定

返答:はいそうです

匿名投稿

@shumai_bot #匿名投稿 投稿したい文章

返り値:シューマイぼっと改が代わりに投稿します。

読み込み元:DM(シューマイぼっと改)

投稿先:LTL

使い方はあなた次第です。LTLに流すのではなく、シューマイぼっと改に"ダイレクトメールする"点に注意してください。LTLに投稿された#匿名投稿タグは読み取りません。悪用厳禁。

使用例:@shumai_bot #匿名投稿 私は焼売です。食べてください。

返答:私は焼売です。食べてください。 by 匿名

LISP

@shumai_bot #lisp LISPコード

返り値:LISPコードの実行結果

読み込み元:LTL

投稿先:LTL

プログラミング言語「LISP」を実行出来ます。LISPの処理系はnpm install --save lispでインストールできる簡易的な物を使用しています。そのため、計算くらいしか出来ません。結果に期待and信用しないでください

使用例:@shumai_bot #lisp (+ (* 1 2) 3)

返答:5

おい

@shumai_bot #おい 適当な文

返り値:シューマイぼっと改が「すん」と返事します

読み込み元:LTL

投稿先:LTL

生意気ですね。

使用例:@shumai_bot #おい うんとかすんとか言えよ

返答:すん

天気

@shumai_bot #天気

返り値:天気を教えてくれます。(誰も日本の天気だとは言っていない)

読み込み元:LTL

投稿先:LTL

#今日の天気 でも反応

使用例:@shumai_bot #天気

返答:今のSireの天気はCloudsです。 (13,5) (エチオピアのオロミア州「シレ」)

文章予想

@shumai_bot #文章予想 書きかけの文章

返り値:何か文章を与えると、その分に続く文章を予測して返答します。

読み込み元:LTL

投稿先:LTL

頻繁に使用すると迷惑なので#迷惑をかけないを用意しました。このタグを一緒につけると、ぼっとはLTLではなくその投稿に返信します。

精 度 の 低 さ を 気 に し て は い け な い

使用例:@shumai_bot #文章予想 東北新幹線

返答:東北新幹線なっている所で、白い色の服を着た男性がスケートボードをしています。 #文章予想回答集 #文章予想

フレンズガチャ

@shumai_bot #フレンズガチャ

返り値:ガチャ結果

読み込み元:LTL

投稿先:LTL

フレンズの出るガチャが引けます。現在18種類!コンプしよう!

なお、一人一日一回までという制限付き。 使用例:@shumai_bot #フレンズガチャ

返答::nihonookami: ! 名前:ニホニホ ニホ!ニホニホニホ!ニホニホニホニホ!だんだんあなたはニホが二木に見えてくる... #フレンズガチャ

こもりうた

@shumai_bot #こもりうた

返り値:子守歌(全7種類)

読み込み元:LTL

投稿先:LTL

なかなか寝れないときはシューマイぼっとに子守歌をうたってもらおう!

使用例:@shumai_bot #こもりうた

返答:起来!不愿做奴隶的人们!把我们的血肉,筑成我们新的长城!中华民族到了最危险的时候,毎个人被迫着发出最后的吼声。

ランキング

@shumai_bot #ランキング

返り値:今日のがおー数ランキング

読み込み元:LTL

投稿先:LTL

今日のがおー数のランキングを返します。自分の順位の確認には後述する#何位を使ってください。

使用例:@shumai_bot #ランキング

返答:いまのところ今日一番がおーしたのはshumaiさんです。

何時ですか

@shumai_bot #何時ですか

返り値:今何時か(全4種類+191種類)なんで時間に種類があるんだよ

読み込み元:LTL

投稿先:LTL

時間を返してくれるなんて誰も言ってません。(なお、3行上)

使用例:@shumai_bot #何時ですか

返答:インターチェンジ

だう平均株価

@shumai_bot #だう! @shumai_bot #でう! @shumai_bot #dow など

返り値:現在のダウ平均株価

読み込み元:LTL

投稿先:LTL

ウミウつながりです(?)

使用例:@shumai_bot #だう!

返答:NYだう! 26797.46だう!

日経平均株価

@shumai_bot #日経平均

返り値:日経平均株価

読み込み元:LTL

投稿先:LTL

ダウがあるなら日経平均もだよね

使用例:@shumai_bot #日経平均

返答:21318.42カブ!

ナスダック

@shumai_bot #ナス

返り値:ナスダック

読み込み元:LTL

投稿先:LTL

何この株価シリーズ。

使用例:@shumai_bot #ナス

返答:7,856.88ナス!

何位

@shumai_bot #何位

返り値:あなたのがおー数順位

読み込み元:LTL

投稿先:LTL

あなたの今日のがおー数が何位なのかがわかります。

使用例:@shumai_bot #何位

返答:あなたの順位は6位です!

イベント追加挙動が怪しい(ベータ版)

@shumai_bot #イベント追加 _イベント名_ 09/25 01:23

返り値:指定された日付の指定された時間になったらイベント名を返します。

読み込み元:LTL

投稿先:LTL

ベータ版です。

1がおー20円

@shumai_bot #1がおー20円 @shumai_bot #がおー使用料

返り値:もし1がおーにつき20円かかるとしたときのあなたの今日の金額

読み込み元:LTL

投稿先:LTL

いつの日かそんな話題が上がったので

使用例:@shumai_bot #1がおー20円

返答:もし1がおーにつき20円なら、shumaiさんは今日720円です。

ジンバブエドル換算

@shumai_bot #ジンバブエドル 123456 @shumai_bot #zwd 123456

返り値:ジンバブエドル

読み込み元:LTL

投稿先:LTL

その名の通り。

使用例:@shumai_bot #ジンバブエドル 600

返答:300000000000000ジンバブエドル = 1円だとすると、600円は約180000000000000000ジンバブエ・ドルです。

どやどや

@shumai_bot #どやどや

返り値:どやどや~ :doyaa:

読み込み元:LTL

投稿先:LTL

シューマイの推しです。

使用例:@shumai_bot #どやどや

返答:どやどや~ :doyaa:

翻訳(休止中)

@shumai_bot #翻訳 #翻訳先の言語2文字 $翻訳元の言語2文字 翻訳内容

返り値:翻訳結果

読み込み元:LTL

投稿先:LTL

翻訳します。 言語を表す2文字はここを参照。

使用例:@shumai_bot #翻訳 #zh $ja テストすいません

返答:$ en对不起测试

絵文字変換(復旧しました)

@shumai_bot #絵文字変換 変換内容

返り値:ちほー文字

読み込み元:LTL

投稿先:LTL

文章を絵文字で表現します。

使用例:@shumai_bot #絵文字変換 このせかいにひびけルルルタタ ふたりだけのメロディ

返答:こ​:k_no:​​:kf3_se:​​:k_ka:​​:kf3_i:​​:hnmr_ni:​ひ​:dubs_bi:​​:k_ke:​​:snro_kit_ru:​​:snro_kit_ru:​​:snro_kit_ru:​​:snro_ta:​​:snro_ta:​ ​:k_fu:​​:snro_ta:​​:k_ri:​​:kd_da:​​:k_ke:​​:k_no:​​:tmrmn_me:​​:snro_kit_ro:​​:g_de:​​:snro_kit_i:​ #絵文字変換

とは検索

@shumai_bot 検索キーワード #とは

返り値:Wikipediaのリンク

読み込み元:LTL

投稿先:LTL

DuckDuckGoのAPIを使用しています。結果になるウィキは英語が優先されます。

使用例:@shumai_bot けものフレンズ #とは

返答:ヒットしました。https://en.wikipedia.org/wiki/Kemono_Friends

無名関数

タグがないけど反応する機能。タグはいらないけど@shumai_botのメンションは必要。

["呼べ", "呼んで", "教えて", "教えろ", "起こして"]

はたして呼んでくれるでしょうか

["おい"]

すん

["トントントントン", "トンx4"]

ヒノノニトン!

即時関数

もはやタグもメンションもどっちもいらない機能。単語に反応してるだけ。

system shutdown

ぎにつねと同時に死ぬために書いた機能。死ぬときは一緒。

手動停止

ぎにつねの指示で死ぬための機能。実際に死んでいるわけではない。

起動

ぎにつねが起動してくれるかなってワクワクして実装した機能。今はもうかなわない。 ぎにつね復活?

実際に何かが起こっているわけではない。起動してなきゃ反応できないからね。

投稿禁止用語

  • @bot
  • @shumai_bot
  • @getgpd
  • system shutdown

詳細

プラットフォーム:Node.js

使用ライブラリ:mastodon-api node-fetch lisp(lisp/legacyモードで読み込み) date-utils form-data fs

使用WebAPI:

  • https://mstdn.kemono-friends.info/api/v1/ (ちほー)
  • https://api.bitflyer.jp/v1/ticker?product_code=${coin} (bitcoin取得)
  • http://api.openweathermap.org/data/2.5/weather?APPID=${apikey}&lat=${lat}&lon=${lon} (#天気)
  • https://api.a3rt.recruit-tech.co.jp/talk/v1/smalltalk (コラム:会話ちゃんと同じAPIっぽい)
  • https://api.a3rt.recruit-tech.co.jp/text_suggest/v2/predict?apikey=${apikey}&previous_description=${string} (#文章予想)

使用streaming:2本

使用streaming:streaming/public/local(LTL取得用) streaming/direct(DM取得用)

例外処理のクオリティ:そこそこ落ちない。たまーに落ちる。

暴走経験:3回(そのうち一回は旧しゅーまいぼっとでのことなので実質2回)

  1. (2018年) if分の条件を間違えたため、何度も投稿された。→ if分を修正
  2. (2019年) bot同士で対話が起き、無限に続く状態になった。→ botに対しては反応しないように修正
  3. (2019年) DMで会話ができる機能で、shumai_bot同士が無限に会話した。→ DMでもbotに対しては反応しないように修正

参照