A really smart bot that connects with your email, discord, telegram and gitlab

SmarttyBot

The smartest multiplatform bot

Go Report Card Build Status Maintainability

SmarttyBot is a multiplatform bot that uses natural language to execute functions using discord, telegram, email and gitlab

  • Set up all your accounts and get all the api tokens
  • Create and train your WitAI model
  • Let SmarttyBot make your life easier

Features

  • Connect any account with any other account to create unique solutions and automations
  • Easily add your own functions with Python or Go
  • Train your own WitAI model and easily connect your WitAI actions with your own methods
  • Monitor your accounts and set up notifications to any other account
  • Create your own telegram markup for menus
  • The only limit is your imagination

Tutorial

Step 1: WitAI Setup

To set up WitAI you have to do 3 things:

  • Login on WitAI with facebook
  • Create your app
  • Train your app, make sure that all intents are the name of the function that is going to be executed

With that you will have set up the natural language module, for more details go to https://wit.ai/docs/quickstart

After that:

with the key being the intent we set up before and the value being the new funtion to be executed

WIT_API_KEY="1234ASDFGHJ"

Step 2: Telegram Setup

You will need to create a bot

  • Go to https://telegram.me/botfather on telegram
  • Send /newbot to create a new Telegram bot,
  • When asked, enter a name for the bot
  • Give the Telegram bot a unique username. Note that the bot name must end with the word "bot" (case-insensitive).
  • Copy and paste the Telegram bot's access token to the .env file.
  • Make sure to change "smartty_bridge_bot" to the name of your telegram bot
    if user.UserName == "smartty_bridge_bot" {
TELEGRAM_API_KEY="123456TELEGRAMMMMMMAPI"

Step 3: Discord Setup

To set up a discord bot follow this steps https://discordpy.readthedocs.io/en/stable/discord.html

Once you are done

  • Go to 'Bot'
  • Select 'Reset token'
  • Copy the token that appears into the .env file
DISCORD_API_KEY="DDDIIISSSCCCOOORRRRDDDAAAAPPPIII"

Step 4: Email setup

Simply add your email credentials and server settings like this

EMAIL_ACCOUNT="[email protected]"
EMAIL_PASWORD="emailPassword"
SMTP_SERVER="smtp.gmail.com"
SMTP_PORT=587
IMAP_SERVER="imap.gmail.com"
IMAP_PORT=993

Installation & Execution

SmarttyBot requires Go v1.18+ to run.

git clone github.com/omarperezr/SmarttyBot
cd SmarttyBot
go build
./main

Donate

Want to contribute?

Kofi

License

GNU General Public License v3.0

Free Software, Hell Yeah!

Owner
Omar
Creating and optimizing.
Omar
Similar Resources

A Simple and Comprehensive Vulnerability Scanner for Container Images, Git Repositories and Filesystems. Suitable for CI

A Simple and Comprehensive Vulnerability Scanner for Container Images, Git Repositories and Filesystems. Suitable for CI

A Simple and Comprehensive Vulnerability Scanner for Containers and other Artifacts, Suitable for CI. Abstract Trivy (tri pronounced like trigger, vy

Jan 9, 2023

Suppress commit to master and development, merge branch to master and development

git-extension masterと名前のつくブランチをマージするのは禁止 masterとdevelopmentブランチに直接commitやmergeするのは禁止 masterブランチを親に新規ブランチを作成するのは禁止 どうしてもmasterやdevelopmentブランチに操作をしたい時は

Nov 8, 2021

A tool to monitor git repositories and automatically pull & push changes

git-o-matic A tool to monitor git repositories and automatically pull & push changes Installation Packages & Binaries Arch Linux: gitomatic Binaries f

Dec 20, 2022

chglog is a changelog management library and tool

chglog chglog is a changelog management library and tool Why While there are other tool out there that will create a changelog output as part of their

Nov 16, 2022

Fast and powerful Git hooks manager for any type of projects.

Fast and powerful Git hooks manager for any type of projects.

Lefthook The fastest polyglot Git hooks manager out there Fast and powerful Git hooks manager for Node.js, Ruby or any other type of projects. Fast. I

Jan 4, 2023

A single Git repository that holds two microservices (Python and GO)

A single Git repository that holds two microservices (Python and GO)

Nov 19, 2021

A REALLY crappy discord bot with golang

DiscordTubeFeeder This is some shitty discord bot that looks at a youtube xml fe

Dec 18, 2021

Dlercloud-telegram-bot - A Telegram bot for managing your Dler Cloud account

Dler Cloud Telegram Bot A Telegram bot for managing your Dler Cloud account. Usa

Dec 30, 2021

Pro-bot - A telegram bot to play around with the community telegram channels

pro-bot 🤖 Pro Bot A Telegram Bot to Play Around With The Community Telegram Cha

Jan 24, 2022

An open-source GitLab command line tool bringing GitLab's cool features to your command line

An open-source GitLab command line tool bringing GitLab's cool features to your command line

GLab is an open source GitLab CLI tool bringing GitLab to your terminal next to where you are already working with git and your code without switching

Dec 30, 2022

Golang bot that connects to slack using Socketclient to read and write messages.

Golang bot that connects to slack using Socketclient to read and write messages.

🚀 (not)simple go project 🚀 Golang bot that connects to slack using Socketclient to read and write messages. 🏆 Use 🏆 @SquidBot : Mentions your name

Aug 23, 2022

Discord-bot - A Discord bot with golang

JS discord bots Install Clone repo git clone https://github.com/fu-js/discord-bo

Aug 2, 2022

Mergebot - Discord bot for gitlab merge request reviews

Mergebot - Discord bot for gitlab merge request reviews

Mergebot Discord bot for gitlab merge requests. Checks messages sent into merge

Feb 4, 2022

A GitLab API client enabling Go programs to interact with GitLab in a simple and uniform way

go-gitlab A GitLab API client enabling Go programs to interact with GitLab in a simple and uniform way NOTE Release v0.6.0 (released on 25-08-2017) no

Jan 6, 2023

A GitLab API client enabling Go programs to interact with GitLab in a simple and uniform way

A GitLab API client enabling Go programs to interact with GitLab in a simple and uniform way

Dec 28, 2022

A GitLab API client enabling Go programs to interact with GitLab in a simple and uniform way

TEMPORARY REPOSITORY This repo will exist only temporarily waiting for the PR has been merged.

Nov 5, 2021

🤖 Prune old images on GitHub (ghcr.io) and GitLab (registry.gitlab.com) container registry

🤖 Prune old images on GitHub (ghcr.io) and GitLab (registry.gitlab.com) container registry

✨ Prune container images in a CLI way ✨ Prune old images on GitHub (ghcr.io) and GitLab (registry.gitlab.com) Container Registry Getting Started | Des

Dec 15, 2022

Gitlab Command to simplify some Gitlab Workflow

GitLabCommand - glc - README How to use ? ensure glc.yaml is configured with the valid token and url gitlab_token: your valid token gitlab_url: ht

Oct 14, 2021

Running chaincode in development mode: Smart contract developers that want to iteratively develop and test their chaincode packages without the overhead of the smart contract lifecycle process for every update.

Fabric DEVMODE - Nano bash 1 ORG + 1 PEER + 1 ORDERER Based on fabric-samples/test-network-nano-bash, but using devmode fabric peer Prereqs Follow the

May 14, 2022
Sync tags in your git repository and a changelog in Keep a Changelog format with releases of your GitLab project.

Automatic GitLab releases Sync tags in your git repository and a changelog in Keep a Changelog format with releases of your GitLab project. Features:

Nov 12, 2022
Tfcmt-gitlab is a CLI command to parse and notify Terraform execution results

Tfcmt-gitlab is a CLI command to parse and notify Terraform execution results. This command supports GitLab as a CI and notification platform.

Dec 23, 2022
Gitlab include draftsman in golang
Gitlab include draftsman in golang

Gitlab include draftsman WIP Утилита, которая рисует graph include'ов из gitlab-ci Как работает пока: Считывает из app.env файла(который должен быть в

Oct 31, 2021
A Git RPC service for handling all the git calls made by GitLab
A Git RPC service for handling all the git calls made by GitLab

Quick Links: Roadmap | Want to Contribute? | GitLab Gitaly Issues | GitLab Gitaly Merge Requests | Gitaly is a Git RPC service for handling all the gi

Nov 13, 2021
go mod vendor lets you check in your dependencies to git, but that's both bloaty (for developers) and tedious (remembering to update it).

go-mod-archiver Afraid of being unable to build historical versions of your Go program? go mod vendor lets you check in your dependencies to git, but

Dec 1, 2022
Installs git repos onto your system and keeps them up-to-date

Gitfile Installs git repos onto your system and keeps them up-to-date. It's a lightweight package manager for things that haven't been published to a

Jan 16, 2021
Switch between your git profiles easily
Switch between your git profiles easily

Git Profile Switcher Switch between your git profiles easily Install With Brew brew install theykk/tap/git-switcher With golang go get github.com/the

Dec 11, 2022
Simple git hooks written in go that installs globally to your machine

Go-hooks Simple git hooks written in go that installs globally to your machine Install curl -fsSL

Oct 19, 2022
A Github Action that verify if your README.md has broken links

A GitHub Action that automatically check if some link in your README.md is broken or not responding.

Nov 10, 2022
Plan your commits, go sleep

Gitplan Somehow make it so you can plan your commit, to make your coworkers think you are working, while you are actually just sleeping Installation E

Nov 23, 2021