Added spotify skill (not really working atm... issue with regexs)
This commit is contained in:
parent
a3e1da051b
commit
837b87a41d
@ -3,8 +3,7 @@ from flask import Flask, request, jsonify, Response
|
|||||||
|
|
||||||
from jarvis.ia import process
|
from jarvis.ia import process
|
||||||
from jarvis.skills import intent_manager
|
from jarvis.skills import intent_manager
|
||||||
from jarvis.skills.entertainement.jokes import JokesSkill
|
from jarvis.skills.entertainement.spotify import SpotifySkill
|
||||||
from jarvis.skills.research.wikipedia import WikipediaSkill
|
|
||||||
from utils import config_utils, flask_utils, intents_utils, utils
|
from utils import config_utils, flask_utils, intents_utils, utils
|
||||||
|
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
@ -36,13 +35,17 @@ def process_request():
|
|||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
# Tests
|
# Tests
|
||||||
WikipediaSkill().register()
|
# WikipediaSkill().register()
|
||||||
JokesSkill().register()
|
# JokesSkill().register()
|
||||||
|
SpotifySkill().register()
|
||||||
|
|
||||||
intent_manager.process_handlers()
|
intent_manager.process_handlers()
|
||||||
|
|
||||||
intent_manager.recognise("cherche sur wikipedia Elon Musk")
|
# intent_manager.recognise("cherche sur wikipedia Elon Musk")
|
||||||
intent_manager.recognise("raconte moi une blague")
|
# intent_manager.recognise("raconte moi une blague")
|
||||||
|
intent_manager.recognise("joue le morceau crazy crazy nights de KISS sur spotify")
|
||||||
|
intent_manager.recognise("joue le morceau crazy crazy nights de KISS sur spotify")
|
||||||
|
intent_manager.recognise("joue crazy crazy nights")
|
||||||
|
|
||||||
# start the flask server
|
# start the flask server
|
||||||
app.config['JSON_AS_ASCII'] = False
|
app.config['JSON_AS_ASCII'] = False
|
||||||
|
17
jarvis/skills/entertainement/spotify/__init__.py
Normal file
17
jarvis/skills/entertainement/spotify/__init__.py
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
from adapt.intent import IntentBuilder
|
||||||
|
|
||||||
|
from jarvis.skills import Skill, SkillRegistering
|
||||||
|
from jarvis.skills.decorators import intent_handler
|
||||||
|
|
||||||
|
|
||||||
|
class SpotifySkill(Skill, metaclass=SkillRegistering):
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__("SpotifySkill")
|
||||||
|
|
||||||
|
@intent_handler(IntentBuilder("PlaySongOnlyTitle").require("Play").optionally("Spotify").optionally("SongNameOnly"))
|
||||||
|
def handle_play_song_only_title(self, data):
|
||||||
|
print("")
|
||||||
|
|
||||||
|
@intent_handler(IntentBuilder("PlaySongTitleAndSinger").require("Play").optionally("Spotify").require("From").optionally("SongName").optionally("Singer"))
|
||||||
|
def handle_play_song_title_and_singer(self, data):
|
||||||
|
print("")
|
@ -0,0 +1 @@
|
|||||||
|
.*(?:joue|mets|mets|fait moi écouter|moi|écouter) (?:le morceau|la chanson|voir|) ?(?P<SongNameOnly>.+?(?= sur|$)())
|
@ -0,0 +1 @@
|
|||||||
|
(?:joue|mets|mets|fait moi écouter|moi|écouter) (?:le morceau|la chanson|voir|) ?(?P<SongName>.+) (?:de) (?P<Singer>.+?(?= sur|$))
|
@ -0,0 +1,3 @@
|
|||||||
|
de
|
||||||
|
du groupe
|
||||||
|
d'
|
@ -0,0 +1,6 @@
|
|||||||
|
joue
|
||||||
|
mets
|
||||||
|
mets
|
||||||
|
fait moi écouter
|
||||||
|
écouter
|
||||||
|
joue le morceau
|
@ -0,0 +1,3 @@
|
|||||||
|
Spotify
|
||||||
|
spotify
|
||||||
|
spot
|
@ -38,7 +38,10 @@ def handle(intent_name):
|
|||||||
|
|
||||||
|
|
||||||
def recognise(sentence):
|
def recognise(sentence):
|
||||||
for intents in engine.determine_intent(sentence):
|
sentence = sentence.lower()
|
||||||
json_response = json.loads(json.dumps(intents))
|
print(sentence)
|
||||||
|
|
||||||
handle(json_response['intent_type'])
|
best_intents = engine.determine_intent(sentence, 100)
|
||||||
|
best_intent = next(best_intents)
|
||||||
|
|
||||||
|
print(best_intent)
|
||||||
|
Reference in New Issue
Block a user