Proposta
Data
Versão
Descrição
Autor
20/05/18
1.0
Ideia, Implementação, Spot, Tipo de Framework, Documentação, Bibliotecas, Próximos Passos.
Equipe
1. Ideia
Desenvolvimento de um framework escrito em Python ou Ruby para criação de chatbots, prontos para integração com as plataformas Facebook Messenger e Telegram.
O nosso framework agiria como um intermediário (middleware) entre as SDKs do Messenger e o Telegram e o código escrito pelo usuário para criar os chatbots.
2. Implementação
Nós iremos desenvolver um servidor web para receber as requisições dos servidores do facebook e do telegram. irá receber a requisição e irá tratar essa requisição delegando para as SDK’s a ação final de acordo com a mensagem.
2. Spots
2.1 Frozen
Integração com Telegram
Integração com Messenger
SQLite para armazenamento de dados
2.2 Hot
Models para armazenamento de dados
Comandos de ação do chatbot
3. Tipo do Framework
Após a análise das funcionalidades que pretendem ser oferecidas pelo framework, identificou-se o tipo caixa cinza. O framework permitirá reúso por herança, associação dinâmica, sendo um intermediário entre os dois outros tipos de frameworks, caixa branca e caixa preta.
4. Documentação
Pretende-se elaborar uma documentação a nível de código, explicando o que cada método das classes fazem, além de criar alguns exemplos de projetos usando o framework.
5. Bibliotecas
A depender da linguagem escolhida pela equipe, poderá se utilizar as seguintes bibliotecas para a criação do framework.
Linguagem
Título
Descrição
URL
Ruby
telegram-bot-ruby
Biblioteca de integração com Telegram
Ruby
Ruby Messenger
Biblioteca de integração com Facebook Messenger.
Ruby
SQLite3/Ruby
Biblioteca para gerenciamento de banco de dados SQLite.
Python
Python Telegram Bot
Biblioteca de integração com Telegram.
Python
Python Messenger Bot
Biblioteca de integração com Facebook Messenger.
Python
SQLite3/Python
Biblioteca para gerenciamento de banco de dados SQLite.
Python
SQLAlchemy
Biblioteca de mapeamento objeto-relacional SQL para Python
6. Próximos Passos
A equipe definiu algumas tarefas para iniciar o desenvolvimento do framework e estão relacionadas a seguir:
Definir funcionalidades do Framework
Como fazer uma model apenas especificando os atributos e os tipos de cada atributo.
Criar o diagrama de classes do framework
Criar um site para a documentação (https://www.gitbook.com/)
Definir a estrutura de pastas do projeto
Last updated