2
from common.utils import is_yes, get_intents
5
ASK_WEATHER_SKILL_FOR_HOMELAND_PHRASE = "Would you like to know the weather there?"
6
ASK_WEATHER_SKILL_PHRASE = "Would you like to know the weather?"
8
WEATHER_COMPILED_PATTERN = re.compile(r"(weather|forecast)", re.IGNORECASE)
9
WEATHER_REQUEST_COMPILED_PATTERN = re.compile(
10
r"((tell me|what is|what's|what about|to know|you know) (the )?weather)", re.IGNORECASE
14
def skill_trigger_phrases():
15
return [ASK_WEATHER_SKILL_PHRASE]
18
def skill_all_trigger_phrases():
20
return skill_trigger_phrases() + [ASK_WEATHER_SKILL_FOR_HOMELAND_PHRASE, ASK_WEATHER_SKILL_PHRASE]
23
def is_weather_for_homeland_requested(prev_bot_utt, user_utt):
24
if ASK_WEATHER_SKILL_FOR_HOMELAND_PHRASE.lower() in prev_bot_utt.get("text", "").lower():
30
def is_weather_without_city_requested(prev_bot_utt, user_utt):
31
if ASK_WEATHER_SKILL_PHRASE.lower() in prev_bot_utt.get("text", "").lower():
37
def if_special_weather_turn_on(user_utt, prev_bot_utt):
39
"weather_forecast_intent" in get_intents(user_utt, probs=False, which="all")
40
or is_weather_for_homeland_requested(prev_bot_utt, user_utt)
41
or is_weather_without_city_requested(prev_bot_utt, user_utt)