2019-04-24 16:29:24 +00:00
|
|
|
import logging
|
|
|
|
|
import os
|
|
|
|
|
from flask import Flask
|
|
|
|
|
from flask_ask import Ask, request, session, question, statement
|
|
|
|
|
import random
|
|
|
|
|
import yaml
|
|
|
|
|
import site as s
|
|
|
|
|
|
|
|
|
|
app = Flask(__name__)
|
|
|
|
|
ask = Ask(app, "/")
|
|
|
|
|
logging.getLogger('flask_ask').setLevel(logging.DEBUG)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ask.intent('Search',
|
|
|
|
|
mapping={'site': 'Site', 'searchTerm':'SearchTerm'},
|
|
|
|
|
default={'site': 'golem', 'searchTerm':''})
|
|
|
|
|
def search(site, searchTerm):
|
|
|
|
|
print(site, searchTerm)
|
|
|
|
|
|
|
|
|
|
if site == "golem":
|
|
|
|
|
obj = s.Golem()
|
|
|
|
|
elif site == "zeit":
|
|
|
|
|
obj = s.Zeit()
|
|
|
|
|
elif site == "welt":
|
|
|
|
|
obj = s.Welt()
|
|
|
|
|
else:
|
|
|
|
|
return statement("Es gab einen Fehler")
|
|
|
|
|
session.attributes["site"] = obj.url
|
|
|
|
|
|
|
|
|
|
articles, links = obj.search_article(searchTerm)
|
|
|
|
|
session.attributes["lastSearch"] = links
|
|
|
|
|
antwort = "Für welchen der folgenden Artikel interessieren Sie sich?"
|
|
|
|
|
for i in range(0, len(articles)):
|
|
|
|
|
antwort += articles[i] + "..."
|
|
|
|
|
|
|
|
|
|
return question(antwort)
|
|
|
|
|
|
|
|
|
|
@ask.intent('Read',
|
|
|
|
|
mapping={'site': 'Site', 'activity':'Activity'},
|
|
|
|
|
default={'site': 'golem', 'activity':'read_headlines'})
|
|
|
|
|
def read(site, activity):
|
|
|
|
|
print(site, activity)
|
|
|
|
|
|
|
|
|
|
response = ""
|
|
|
|
|
return statement(response)
|
|
|
|
|
|
|
|
|
|
@ask.intent('AMAZON.HelpIntent')
|
|
|
|
|
def help():
|
|
|
|
|
speech_text = 'Dieser Skill erlaubt es Ihnen einige Nachrichten Websites zu nutzen'
|
|
|
|
|
return statement(speech_text)
|
|
|
|
|
|
|
|
|
|
@ask.launch
|
|
|
|
|
def launch():
|
|
|
|
|
return read("golem", "read_headlines")
|
|
|
|
|
|
|
|
|
|
@ask.session_ended
|
|
|
|
|
def session_ended():
|
|
|
|
|
return "{}", 200
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
|
if 'ASK_VERIFY_REQUESTS' in os.environ:
|
|
|
|
|
verify = str(os.environ.get('ASK_VERIFY_REQUESTS', '')).lower()
|
|
|
|
|
if verify == 'false':
|
|
|
|
|
app.config['ASK_VERIFY_REQUESTS'] = False
|
|
|
|
|
app.run()
|