Download the PHP package sierratecnologia/integrations without Composer

On this page you can find all versions of the php package sierratecnologia/integrations. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package integrations

SierraTecnologia Integrations

SierraTecnologia Integrations integration services integrations and providers for users required by various SierraTecnologia packages. Validator functionality, and basic controller included out-of-the-box.

Packagist Scrutinizer Code Quality Travis StyleCI License GitHub Workflow Status


📚 Índice


🚀 Introdução

O que é o SierraTecnologia Integrations?

O SierraTecnologia Integrations é um pacote Laravel robusto e extensível que fornece abstrações e implementações padronizadas para integração com diversos serviços externos, incluindo APIs de terceiros, provedores de pagamento, sistemas de notificações, ERPs, CRMs, plataformas de mídia social e muito mais.

Objetivo e Filosofia do Projeto

Este projeto foi desenvolvido com os seguintes princípios em mente:

Tipos de Integrações Suportadas

O pacote oferece suporte para diversos tipos de integrações, incluindo:

Importância dentro do Ecossistema SierraTecnologia

O Integrations é um componente fundamental do ecossistema SierraTecnologia / Rica Soluções, fornecendo a camada de comunicação entre os sistemas internos e o mundo externo. Ele permite que outros pacotes do ecossistema (como MediaManager, Market, CMS, Locaravel) se comuniquem com serviços externos de forma consistente e confiável.


📦 Instalação

Requisitos Mínimos

Instalação via Composer

Publicação de Configurações

Após a instalação, publique os arquivos de configuração:

Isso criará os seguintes arquivos:

Configuração do Service Provider

O pacote utiliza auto-discovery do Laravel, então o IntegrationsProvider será registrado automaticamente. Caso necessite registrar manualmente, adicione ao arquivo config/app.php:

Executar Migrations

Execute as migrations para criar as tabelas necessárias:


🏗 Arquitetura e Estrutura Interna

Estrutura de Pastas e Namespaces

Padrões de Arquitetura Adotados

1. Service Layer Pattern

O pacote utiliza uma camada de serviços para encapsular a lógica de negócio:

2. Adapter Pattern

Cada conector implementa um adaptador para o serviço específico:

3. Facade Pattern

Acesso simplificado através de Facades:

Fluxo de Comunicação Entre Camadas

Convenções e Boas Práticas de Desacoplamento


🧩 Principais Componentes

1. Classe Base Connector

Localização: src/Connectors/Connector.php

Classe abstrata que define a interface comum para todos os conectores:

2. Model Token

Localização: src/Models/Token.php

Gerencia tokens de autenticação para os serviços:

3. IntegrationsService

Localização: src/Services/IntegrationsService.php

Serviço principal para gerenciamento de integrações:

4. WebhookReceivedController

Localização: src/Http/WebhookReceivedController.php

Controller para receber webhooks de serviços externos:


🔌 Conectores Disponíveis

Redes Sociais

Armazenamento e Infraestrutura

Gerenciamento de Projetos e Versionamento

CRM, Marketing e Vendas

Comunicação

Outros Serviços


💡 Uso Prático

Configurando Integrações em um Projeto Laravel

1. Configurar Credenciais no .env

2. Configurar no config/services.php

Exemplo: Integração com API Externa (Jira)

Exemplo: Integração com Hubspot (CRM)

Como Lidar com Callbacks e Webhooks

Configurar Rotas

Processar Webhook

Boas Práticas de Segurança, Timeout e Logging

Segurança

Timeout e Retry

Logging


🔗 Integração com o Ecossistema SierraTecnologia

Conexão com Bibliotecas Irmãs

O Integrations se integra perfeitamente com outros pacotes do ecossistema:

1. sierratecnologia/muleta

Dependência principal que fornece traits e helpers:

2. Market (E-commerce)

Integração com gateways de pagamento e ERPs:

3. MediaManager

Upload de mídias para serviços de armazenamento:

4. CMS (Content Management)

Publicação de conteúdo em redes sociais:

Padrões de Versionamento e CI/CD

O projeto segue o Semantic Versioning (SemVer):

Workflow de CI/CD

O projeto utiliza GitHub Actions para automação:

Casos de Uso Multi-Serviço

Exemplo: Pipeline de Marketing Automation


🛠 Extensão e Customização

Como Criar Novos Drivers ou Conectores Customizados

Passo 1: Criar a Estrutura

Passo 2: Implementar o Conector Base

Passo 3: Implementar Ações Específicas

Passo 4: Registrar o Conector

Como Estender Classes Base Sem Quebrar Compatibilidade

Usando Traits

Sobrescrevendo Métodos com Cuidado

Recomendações para Integração Segura e Isolada

1. Usar Filas para Operações Pesadas

2. Implementar Circuit Breaker

3. Validar Dados Antes de Enviar


📊 Exemplos Reais

Caso de Uso 1: Sistema de Gerenciamento de Projetos

Cenário: Empresa de software que usa Jira para gerenciar projetos e deseja integrar com seu sistema interno.

Benefícios Observados:

Caso de Uso 2: Automação de Marketing e Vendas

Cenário: E-commerce que integra Hubspot (CRM), Instagram (marketing) e Slack (comunicação interna).

Benefícios Observados:

Caso de Uso 3: Monitoramento e Notificações

Cenário: Sistema que monitora erros via Sentry e notifica a equipe técnica via Slack.

Benefícios Observados:


🧪 Ferramentas de Qualidade

O projeto utiliza um conjunto robusto de ferramentas para garantir qualidade de código:

PHPUnit - Testes Automatizados

Executar testes:

Configuração: phpunit.xml

PHPCS - Padrão de Código PSR-12

Verificar código:

Configuração: phpcs.xml

PHPStan - Análise Estática (Nível 5)

Analisar código:

Configuração: phpstan.neon

PHPMD - Detecção de Code Smells

Analisar complexidade:

Configuração: phpmd.xml

GrumPHP - Git Hooks

Configuração automática de hooks:

GitHub Actions - CI/CD

O workflow .github/workflows/ci.yml executa automaticamente:

Status: CI


🤝 Guia de Contribuição

Agradecemos seu interesse em contribuir com o SierraTecnologia Integrations! Este guia fornece todas as informações necessárias para você começar.

Como Contribuir

  1. Fork o repositório
  2. Clone seu fork localmente
  3. Crie uma branch para sua feature ou correção
  4. Faça suas alterações seguindo os padrões do projeto
  5. Commit suas mudanças com mensagens descritivas
  6. Push para sua branch
  7. Abra um Pull Request

Padrões de Commits

Utilizamos mensagens de commit semânticas:

Nomenclatura de Branches

Executar Ferramentas Localmente

Antes de fazer commit, execute as ferramentas de qualidade:

Requisitos para Pull Requests

Para que seu PR seja aceito, certifique-se de que:

Adicionando um Novo Conector

Se você deseja adicionar suporte para um novo serviço:

  1. Crie a estrutura de diretórios em src/Connectors/NomeServico/
  2. Implemente a classe base estendendo Connector
  3. Adicione classes auxiliares (Create, Update, Import, etc.)
  4. Escreva testes unitários em tests/Unit/Connectors/NomeServicoTest.php
  5. Adicione documentação na seção "Conectores Disponíveis" do README
  6. Registre o conector no banco de dados

Exemplo de estrutura:

Política de Licença

Este projeto está licenciado sob a MIT License. Ao contribuir, você concorda que suas contribuições sejam licenciadas sob os mesmos termos.

Reportar Bugs

Para reportar bugs, abra uma Issue com:

Solicitar Novas Funcionalidades

Para solicitar novas funcionalidades:

  1. Abra uma Issue
  2. Use o label enhancement
  3. Descreva detalhadamente o caso de uso
  4. Explique como isso beneficiaria outros usuários

Contato da Equipe Técnica


Changelog

Refer to the Changelog for a full history of the project.


Support

The following support channels are available at your fingertips:


Contributing & Protocols

Thank you for considering contributing to this project! The contribution guide can be found in CONTRIBUTING.md.

Bug reports, feature requests, and pull requests are very welcome.


Security Vulnerabilities

If you discover a security vulnerability within this project, please send an e-mail to [email protected]. All security vulnerabilities will be promptly addressed.


About SierraTecnologia

SierraTecnologia is a software solutions startup, specialized in integrated enterprise solutions for SMEs established in Rio de Janeiro, Brazil since June 2008. We believe that our drive The Value, The Reach, and The Impact is what differentiates us and unleash the endless possibilities of our philosophy through the power of software. We like to call it Innovation At The Speed Of Life. That’s how we do our share of advancing humanity.

License

This software is released under The MIT License (MIT).

(c) 2008-2020 SierraTecnologia, This package no has rights reserved.


All versions of integrations with dependencies

PHP Build Version
Package Version
Requires php Version ^7.2|^8.0
aws/aws-sdk-php Version ^3.0
cache/filesystem-adapter Version >=1.0
fideloper/proxy Version >=4.0
geerlingguy/ping Version *
google/photos-library Version >=1.4
guzzlehttp/guzzle Version ^6.0 || ^7.0
hubspot/hubspot-php Version ^3.0
league/climate Version >=3.4
league/csv Version ^9.0|^8.0|^7.1
league/flysystem-aws-s3-v3 Version *
league/pipeline Version *
league/plates Version ^3.1|^4.0
m4tthumphrey/php-gitlab-api Version *
raiym/instagram-php-scraper Version >=0.9.10
ricasolucoes/atlassian Version ^0.4.0
sabre/xml Version *
sierratecnologia/muleta Version ^0.4.0
srmklive/flysystem-dropbox-v2 Version *
texthtml/docker-links Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package sierratecnologia/integrations contains the following files

Loading the files please wait ...