Plataforma para atendimento a outras empresas que necessitam de atendimento técnico.

Overview
SoftClient Logo

Plataforma para atendimento a outras empresas que necessitam de atendimento técnico. É possível que os usuarios de empresas parceiras registrem solicitações para atendimento de seus equipamentos, tais como: computador, impressora, nobreak e notebook. E os técnicos poderão posicionar para atendimento e ir até o local para fazer a manutenção do mesmo.

Rodando a aplicação:

Após clonar do Git, digite no terminal:

  • python -m venv venv
  • source venv/bin/activate
  • pip install -r requirements.txt
  • flask run

Para criar um usuário do tipo "super", digite o seguinte comando no terminal:

heroku run --app softclient flask super create name username password

Exemplo:

heroku run --app softclient flask super create kelvin kallissin 123456

Para ativar a empresa que irá cadastrar, digite o seguinte comando no terminal:

heroku run --app softclient flask super active cnpj

Exemplo:

heroku run --app softclient flask super active 20232212232343

Deploy da aplicação:

https://softclient.herokuapp.com/api

Endpoints

  1. Owners
  2. Company
    • Login Company
  3. User
    • Login User
  4. Orders
  5. Technicians

Owners

Endpoint referente aos donos da empresa, onde podemos fazer fazer login e listar todos os donos.

Login Owner

Rota responsável pelo login do usuário "owner". Retorna um token de acesso, para que o método GET seja liberado.

url method status
/owner/login POST 200 - 404

BODY

{
  "username": "odaairlopes",
  "password": "123456"
}

RESPONSE

{
  "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTYzOTU5MTA2MywianRpIjoiNTU3MTczNDktOGRkZS00ZmM5LWI1NzktYzE3OGQ5NTI4ZTE1IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6eyJpZCI6MSwibmFtZSI6Ik9kYWlyIiwidXNlcm5hbWUiOiJvZGFhaXJsb3BlcyIsInJvbGUiOiJzdXBlciIsImFjdGl2ZSI6dHJ1ZX0sIm5iZiI6MTYzOTU5MTA2MywiZXhwIjoxNjM5NTkxOTYzfQ.q7nCO3NVPcSOdIZalcQNKOLtVw7u-JdbeJAoUqa5dcQ"
}

GET Owner

Rota responsável por mostrar todos os usuários "owner" cadastrados.

url method status
/owner GET 200

RESPONSE

[
  {
    "id": 1,
    "name": "Odair",
    "username": "odaairlopes",
    "role": "super",
    "active": true
  }
]

Company

Endpoint referente à própria empresa. Aqui, podemos fazer o login, criação de novas empresas, obtenção de todas empresas cadastradas, obtenção de apenas uma empresa (pelo id), obtenção de todos os usuários de determinada empresa e remoção de uma empresa cadastrada. Para a empresa cadastrar uma empresa, é necessário de um super usuário.

Login Company

Rota responsável pelo login da empresa. Retorna um token de acesso para que os outros métodos sejam liberados. Essa empresa precisa estar ativada (ativação feita pelo super usuário).

url method status
/company/login POST 200 - 404

BODY

{
  "username": "sofclient",
  "password": "softclient1234"
}

RESPONSE

{
  "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTYzOTU5MTg1NywianRpIjoiZmJkNWYzMDEtZjJlMS00MDhkLWE5YjUtNzg3M2U4YmFiZjE4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6eyJpZCI6MSwiYWN0aXZlIjpmYWxzZSwiY25waiI6IjIwMjMyMjEyMjMyMzQyIiwidHJhZGluZ19uYW1lIjoiU29mdCBDbGllbnQgSW5jLiIsImNvbXBhbnlfbmFtZSI6IlNvZnRjbGllbnQiLCJ1c2VybmFtZSI6InNvZmNsaWVudCIsInJvbGUiOiJhZG1pbiJ9LCJuYmYiOjE2Mzk1OTE4NTcsImV4cCI6MTYzOTU5Mjc1N30.TyrNl7sgcVeeI4RjJehpUU_Ln-zD2BLD3M7tAuXCPP4"
}

POST Company

Rota para cadastrar uma empresa.

url method status
/company POST 201 - 400

Formato dos campos:

  • "cnpj": deve ser colocado todos os 14 dígitos, sem pontuação;

BODY

{
  "cnpj": "20232212232342",
  "trading_name": "Soft Client Inc.",
  "company_name": "SoftClient",
  "username": "sofclient",
  "password": "softclient1234"
}

RESPONSE

{
  "id": 1,
  "active": false,
  "cnpj": "20.232.212/2323-42",
  "trading_name": "Soft Client Inc.",
  "company_name": "Softclient"
}

GET Company

Rota para obter todas as empresas cadastradas.

url method status
/company GET 201

RESPONSE

[
  {
    "id": 1,
    "cnpj": "20.232.212/2323-42",
    "trading_name": "Soft Client Inc.",
    "company_name": "Softclient",
    "users": []
  },
  {
    "id": 2,
    "cnpj": "10.123.286/0001-56",
    "trading_name": "Wal-Mart Inc.",
    "company_name": "Walmart",
    "users": []
  },
  {
    "id": 3,
    "cnpj": "08.522.687/0001-37",
    "trading_name": "Microsoft Inc.",
    "company_name": "Microsoft",
    "users": []
  }
]

GET One Company

Rota que pega uma única empresa, pelo seu id.

url method status
company/company_id GET 200 - 404

RESPONSE

{
  "id": 1,
  "cnpj": "20.232.212/2323-42",
  "trading_name": "Soft Client Inc.",
  "company_name": "Softclient",
  "users": []
}

GET Company Users

Rota que pega os usuários cadastrados referentes à empresa.

url method status
/company/company_id/users GET 200 - 400

1 - Caso não haja nenhum usuário cadastrado

RESPONSE

[]

2 - Caso tenha algum usuário cadastrado

RESPONSE

[
  {
    "id": 1,
    "name": "Marcelo",
    "email": "[email protected]",
    "birthdate": "Fri, 22 Nov 1996 00:00:00 GMT",
    "active": true,
    "role": "tech"
  }
]

PATCH Company

Rota responsável pela atualização de uma empresa.

url method status
/company/company_id PATCH 200 - 400

BODY

{
  "trading_name": "Soft Client Enterprise"
}

RESPONSE

{
  "id": 1,
  "cnpj": "20.232.212/2323-42",
  "trading_name": "Soft Client Enterprise",
  "company_name": "Softclient"
}

PATCH Company active

Rota responsável por desativar uma empresa.

url method status
/company/company_id PATCH 200 - 400

BODY

{
  "active": False
}

RESPONSE - status

{
  "id": 1,
  "cnpj": "20.232.212/2323-42",
  "trading_name": "Soft Client Enterprise",
  "company_name": "Softclient",
  "active": false
}

User

Endpoint referente aos usuários que fazem parte da empresa. Aqui podemos fazer a criação de usuário, alteração de usuários, obtenção de todos os usuários, obtenção de usuário por filtragem (email e nome), remoção de um usuário, pesquisa de usuários que solicitaram um serviço e pesquisa de um usuário de certa empresa.

Login User

Rota responsável pelo login do usuário. Retorna um token de acesso para que os outros métodos sejam liberados.

BODY

{
  "email": "[email protected]",
  "password": "kelvin1234"
}

RESPONSE

{
  "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTYzOTU5MzI0NywianRpIjoiYzUwMThhNmEtYWI2Mi00NWI2LTkyM2UtNTA5MzZlNWU0NTBjIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6eyJpZCI6MSwibmFtZSI6IktlbHZpbiIsImVtYWlsIjoia2VsdmluQGdtYWlsLmNvbSIsInBvc2l0aW9uIjoiQ1RPIiwiYWN0aXZlIjp0cnVlLCJiaXJ0aGRhdGUiOiIyMi8wNS8xOTkzIiwicm9sZSI6ImFkbWluIiwiY29tcGFueV9uYW1lIjoiU29mdGNsaWVudCJ9LCJuYmYiOjE2Mzk1OTMyNDcsImV4cCI6MTYzOTU5NDE0N30.UpfscEuF4p-BpO1NJtJb4RkKII-GvDxA-pfJyu4OjC4"
}

POST User

Rota referente a criação de um usuário. Necessário utilizar o token da empresa, para fazer a criação do seu usuário.

url method status
/user POST 201 - 400 - 409

Formato dos campos:

  • "name": string com 150 caracteres;
  • "email": string;
  • "password": string;
  • "birthdate": data no formato XX/XX/XXXX;
  • "position": cargo na empresa, string;
  • "role": permissões que são concedidas ao usuário (user/tech);

BODY

{
  "name": "Kelvin",
  "email": "[email protected]",
  "password": "kelvin1234",
  "birthdate": "22/05/1993",
  "position": "CTO",
  "role": "admin",
  "company_id": 1
}

RESPONSE

{
  "id": 1,
  "name": "Kelvin",
  "email": "[email protected]",
  "position": "CTO",
  "birthdate": "22/05/1993",
  "active": true,
  "role": "admin",
  "company_name": "Softclient"
}

GET Users

Rota para obter todos os usuários cadastrados.

url method status
/user GET 200

RESPONSE

[
  {
    "id": 1,
    "name": "Kelvin",
    "email": "[email protected]",
    "position": "CTO",
    "active": true,
    "birthdate": "22/05/1993",
    "role": "admin",
    "company": {
      "id": 1,
      "trading_name": "Soft Client Inc.",
      "cnpj": "20232212232342"
    }
  }
]

GET One user by id

Rota referente a pesquisa de um usuário, passando o id dele.

url method status
/user/user_id GET 200 - 404

RESPONSE

{
  "id": 1,
  "name": "Kelvin",
  "email": "[email protected]",
  "position": "CTO",
  "active": true,
  "birthdate": "22/05/1993",
  "role": "admin",
  "company": {
    "id": 1,
    "trading_name": "Soft Client Inc.",
    "cnpj": "20232212232342"
  }
}

GET One user by name

Rota referente a pesquisa de um usuário, passando o nome dele.

url method status
/user/user_name GET 200 - 404

RESPONSE

{
  "id": 1,
  "name": "Kelvin",
  "email": "[email protected]",
  "position": "CTO",
  "active": true,
  "birthdate": "22/05/1993",
  "role": "admin",
  "company": {
    "id": 1,
    "trading_name": "Soft Client Inc.",
    "cnpj": "20232212232342"
  }
}

GET Company by user id

Rota responsável pela pesquisa de uma empresa utilizando o id do usuário.

url method status
/user/user_id/company GET 200 - 404

RESPONSE

{
  "company": {
    "id": 1,
    "cnpj": "20232212232342",
    "trading_name": "Soft Client Inc.",
    "company_name": "Softclient"
  }
}

GET Order by user id

Rota responsável pela pesquisa de um chamado utilizando o id do usuário. Para essa pesquisa, é necessário passar o token do usuário com a role 'user'.

url method status
/user/user_id/order GET 200 - 404

RESPONSE

[
  {
    "id": 1,
    "type": "computador",
    "status": "fechado",
    "description": "O computador apresenta falhas contínuas",
    "release_date": "Wed, 15 Dec 2021 18:45:47 GMT",
    "update_date": "Wed, 15 Dec 2021 19:02:15 GMT",
    "solution": "Troca de algumas peças do computador, que estavam falhando. Todas elas foram verificadas."
  }
]

PATCH User

Rota referente a atualização de um usuário, passando o id desse usuário.

url method status
/user/user_id PATCH 200 - 404

BODY

{
  "name": "Kelvin Alisson"
}

RESPONSE

{
  "id": 1,
  "name": "Kelvin",
  "email": "[email protected]",
  "position": "CTO",
  "active": true,
  "birthdate": "22/05/1993",
  "role": "admin",
  "company_name": "Softclient"
}

Order

Endpoint referente a criação de um chamado, alteração de usuários, obtenção de todos os chamados, remoção de um chamado, pesquisa do usuário que fez um chamado e pesquisa de um técnico de pelo chamado. O chamado só pode ser criado por um usuário que tenha a role de 'user', sendo necessário o token desse usuário.

POST Order

Rota referente à criação de um chamado.

url method status
/orders POST 200

BODY

{
  "type": "nobreak",
  "description": "No break apitando todo momento",
  "release_date": "22/10/2021",
  "update_date": "16/12/2021",
  "user_id": 1
}

RESPONSE

{
  "id": 1,
  "type": "nobreak",
  "status": "aberto",
  "description": "No break apitando todo momento",
  "release_date": "Thu, 16 Dec 2021 17:05:31 GMT",
  "update_date": "Thu, 16 Dec 2021 17:05:31 GMT",
  "solution": "",
  "user": {
    "id": 1,
    "name": "Kelvin",
    "email": "[email protected]",
    "position": "CTO",
    "role": "admin"
  },
  "technician": null
}

GET Order

Rota responsável por obter todos os chamados.

url method status
/orders GET 200

RESPONSE

[
  {
    "id": 1,
    "type": "nobreak",
    "status": "aberto",
    "description": "No break apitando todo momento",
    "release_date": "Thu, 16 Dec 2021 17:05:31 GMT",
    "update_date": "Thu, 16 Dec 2021 17:05:31 GMT",
    "solution": "",
    "user": {
      "id": 1,
      "name": "Kelvin",
      "email": "[email protected]",
      "position": "CTO",
      "role": "admin"
    },
    "technician": null
  }
]

GET Order by id

Rota responsável pela pesquisa do chamado, passando o id dele na requisição.

url method status
/orders/order_id GET 200 - 404

RESPONSE

{
  "id": 1,
  "type": "Nobreak",
  "status": "aberto",
  "description": "No break apitando todo momento",
  "release_date": "Thu, 16 Dec 2021 17:05:31 GMT",
  "update_date": "Thu, 16 Dec 2021 17:05:31 GMT",
  "solution": "",
  "user": {
    "id": 1,
    "name": "Kelvin",
    "email": "[email protected]",
    "position": "CTO",
    "role": "admin"
  },
  "technician": null
}

GET User by order id

Rota responsável pela pesquisa do usuário que solicitou o chamado, passando o id do chamado na rota.

url method status
/orders/order_id/user GET 200 - 404

RESPONSE

{
  "user": {
    "id": 2,
    "name": "João Guilherme Filho",
    "email": "[email protected]",
    "birthdate": "22/05/1993",
    "role": "user"
  }
}

GET Technician by order id

Rota responsável pela pesquisa do técnico que realizará a manutenção, passando o id do chamado na rota.

url method status
/orders/order_id/technician GET 200 - 404

RESPONSE

{
  "technician": {
    "id": 1,
    "name": "Gustavo Martins",
    "email": "[email protected]",
    "birthdate": "22/11/1996"
  }
}

GET Order by status

Rota responsável por obter os chamados, passando na rota os status disponíveis (aberto, em_atendimento, fechado) e o token do usuário que criou esse chamado.

url method status
/orders/order_status GET 200 - 404

RESPONSE

[
  {
    "id": 1,
    "type": "Nobreak",
    "status": "aberto",
    "description": "No break apitando todo momento",
    "release_date": "Thu, 16 Dec 2021 17:05:31 GMT",
    "update_date": "Thu, 16 Dec 2021 17:05:31 GMT",
    "solution": "",
    "user": {
      "id": 1,
      "name": "Kelvin",
      "email": "[email protected]",
      "position": "CTO",
      "role": "admin"
    },
    "technician": null
  }
]

GET Orders Relatory

Rota responsável para download de relatório de ordens com status igual a aberto e em_atendimento

url method status
/orders/relatory GET 200 - 404

PATCH Order by id

Rota responsável pela atualização de um chamado, passando o id dele na rota.

url method status
/orders/order_id PATCH 200 - 400 - 401 - 404

BODY

{
  "description": "Apresenta falhas contínuas."
}

RESPONSE

{
  "id": 1,
  "type": "Nobreak",
  "status": "aberto",
  "description": "Apresenta falhas contínuas.",
  "release_date": "Thu, 16 Dec 2021 17:05:31 GMT",
  "update_date": "Thu, 16 Dec 2021 17:05:31 GMT",
  "solution": "",
  "user": {
    "id": 1,
    "name": "João",
    "email": "[email protected]",
    "position": "CTO",
    "role": "admin"
  },
  "technician": null
}

DELETE Order

Rota responsável por fazer a remoção de um chamado, passando o id dele na rota.

url method status
/orders/order_id DELETE 200 - 404

RESPONSE - status

204

Technician

Endpoint referente ao técnicos responsáveis por responderem aos chamados. Aqui podemso fazer o login do técnico, inserção de um técnico, alteração de dados do técnico, obtenção de todos os técnicos, obtenção de um técnico apenas, obtenção dos chamados que estão relacionados à um técnico e exclusão de um técnico. Para a criação de um técnico, é necessário o token da empresa. Para as outras rotas, necessário o token do próprio técnico, obtido no login.

LOGIN Technician

Rota responsável pelo login do técnico. Retorna um token de acesso para que os outros métodos sejam liberados.

url method status
/technicians/login POST 200 - 404

BODY

{
  "email": "[email protected]",
  "password": "123456"
}

RESPONSE

{
  "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTYzOTU5NDQzMywianRpIjoiYjJiNDMyZWUtMzlhMC00MTNmLTlhOWYtYTQ5Y2QwYjM4NWQzIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6eyJpZCI6MSwibmFtZSI6Ikd1c3Rhdm8gTWFydGlucyIsImVtYWlsIjoiZ3VzdGF2b21hcnRpbnNAZ21haWwuY29tIiwiYmlydGhkYXRlIjoiRnJpLCAyNyBEZWMgMTk4NSAwMDowMDowMCBHTVQifSwibmJmIjoxNjM5NTk0NDMzLCJleHAiOjE2Mzk1OTUzMzN9.snEqX5nCWlItBDEcOEVXFZHOKYgwrgrFdPgeNGyEwAs"
}

POST Technician

url method status
/technicians POST 200
{
  "name": "Erick Lander",
  "email": "[email protected]",
  "password": "123456",
  "birthdate": "03/05/1989"
}

RESPONSE

{
  "id": 1,
  "name": "Erick Lander",
  "email": "[email protected]",
  "birthdate": "03/05/1989",
  "role": "tech"
}

GET Technician

Rota responsável pela pesquisa de todos os técnicos registrados na API.

url method status
/technicians GET 200
[
  {
    "id": 1,
    "name": "Erick Lander",
    "email": "[email protected]",
    "birthdate": "03/05/1989",
    "role": "tech"
  }
]

GET Technician by id

Rota responsável por trazer os dados de um técnico, passando o id dele na rota.

url method status
/technicians/technician_id GET 200 - 404
{
  "id": 1,
  "name": "Erick Lander",
  "email": "[email protected]",
  "birthdate": "03/05/1989",
  "role": "tech"
}

GET Order by technician id

Rota responsável por obter à qua(is)l chamado(s) aquele técnico foi relacionado, passando o id do técnico na rota.

url method status
/technicians/technician_id/orders GET 200 - 404
[
  {
    "id": 1,
    "type": "nobreak",
    "status": "em_atendimento",
    "description": "Apresenta falhas contínuas.",
    "release_date": "Thu, 16 Dec 2021 17:05:31 GMT",
    "update_date": "Thu, 16 Dec 2021 17:32:12 GMT",
    "solution": "",
    "user": {
      "id": 1,
      "name": "João",
      "email": "[email protected]",
      "position": "CTO",
      "company": {
        "id": 1,
        "cnpj": "52.468.355/0001-03",
        "trading_name": "Microsoft Enterprise"
      }
    }
  }
]

PATCH Technician

Rota responsável pela atualização dos dados do técnico, passando o id do técnico na rota. Para poder fazer as alterações, é necessário estar logado na aplicação.

url method status
/technicians/technician_id PATCH 200 - 400 - 404 - 409

BODY

{
  "name": "Erick"
}

RESPONSE

{
  "id": 1,
  "name": "Erick",
  "email": "[email protected]",
  "birthdate": "03/05/1989",
  "role": "tech"
}

PATCH Take order

Rota responsável pelo técnico assumir um chamado em aberto. Para isso, é necessário apenas passar o id do chamado na rota e o token do técnico que ficará com aquele chamado.

url method status
/technicians/take_order/order_id PATCH 200 - 400 - 404

RESPONSE

{
  "order": {
    "id": 1,
    "status": "em_atendimento",
    "type": "nobreak",
    "description": "Apresenta falhas contínuas.",
    "release_date": "Thu, 16 Dec 2021 17:05:31 GMT",
    "update_date": "Thu, 16 Dec 2021 17:32:12 GMT",
    "user": {
      "id": 1,
      "name": "João",
      "email": "[email protected]",
      "position": "CTO",
      "birthdate": "01/01/2001"
    }
  }
}

PATCH Finalize order

Rota responsável pelo técnico finalizar aquele chamado. Para isso, é necessário apenas passar id do chamado na rota e o token do técnico que havia assumido aquele chamado.

url method status
/technicians/finalize_order/order_id PATCH 200 - 400 - 401 - 404

BODY

{
  "solution": "COMPRA DE UM NOVO NOBREAK."
}

RESPONSE

{
  "order": {
    "id": 1,
    "status": "fechado",
    "type": "nobreak",
    "description": "Apresenta falhas contínuas.",
    "release_date": "Thu, 16 Dec 2021 17:05:31 GMT",
    "update_date": "Thu, 16 Dec 2021 17:34:30 GMT",
    "solution": "COMPRA DE UM NOVO NOBREAK.",
    "user": {
      "id": 1,
      "name": "João",
      "email": "[email protected]",
      "position": "CTO",
      "birthdate": "01/01/2001"
    }
  }
}
Owner
Kelvin Alisson Cantarino
Desenvolvedor Web Full Stack
Kelvin Alisson Cantarino
Basic-Discord-Response-Bot, in Python

Response bot for Discord. EG: User: Hello! Bot: Hello there! About Very customizable, no credits needed. Edit the bot.py to what you want, basic Pytho

rhys 1 Nov 20, 2021
Aws-lambda-requests-wrapper - Request/Response wrapper for AWS Lambda with API Gateway

AWS Lambda Requests Wrapper Request/Response wrapper for AWS Lambda with API Gat

1 May 20, 2022
Connects to a local SenseCap M1 Helium Hotspot and pulls API Data.

sensecap_api_checker_HELIUM Connects to a local SenseCap M1 Helium Hotspot and pulls API Data.

Lorentz Factr 1 Nov 03, 2021
A template that help you getting started with Pycord.

A Pycord Template with some example! Getting Started: Clone this repository using git clone https://github.com/AungS8430/pycord-template.git If you ha

2 Feb 10, 2022
The Best Telegram UserBot Made With Pyrogram [Python]

Asterix UserBot A Powerful Telegram userbot based on Pyrogram. How To Deploy Asterix Heroku Railway Qovery Termux Tutorial Railway Deploy Comming Soon

TeamAsterix 9 Oct 17, 2022
Multi-Branch CI/CD Pipeline using CDK Pipelines.

Using AWS CDK Pipelines and AWS Lambda for multi-branch pipeline management and infrastructure deployment. This project shows how to use the AWS CDK P

AWS Samples 36 Dec 23, 2022
🪣 Bitbucket Server PAT Generator

🪣 Bitbucket Server PAT Generator 🤝 Introduction Bitbucket Server (nee Stash) can hand out Personal Access Tokens (PAT) to be used in-place of user+p

reecetech 2 May 03, 2022
See trending stock tickers on Reddit and check Stock perfomance

See trending stock tickers on Reddit and check Stock perfomance

Abbas 1.5k Jan 06, 2023
Analytics platform for Telegram Channels

Tele-Report Analytics platform for Telegram Channels 🚧 👷 Getting Started 1- Install redis and postgreSQL (it would be more generic in future, like u

2 Oct 11, 2022
Policy and data administration, distribution, and real-time updates on top of Open Policy Agent

⚡ OPAL ⚡ Open Policy Administration Layer OPAL is an administration layer for Open Policy Agent (OPA), detecting changes to both policy and policy dat

8 Dec 07, 2022
Telegram Bot for generating and decoding QR-codes

Telegram openqrgen_bot Telegram Bot that generates from user's messages and decodes QR-codes from photos. Also contains rickroll detection :) Just typ

2 Nov 14, 2021
Syrax Check User Bot Discord.py

Syrax-Check-User-Bot-Discord.py Guida Italiana il bot nasce con lo scopo di poter caricare il proprio nome utente,tag e foto profilo al forum tramite

Pippoide 0 Feb 04, 2022
Upload-Instagram - Auto Uploading Instagram Bot

###Instagram Uploading Bot### Download Python and Chrome browser pip install -r

byeonggeon sim 1 Feb 13, 2022
A GitHub Action that automatically reports your Advent of Code progress in a table in your README

Advent README Stars This action adds and maintains a stars report in your README based on your Advent of Code progress. Example Table 2021 Results Day

Kevin Duff 36 Dec 30, 2022
A Happy and lightweight Python Package that Provides an API to search for articles on Google News and returns a JSON response.

A Happy and lightweight Python Package that Provides an API to search for articles on Google News and returns a JSON response.

Muhammad Abdullah 273 Dec 31, 2022
Discord Multitool made in python 3.9

XTool Discord Multitool 24 Features: Webhook Delete VC Lagger Fast Token Checker Mass Report [Not Done] Token rape 2K Characters Bypass Block bypass M

Tiie 50 Dec 20, 2022
eBay Scraper Homework 3 With Python

eBay Scraper Homework 3 Description of Code My ebay-dl.py file is programmed with python to download 6 key pieces of information - name, if there are

1 Nov 10, 2021
A light wrapper around FedEx's SOAP API.

Python FedEx SOAP API Module Author: Greg Taylor, Radek Wojcik Maintainer: Python FedEx Developers License: BSD Status: Stable What is it? A light wra

155 Dec 16, 2022
The best discord Nuk3r !

Discord - Nuker ☢️ Nuk3r ☢️ STEP 1 ✅ We go create discord bot ! [] Go on https://discord.com/developers/applications [] Set the name of your applica

2s.py 1 Apr 16, 2022
A Twitter bot written in Python using Tweepy and hosted on a server.

A Twitter bot written in Python using Tweepy. It can like and/or retweet tweets that contain single or multiple keywords and hashtags.

anniedotexe 11 Dec 15, 2022