elecdeer / yosuga-bot

Discord用読み上げBot
MIT License
1 stars 1 forks source link

MessageComponentによるインタラクション部を汎用化する #176

Open elecdeer opened 2 years ago

elecdeer commented 2 years ago

イメージ

const inquirer = createInteractionInquire({
  replyMessage: (message: string) => createYosugaEmbed(message),
  time: 5*60*1000,
  ephemeral: true,
  multipleReply: true,
});

const volumeAnswer = await inquirer.prompt([{
  type: "selectRangeValue",
  message: "音量を選択",
  id: "volume"
  min: 0,
  max: 2,
  tick: 0.1,
  withDefault: true
}]);

logger.debug(volumeAnswer.volume);

const speakersAnswer = await inquirer.prompt([{
  type: "select",
  options: [{
    value: "zundamon",
  }, {
    value: "metan",
    label: "四国メタン",
  }],
}, {
  type: "confirmButton",
  label: "登録"
}], {
  onTimeout: (context) => {
  },
  onInteraction: (context, interaction) => {
    if(~~){
      inquirer.resolvePrompt();
    }
  }
});
elecdeer commented 2 years ago

Discordのスレッド立ててその中でやり取りするようにもできると便利そう

elecdeer commented 2 years ago

ページング対応SelectMenuのメモ