return True def handle(self, handler_input, exception): # type: (HandlerInput, Exception) -> Response logger.error(exception, exc_info=True) speak_output = "Sorry, I had trouble doing what you asked. Please try again." return (handler_input.response_builder.speak(speak_output).ask( speak_output).response) # The SkillBuilder object acts as the entry point for your skill, routing all request and response # payloads to the handlers above. Make sure any new handlers or interceptors you've # defined are included below. The order matters - they're processed top to bottom. sb = SkillBuilder() sb.add_request_handler(LaunchRequestHandler()) sb.add_request_handler(HelloWorldIntentHandler()) sb.add_request_handler(HelpIntentHandler()) sb.add_request_handler(CancelOrStopIntentHandler()) sb.add_request_handler(SessionEndedRequestHandler()) sb.add_request_handler( IntentReflectorHandler() ) # make sure IntentReflectorHandler is last so it doesn't override your custom intent handlers sb.add_exception_handler(CatchAllExceptionHandler()) handler = sb.lambda_handler()
from ask_sdk_model.ui import SimpleCard from ask_sdk_model.ui.link_account_card import LinkAccountCard from ask_sdk_model.device import Device from flask_ask_sdk.skill_adapter import SkillAdapter from flask import Flask, render_template, request from numpy.polynomial.polynomial import polyfit from utils import get_sleeps import numpy as np import subprocess import pendulum import csv import os # Flask setup app = Flask(__name__) skill_builder = SkillBuilder() app.config['SECRET_KEY'] = "DefaultSecret" sb = SkillBuilder() @sb.request_handler(can_handle_func=is_request_type("LaunchRequest")) def launch_request_handler(handler_input): if is_production(): file = "/home/sleepschedule/mysite/times.csv" else: file = "times.csv" with open(file, "a") as f: w = csv.writer(f) w.writerow([pendulum.now("America/Toronto").format("YYYY/MM/DD HH:mm:ss")])