WhatsApp API Python ChatBot

Overview

WhatsApp API Python ChatBot

Este repositório contém uma aplicação que se utiliza da API do Moorse para envio e recebimento de mensagens, tornando possível, a partir do uso de uma simples base de dados como o sqlite, a simulação de atendimento de uma pizzaria.

Nosso Site · Documentação

Como usar?

🔍 Pré-instalação

Para utilizar esta aplicação, é necessário antes de tudo estar registrado em nosso site, apenas necessitamos do seu e-mail e uma senha que você pode escolher e tudo estará pronto.

🚀 Instalando e configurando a aplicação

Este tópico objetiva concluir corretamente a instalação e configuração do projeto.

O primeiro requisito para conseguir executar esta aplicação com sucesso é ter o Python 3 instalado corretamente em sua máquina, para isso, segue link da página oficial do Python para download e instalação do mesmo. Após tê-lo instalado certifique-se de ter instalado o pip (instalador de módulos do Python) juntamente ao Python. Sua instalação pode ser verificada pela simples execução no terminal do comando pip quando em Linux, entretanto, se o usuário utilizar Windows podem haver 3 combinações diferentes para chamada do pip, são elas:

  1. python -m pip
  2. python3 -m pip
  3. py -m pip

Tal variação ocorre porque o caminho do pip não vem por padrão no caminho da variável PATH, entretanto, para sanar tal variação, recomenda-se fortemente que o usuário adicione o caminho do pip à variável de ambiente PATH, para que possa utilizar o pip igualmente no Linux e no Windows.

(A partir daqui, consideraremos que o leitor usuário de Windows já colocou o caminho do pip dentro da variável PATH, porém, é possível continuar a leitura da documentação tendo que lidar com as três possibilidades de utilização do pip.)

Pós instalação do Python e do pip, devemos instalar os pacotes necessários à utilização da aplicação. Tais pacotes se encontram na raiz do projeto dentro do arquivo requirements.txt, para a instalação destes basta executar o comando install do pip com o argumento -r que servirá para ler o arquivo requirements.txt. Então, vá até a pasta onde o requirements.txt está e no terminal/cmd utilize:

pip install -r requirements.txt

Agora com todas as dependências instaladas, entre na pasta resources do repositório e edite o arquivo application.yml, aqui, basta adicionar seu token e sua integração desejada nos respectivos lugares indicados no arquivo. Para conseguir tais dados siga os passos:

  • Para conseguir o token, logue na sua conta do Moorse e em dashboard, vá até o canto superior direito e clique em "copiar token de acesso".

  • De forma semelhante à de conseguir o token, para conseguir o id da sua integração logue na sua conta do Moorse e na aba lateral esquerda clique em whatsapp, quando ver sua integração desejada clique no ícone de engrenagem (Gerenciar integração), após isso, sua integração surge na URL do site, basta retirar ela de lá.

💻 Configurando o webhook

Este é o último passo da configuração para que você consiga utilizar a API do Moorse. Para que nossa API lhe envie requisições HTTP quando mensagens forem enviadas ao seu Whatsapp, é necessário que ela conheça seu IP, entretanto, isso nem sempre é possível, e para facilitar tal comunicação, utilizaremos o ngrok, ele será responsável por receber as requisições da API do Moorse e, então, redirecioná-las ao seu computador, assim, certifique-se de baixá-lo e instalá-lo corretamente.

Agora com o ngrok instalado, precisamos criar nosso ip remoto, para isso, use o comando:

ngrok http 8080

Isso faz o ngrok criar um ip remoto que quando recebe uma requisição, redireciona-a ao seu computador. Agora com nosso ip remoto em mãos, precisamos avisar à API da Moorse que queremos receber informações das novas mensagens nesse ip, para isso, logue em sua conta da moorse e na aba lateral clique em webhook, vá até adicionar novo webhook, escolha o método POST, e na URL coloque o ip remoto fornecido pelo ngrok seguido por /webhooks (Observe que sempre que o ngrok for desligado será necessário refazer toda esta parte).

Tudo pronto!

Sua aplicação e seus webhooks foram totalmente configurados.

⚙️ Executando a aplicação ⚙️

A aplicação principal fica dentro da pasta app, o arquivo é nomeado de main.py, basta executá-lo para que o bot seja ligado e receba as requisições enviadas pela API do Moorse.

Moorse support free on Whatsapp, Telegram and Discord

Whatsapp Telegram Discord
A Python SDK for Tinybird 🐦

Verdin Verdin is a tiny bird, and also a Python SDK for Tinybird . Install pip install verdin Usage Query a Pipe # the tinybird module exposes all im

LocalStack 13 Dec 14, 2022
Proxy server that records responses for UI testing (and other things)

Welcome to playback-proxy 👋 A proxy tool that records communication (requests, websockets) between client and server. This recording can later be use

Yurii 41 Apr 01, 2022
A fork of discord.py for anime enjoyers

A modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python. Key Features Modern Pythonic API using async and await

Senpai Development 4 Nov 05, 2021
Discord rich-presence implementation for VALORANT

not working on v1 anymore in favor of v2, but if there's any big bugs i'll try to fix them valorant-rich-presence-client Discord rich presence extensi

colinh 278 Jan 08, 2023
Infinity: a Twitter retweet bot that can be used by anyone

INSTAMATE Requires Firefox Instapy Python3 How To Use? Fork the repository Add your credentials in the bot.py file Save commits Clone your fork cd int

unofficialdxnny 3 Jun 23, 2022
OSINT tool to get information from a Github and Gitlab profile and find user's email addresses leaked on commits.

gitrecon OSINT tool to get information from a Github or Gitlab profile and find user's email addresses leaked on commits. 📚 How does this work? GitHu

GOΠZO 211 Dec 17, 2022
Auto filter bot for python

Media Search bot Index channel or group files for inline search. When you post file on telegram channel or group this bot will save that file in datab

1 Dec 22, 2021
An NFTGenerator to generate NFTs and send them to nft.storage

NFTGenerator Table of Contents Overview Installation Introduction Features Reflection Issues & bug reports Show your support Credits Overview The NFTG

3 Mar 14, 2022
Spore API wrapper written in Python

A wrapper for the Spore API that simplifies and complements its functionality

1 Nov 25, 2021
This repository contains Python code examples using the MoneyMoov API

Python Examples This repository contains Python code examples using the MoneyMoov API. The examples are written to operate in the NoFrixion sandbox en

nofrixion 1 Feb 08, 2022
Simulation artifacts, core components and configuration files to integrate AWS DeepRacer device with ROS Navigation stack.

AWS DeepRacer Overview The AWS DeepRacer Evo vehicle is a 1/18th scale Wi-Fi enabled 4-wheel ackermann steering platform that features two RGB cameras

AWS DeepRacer 31 Nov 21, 2022
A Powerfull Userbot Telegram PandaX_Userbot, Vc Music Userbot + Bot Manager based Telethon

Support ☑ CREDITS THANKS YOU VERRY MUCH FOR ALL Telethon Pyrogram TeamUltroid TeamUserge CatUserbot pytgcalls Dan Lainnya

22 Dec 25, 2022
Materials to reproduce our findings in our stories, "Amazon Puts Its Own 'Brands' First Above Better-Rated Products" and "When Amazon Takes the Buy Box, it Doesn’t Give it up"

Amazon Brands and Exclusives This repository contains code to reproduce the findings featured in our story "Amazon Puts Its Own 'Brands' First Above B

The Markup 60 Nov 11, 2022
A tool that helps keeping track of your AWS quota utilization

aws-quota-checker A tool that helps keeping track of your AWS quota utilization. It'll determine the limits of your AWS account and compare them to th

Max 63 Dec 14, 2022
A user reconnaisance tool that extracts a target's information from Instagram, DockerHub & Github.

A user reconnaisance tool that extracts a target's information from Instagram, DockerHub & Github. Also searches for matching usernames on Github.

Richard Mwewa 127 Dec 22, 2022
IACR Events Scraper

IACR Events Scraper This scrapes https://iacr.org/events/ and exports it as a calendar file. I host a version of this for myself under https://arrrr.c

Karolin Varner 6 May 28, 2022
Follow pixiv account from twitter profile

Follow pixiv account from twitter profile

Genshi 7 Apr 11, 2022
A Discord chat bot for the Tardsquad guild (Discord name for server).

Tardsquad Discord Bot A Discord chat bot for the Tardsquad guild (Discord name for server). Resouces Discord Developer Portal A general tutorial for a

Tardsquad Quality Code Inc. 4 Jul 26, 2022
Seamlessly Connecting Notion Database with Python Pandas DataFrame

notion-df: Seamlessly Connecting Notion Database with Pandas DataFrame Please Note: This project is currently in pre-alpha stage. The code are not app

Shannon Shen 38 Dec 28, 2022
C Y B Ξ R UserBot is a project that simplifies the use of Telegram. All rights reserved.

C Y B Ξ R USΞRBOT 🇦🇿 C Y B Ξ R UserBot is a project that simplifies the use of Telegram. All rights reserved. Automatic Setup Android: open Termux p

C Y B Ξ R 0 Sep 20, 2022