Overview
BridgeBot is a chatbot that educates people how to respond to conflict online. Through 9 microlessons about digital peacebuilding, BridgeBot aims to help people reflect on why differences occur, feel comfortable engaging with others, and understand how to engage constructively. Role-plays and multimedia help illustrate the concepts in an interactive way. Learn more
Try it out on WhatsAppMy Roles | Our Tools |
---|---|
Project manager Back-end developer | WhatsApp Turn.io Pandas |
Challenge and Solution
To build the organization’s internal capacity for chatbot development, I led design and development workshops to 1) understand the chatbot development lifecycle and 2) implement those ideas to build BridgeBot. The team came up with many ideas and wrote out engaging flows. However, the chatbot platform necessitated coding in a special Elixir-like syntax, which non-technical team members were not familiar with.
I developed a script to translate conversational copy spreadsheets into that Elixir-like syntax. This led to the following benefits:
- decreased deployment time of new flows and copy updates significantly
- reduced mistakes when deploying copy updates
- allowed the team members more control over the copy without learning Elixir
Below you can see an example of the source material and the code output.
Flow copy
Code
card Row2, then: Row3 do
text("""
So I'd like to share a story with you.
""")
end
card Row3, then: Row4 do
text("""
I have two really close friends...Malia and Riley.
""")
end
card Row4, then: Row6 do
response =
buttons([Row5]) do
text("""
One day, they decided to watch a movie🎬 at the cinema.
They planned for Malia to meet Riley at the junction close to the cinema.🕓
""")
end
end
card Row6 when response == "menu" or response == "Menu" or response == "MENU" do
run_stack("ec37fca0-374b-446b-be54-a910096209af")
end
card Row6 when response != "menu" and response != "Menu" and response != "MENU", then: Row5 do
log("Placeholder")
end