Reminder Bot acts as your personal assistant. It will set up reminders for dates / times mentioned in a room, and send you a reminder message when those times occur, like so:
-
- Simply add the Reminder Bot to any chat, and it will monitor all the messages for a date/time component.
-
- Chat with the bot. When you enter a date/time the bot will respond with a form allowing you to create a reminder:
-
- Clicking Create Reminder will add the reminder to the list of reminders active in the room.
-
- When the time arrives, the Reminder Bot will notify in the chat like so:
Options include :
- Listing down the reminders for the room
- Listing down the timezones
- Changing time zone , remind before duration
- Changing the "remind before" / "travel time" for the room.
Type /help
in the room to display all the options, as shown below:
Type /list
in a chat to show the reminders set for the current room:
Type /timezones
in the room to show all the available timezones:
Type /zone Asia/Calcutta
to update the timezone for the room.
You can set the lead-time for each reminder seperately, but you can set a default remind-before in each room like so:
/remindbefore 5
This means, if later you enter "remind me at 6pm to make dinner", then the reminder will come up at 5:55pm, as you have set a 5 minute remind-before.
This is done in the application.yml
file.
symphony:
reminder:
welcomeMessage: "The reminder bot is active in this room. Type a date or time in your conversation and I'll create a reminder for it"
By default, time-zone is set to London, but you can override with any Java timezone like so:
symphony:
reminder:
defaultTimeZone: "America/Los_Angeles"
Users can override this on a per-chat basis with /zone
(descibed above).
### Set Default Remind-Before
symphony:
reminder:
defaultRemindBefore: 30 # 30 minutes before.
NB:: ReminderBot uses stanford-corenlp
(and related jars) which is licensed using GPL. This is incompatible with the Apache 2.0 license of Spring Bot. Therefore, the dependency is set as provided
in the pom. To run this code locally you will either need to change to runtime
scope, or download the jars and add them to the classpath manually.