-
Notifications
You must be signed in to change notification settings - Fork 0
/
generate_reply.py
32 lines (23 loc) · 1.05 KB
/
generate_reply.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
# Generates a bot response from a user message
import random
from wiki import wikisearch
import json
from requests import get
from urllib3.poolmanager import PoolManager as pm
from api_key import PAGE_TOKEN
greetings=["hi","hello","hey","namaste","yo","hii"]
replygreet=["Hi.","Hello.","Namaste.","Greetings."]
def generateReply(message,**kwargs):
tokens=message.split()
if 'nlp' in kwargs:
nlp=kwargs['nlp']['entities']
if 'greetings' in nlp and nlp['greetings'][0]['confidence']>0.85:
url='https://graph.facebook.com/v2.12/'+kwargs['id']+'?access_token='+PAGE_TOKEN
s=json.loads(pm().request('GET',url).data.decode())
return random.choice(replygreet)+' '+s.get('first_name',' ')
if tokens[0].lower()=="wiki":
if len(tokens)>1 and tokens[0].lower()=="wiki":
return wikisearch(str(tokens[1:]))
else:
return "wiki [your keyword]"
return "I don't understand." # Otherwise the bot doesn't understand what the user said