You've already forked Irene-Voice-Assistant
mirror of
https://github.com/janvarev/Irene-Voice-Assistant.git
synced 2025-11-23 22:45:08 +02:00
добавлен плагин Рандом - брось кубик, брось монету. Также это пример парсинга команд в дереве
This commit is contained in:
43
plugins/plugin_random.py
Normal file
43
plugins/plugin_random.py
Normal file
@@ -0,0 +1,43 @@
|
||||
# Рандом
|
||||
# author: Vladislav Janvarev
|
||||
|
||||
import random
|
||||
from vacore import VACore
|
||||
|
||||
# функция на старте
|
||||
def start(core:VACore):
|
||||
manifest = { # возвращаем настройки плагина - словарь
|
||||
"name": "Рандом", # имя
|
||||
"version": "1.0", # версия
|
||||
"require_online": False, # требует ли онлайн?
|
||||
|
||||
"commands": { # набор скиллов. Фразы скилла разделены | . Если найдены - вызывается функция
|
||||
"подбрось|брось": { # если нашли - парсим дальше
|
||||
"монету|монетку": play_coin,
|
||||
"кубик|кость": play_dice,
|
||||
}
|
||||
}
|
||||
}
|
||||
return manifest
|
||||
|
||||
def play_coin(core:VACore, phrase: str): # в phrase находится остаток фразы после названия скилла,
|
||||
# если юзер сказал больше
|
||||
# в этом плагине не используется
|
||||
arrR = [
|
||||
"Выпал орел",
|
||||
"Выпала решка",
|
||||
]
|
||||
core.play_voice_assistant_speech(arrR[random.randint(0, len(arrR) - 1)])
|
||||
|
||||
def play_dice(core:VACore, phrase: str): # в phrase находится остаток фразы после названия скилла,
|
||||
# если юзер сказал больше
|
||||
# в этом плагине не используется
|
||||
arrR = [
|
||||
"Выпала единица",
|
||||
"Выпало два",
|
||||
"Выпало три",
|
||||
"Выпало четыре",
|
||||
"Выпало пять",
|
||||
"Выпало шесть",
|
||||
]
|
||||
core.play_voice_assistant_speech(arrR[random.randint(0, len(arrR) - 1)])
|
||||
@@ -12,7 +12,7 @@ if __name__ == "__main__":
|
||||
|
||||
# почему бы сразу не отладить какую-то команду?
|
||||
time.sleep(0.5)
|
||||
cmd_core.execute_next("погода",None)
|
||||
cmd_core.execute_next("брось кубик",None)
|
||||
|
||||
while True:
|
||||
cmd = input("> ")
|
||||
|
||||
Reference in New Issue
Block a user