-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.py
58 lines (43 loc) · 1.31 KB
/
index.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import os, requests
import json
import apiai
import local_settings
from time import gmtime, strftime
import speech_recognition as sr
CLIENT_ACCESS_TOKEN=local_settings.CLIENT_ACCESS_TOKEN
def ascolta_microfono():
r = sr.Recognizer()
with sr.Microphone() as source :
audio = r.listen(source)
testo=r.recognize_google(audio,language='it')
print(testo)
return testo
def ascolta_tastiera():
ascolto=input('Enter your input:')
return ascolto
#dialogflow
def elabora(richiesta):
ai = apiai.ApiAI(CLIENT_ACCESS_TOKEN)
request = ai.text_request()
request.lang = 'id' # optional, default value equal 'en'
request.session_id = "1"
request.query = richiesta
#response = request.getresponse()
response = json.loads(request.getresponse().read().decode('utf-8'))
action= response['result']['action']
print(action)
if (action == 'direora'):
message = ' sono le ore '+ strftime("%H:%M ", gmtime())
else :
message = response['result']['fulfillment']['speech']
return (message)
def parla(testo):
os.system("say "+testo )
ascolto=''
while (ascolto != 'Addio'):
ascolto=ascolta_microfono()
if (ascolto!='Addio') :
risponde=elabora(ascolto)
else :
risponde='alla prossima'
parla(risponde)