All Projects → ornicar → zulip-remind

ornicar / zulip-remind

Licence: MIT license
Zulip bot that posts messages in a stream at a fixed date.

Programming Languages

typescript
32286 projects
Dockerfile
14818 projects
shell
77523 projects

Projects that are alternatives of or similar to zulip-remind

zulip-archive
Zulip Archive viewer (statically generated HTML)
Stars: ✭ 13 (-7.14%)
Mutual labels:  zulip
merkalysis
A marketing tool that helps you to market your products using organic marketing. This tool can potentially save you 1000s of dollars every year. The tool predicts the reach of your posts on social media and also suggests you hashtags for captions in such a way that it increases your reach.
Stars: ✭ 28 (+100%)
Mutual labels:  zulip-bot
Zulip
Zulip server and web app—powerful open source team chat
Stars: ✭ 14,815 (+105721.43%)
Mutual labels:  zulip
Matterbridge
bridge between mattermost, IRC, gitter, xmpp, slack, discord, telegram, rocketchat, twitch, ssh-chat, zulip, whatsapp, keybase, matrix, microsoft teams, nextcloud, mumble, vk and more with REST API (mattermost not required!)
Stars: ✭ 4,452 (+31700%)
Mutual labels:  zulip
hubot-zulip
No description or website provided.
Stars: ✭ 19 (+35.71%)
Mutual labels:  zulip
notify
推送通知 sdk(Bark、Chanify、钉钉群机器人、Discord、邮件、飞书群机器人、Gitter、Google Chat、iGot、Logger、Mattermost、Now Push、PushBack、Push、PushDeer、PushPlus、QQ 频道机器人、Rocket Chat、Server 酱、Showdoc Push、Slack、Telegram、Webhook、企业微信群机器人、息知、Zulip)。
Stars: ✭ 335 (+2292.86%)
Mutual labels:  zulip
zulipbot
GitHub workflow-optimizing bot by @zulip
Stars: ✭ 70 (+400%)
Mutual labels:  zulip
rc-coffee-chats
A service that matches community members for chats
Stars: ✭ 16 (+14.29%)
Mutual labels:  zulip-bot

Zulip Remind

Zulip bot that posts messages in a stream at a fixed date.

Also see: https://github.com/apkallum/zulip-reminder-bot.

I wanted a single service using redis, with support for fixed dates and public stream posting.

Usage

Use @remind to set a reminder for yourself, or for a stream. Some examples include:

  • @remind me on June 1st to wish Linda happy birthday
  • @remind me to stop procrastinating tomorrow
  • @remind here in 3 hours to update the project status
  • @remind stream to party hard on 2021-09-27 at 10pm

Use @remind list to see the list of all your reminders.

Use @remind delete id to delete a reminder by its ID

Setup

Manual

In Zulip, go to Settings -> Your bots, and add a new bot.

You may name it remind as I did, or anything else you like.

After it's created, download its zuliprc file and put it at the root of this project.

yarn install
yarn dev

And you're set, try using it from your Zulip instance.

Docker

You can easily start the docker container with:

docker-compose up -d

Then a Redis database will start and the reminder automatically connects to it.

Please provide the zuliprc file and put it at the root of this project.

As host you need to provide the IP address of the computer the docker-compose is running on as REDIS_HOST. You also need to set the REDIS_PASSWORD for the container to work. The port is optional, if not set the standard port 6379 will be taken.

To set these variables mentioned above please copy the .env.example file and paste it as .env file and populate its fields.

Redis configuration

To set a redis port, password, or database, use these environment variables:

REDIS_PORT
REDIS_PASSWORD
REDIS_DB
REDIS_HOST

Example:

REDIS_PORT=9379 REDIS_DB=5 REDIS_HOST=127.0.0.1 yarn dev

Production

Build a prod release:

yarn build

Deploy it to a server:

rsync -av zuliprc dist node_modules user@server:/home/zulip-remind/

Start it on the server:

node dist/index.js

Systemd service definition

[Unit]
Description=Zulip remind bot
After=network.target

[Service]
User=root
Group=root
WorkingDirectory=/home/zulip-remind
Environment="REDIS_PASSWORD="
Environment="REDIS_PORT=6379"
ExecStart=/usr/bin/node dist/index.js
Restart=always

[Install]
WantedBy=multi-user.target
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].