RhinoReminds/README.md

86 lines
No EOL
2.4 KiB
Markdown

# RhinoReminds
> An XMPP reminder bot written in C#.
## Getting Started
### Downloading Prebuilt Binaries
Prebuilt binaries for the latest release are available on the [releases page](https://git.starbeamrainbowlabs.com/sbrl/RhinoReminds/releases).
### Building from Source
1. Install the NuGet dependencies:
```bash
nuget restore
```
2. Build the solution:
```bash
msbuild
```
3. Specify the environment variables
Variable | Meaning
----------------|------------------------
`XMPP_JID` | The JID to connect with
`XMPP_PASSWORD` | The password to use when connecting
4. Execute the program
```bash
cd RhinoReminds/bin/{Debug|Release}
# Linux:
mono [--debug] RhinoReminds.exe [--help]
# Windows:
RhinoReminds.exe [--help]
```
## Usage
The bot operates on natural language instructions. It picks what to do from the first word in the sentence, but the rest is parsed via AI.
### Setting a reminder
```
Remind me to feed the cat at 6pm
Remind me about CrossCode's release on 20th September 2018
Remind me to water the greenhouse tomorrow at 4:03pm
Remind me in 1 hour to check the oven
```
### Listing reminders
```
List all reminders
Show all
List all
```
### Deleting Reminders
```
Delete reminder 43
Delete #22, #23, and #45
Delete number eight
Delete reminders 2, 3, 4, and 7
```
## Contributing
Contributions are welcome! Bug reports can be opened against this repository if you have an account. Otherwise, send them to `bugs at starbeamrainbowlabs dot com`.
Pull requests and patches are welcome too. [Here's a great tutorial](https://makandracards.com/makandra/2521-git-how-to-create-and-apply-patches) on creating patches. If there's any interest, I'll move this repository to my account on [gitlab.com](https://gitlab.com/sbrl) if that makes things easier.
## License
RhinoReminds is licensed under the _Mozilla Public License 2.0_ (MPL-2.0 for short) - the full text of which can be found in the [LICENSE](https://git.starbeamrainbowlabs.com/sbrl/RhinoReminds/src/branch/master/LICENSE) file in this repository. tl;drLegal have a [great summary](https://tldrlegal.com/license/mozilla-public-license-2.0-(mpl-2)) if you don't want to spend all day read dry legalese :P
## Useful Links
- [Microsoft.Text.Recognizers Samples](https://github.com/Microsoft/Recognizers-Text/tree/master/.NET/Samples)
- [S22.Xmpp API Documentation](https://smiley22.github.io/S22.Xmpp/Documentation/)
-