def conditionDetails(userid, cid): r = requests.get(getApiUrl() + 'conditions/' + cid, headers=getHeaders()) result = r.json() text = 'My algorithm suggests that you have symptoms of ' + result[ "common_name"] hint = result["extras"]["hint"] messageHandler.sendTextMessage(userid, text) messageHandler.sendTextMessage(userid, hint) return
def parseSuggest(userid, messageText): # find mentions temp, mentions = parseEndpoint(messageText) # if no mentions found than fallback if len(temp) == 0: messageText = "Sorry, I am not able to identify any symptoms/conditions from your message. Please try again!" messageHandler.sendTextMessage(userid, messageText) return # get user details from db gender, age, evidence = getRiskFactors(userid) evidence += temp payload = {'sex': gender, 'age': age, 'evidence': evidence} messageText = "You have reported\n" for i in mentions: messageText += " * " + i["common_name"] + " " + i["choice_id"] + "\n" messageHandler.sendTextMessage(userid, messageText) # get suggestions based on mentions suggestedSymptoms = suggestEndpoint(gender, age, evidence) if len(suggestedSymptoms) < 1: # yaha se jaega diagnosis diagnosisHandler(userid, payload) return # send mentions found and suggest more symtoms messageText = "Other users with your symptoms also reported following conditions" payload = {'sex': gender, 'age': age, 'evidence': evidence} mongoCURD.setSymptomPayload(userid, payload) buttonsArray = [{ 'type': 'web_url', 'url': commonVars.app_url + '/getSuggestions?userid=' + userid + '&suggestions=' + json.dumps(suggestedSymptoms), 'title': 'Options Here!', 'webview_height_ratio': 'compact', 'webview_share_button': 'hide' }] messageHandler.sendButtonMessage(userid, messageText, buttonsArray) return
def get_workout_recommendation(recipientId): #note for unfit people note = "Note: This guidelines are relevant to only healthy individuals or else you should seek medical advice before following these recommendations" messageHandler.sendTextMessage(recipientId, note) #check age,height,weight from db #cal macros needed age, gender = mongoCURD.getAgeGender(recipientId) if age >= 5 and age <= 17: messageText = "1. You should perform atleast 60 minutes of moderate or vigorous intensity aerobic physical activity daily\n\n2. Muscle strengthening activities can be perfromed 3 or more days per week\n\n3. Rest Interval: 30 seconds between sets/laps" elif age >= 18 and age <= 64: messageText = "1. You should perfrom atleast 75 to 150 minutes of moderate or vigorous intensity aerobic physical activity daily\n\n2. Muscle strengthening activities can be performed 3 or more days per week\n\n3. Rest Interval: 30-45 seconds between sets/laps" elif age >= 65: messageText = "1. You should perfrom atleast 45 to 60 minutes of moderate intensity aerobic physical activity daily\n\n2. Peform activities to enhance balance and mobility on 3 or more days per week\n\n3. Muscle strengthening activities can be performed 2 or more days per week\n\n4. Rest Interval: 45-60 seconds between sets/laps" else: messageText = "Atleast 30 min of physical activity is needed" messageHandler.sendTextMessage(recipientId, messageText) #activity options note2 = "You can perform activities such as\n\t1. Walking\n\t2. Running\n\t3. Cycling\n\t4. Swimming\n\t5. Dancing\n\t6. Yoga\n\t7. Weight-training\n\t8. Sports\n\t9. Outdoor Games" messageHandler.sendTextMessage(recipientId, note2) #note for beginners note3 = "Note: Beginners should start with small amounts of physical activity and gradually increase duration, frequency and intensity over time" messageHandler.sendTextMessage(recipientId, note3)
from argsLoader import loadCmdArgs import mongoCURD, messageHandler, json query = json.loads(str(loadCmdArgs(1))) userid = query['userid'] del query['userid'] mongoCURD.storeWorkoutLog(userid, query) messageText = "Got it 👍." messageHandler.sendTextMessage(userid, messageText) #messageHandler.sendTextMessage(userid,json.dumps(query))
def receivedPostback(message_event): print "Got back a postback, the payload was: " + str( message_event["postback"]["payload"]) #logging messageHandler.sendTextMessage(message_event["sender"]["id"], "Got your postback")
from userProfile import userProfileApi #load eventObj from command Line eventObject=json.loads(loadCmdArgs()) # userId from eventObj recipientId=eventObject['sender']['id'] # fallback msg messageText="I'm sorry but I didn't understand. Please Try Again!" # if 'postback' in eventObject: if eventObject['postback']['payload'] == 'get_started': messageText="Hi! I'm Darwin your personal Health Assistant.\nI can help you achieve your goal of 'Good Health'.\nTo know more checkout the 'Menu'." messageHandler.sendTextMessage(recipientId,messageText) # get userProfile and make an entry of user in db mongoCURD.insertUserDataFromFb(userProfileApi(recipientId)) buttonsArray=[ { 'type':'web_url', 'url':commonVars.app_url+'/getDetails?userid='+recipientId, 'title':'Click Here', 'webview_height_ratio':'compact', 'webview_share_button':'hide' } ] text='I need you to add/update your personal details' messageHandler.sendButtonMessage(recipientId,text,buttonsArray) elif eventObject['postback']['payload'] == "update_info": buttonsArray=[