Skip to content

Chatbot for college dining and food delivery information, built with Flask on FB Messenger.

Notifications You must be signed in to change notification settings

jeremyyew/ync-foodbot-fb-messenger

Repository files navigation

YNCFoodbot_Messenger

Still in development. Facebook Messenger chatbot that sends information and links about food options around Yale-NUS campus. Chat with the bot on messenger at this page: https://www.facebook.com/YNC-Foodbot-979027202238929/.

I used https://tsaprailis.com/2016/06/02/How-to-build-and-deploy-a-Facebook-Messenger-bot-with-Python-and-Flask-a-tutorial/ to start.

Hosted on Heroku.

Learning points:

  • Facebook messenger API
  • HTML requests
  • Xml object parsing with Xpath
  • git markdown
  • gitignore
  • git branching
  • caching with pylibmc

11/10 Fri

  • Update Cendana buttery timing
  • Cache for webscrape
  • Cache for everything
  • Buttery menus
  • Brewhouse: quick reply, welcome_msg, reply, get_all, carousel, match_keyword, test

Should-haves

  • Grab n Go preview
  • upload all img to imgbb

Nice-to-haves

  • coffee stand openings/updates
  • Set up Firebase, link with Gdrive CMS

Features to explore

  • Order buttery food?
  • Notification subscriptions?

Other chatbot ideas:

  • YNC general info, memes/comics subscription
  • receipt scanner/expenses recorder

Messenger API features explored:

  • Get Started message
  • Share Button
  • Carousel messages
  • Persistent menu
  • Lists
  • Quick Replies

Completed:

3/9

  • update buttery opening timings
  • update agora
  • update dh webscraper/show more
  • update copy (e.g. share message)
  • Spoons and Forks link
  • case insensitivity

10/8 Thursday

  • Connect Google Form CMS

3/8 Thurs

  • Facebook avpproval!
  • xpath by day/tab rel
  • Fix share quick_reply
  • macs img, utown img, agora img
  • Agora - grab n go scrape

2/8 Wed

  • add emoji to all msgs
  • Add location to amaan_buttons
  • Remove explore (from keywords_desc_list, quick_replies, get_all_carousel, get_all_text, test_generator, match_keyword)
  • Remove info (from keywords_desc_list, quick_replies, get_all_carousel, get_all_text, test_generator, match_keyword)
  • Change Get Started description

30/07 Sunday

  • Change coming_soon_msg
  • refactor info msg to concat all texts
  • Add "Share" image.
  • Add quick_replies to everything
  • Get Started, GET_ STARTED_PB, start
  • info, INFO_PB
  • dh, DH_PB
  • buttery, BUTTERY_PB
  • amaan, AMAAN_PB
  • MACS_PB, macs_msg
  • AGORA_PB, agora_msg
  • UTOWN_PB, utown_msg
  • EXPLORE_PB, explore_msg
  • "help", "HELP_PB"
  • "FEEDBACK_PB", "feedback"
  • "#feedback"
  • GET_ALL_PB, get_all_msg
  • turn typing delay back on

29/07 Saturday

  • Write instant_test.py
  • Refactor match_text_or_payload out into match_text_or_payload.py
  • Refactor message_objects: add_quick_reply and generate_carousel_msg
  • Feedback button
    • #feedback prompt and received message
  • Add emoji's to start_msg
  • Add help button to sorry_msg

28/07 Friday

  • Refactor YNCFoodbotserver.py
    • texts
    • postbacks
  • Branch keyword_interface:
    • Change start_msg
    • Implement quick_replies
    • Remove persistent menu

24/07 Monday

  • Reformat daily special message
  • Privacy Policy
  • App Logo
  • Fix typo
  • Refactor YNCFoodbotserver.py
  • Create test generators

23/07 Sunday

  • Create messenger api json request generators (for image uploads and settings)
  • Send Al Amaan Menu (upload images to FB server)

About

Chatbot for college dining and food delivery information, built with Flask on FB Messenger.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published