A risada preguiçosa vem quando você ouve sobre a transformação digital? Você não acredita mais nas promessas de dados abertos? Você acha que é feio desperdiçar dinheiro público em "Portalitos"? Você está no lugar certo.
O plano é criar APIs decentes que consultam fontes de dados públicos (por exemplo, páginas da Web) para usar os serviços de administração de maneira programática.
Tente consultar alguns exemplos em uma demonstração real:
Existem muitos serviços a serem incluídos e não poderei fazê -lo sozinho. Colaborar!
O projeto está dividido em vários pacotes:
egov-api-server usa este pacote.O servidor HTTP que expõe um graphql API para acessar dados públicos reais (tente demonstração). Ele é desenvolvido em Node.js (TypeScript) com Apollo GraphQL e é a maneira mais fácil de acessar os dados.

Você pode consultar o esquema de dados. Comecei com dados de locais geográficos e serviços de telecomunicações disponíveis na área (antenas, canais de televisão digital, redes disponíveis).
Você só precisa de Node.js 10+. Você deve inicializar o projeto depois de fechá -lo pela primeira vez:
git clone [email protected]:palmerabollo/egov.git
cd egov
npm install
E executá -lo:
npm run start:api-server
Em http: // localhost: 4000 Você terá o acesso ao site ao API GraphQL para executar suas consultas. Se você quiser, há mais detalhes sobre o processo de desenvolvimento no guia para colaboradores.
Nota: Algumas administrações têm servidores inseguros, afetados pelas vulnerabilidades (CVE-2009-3555) por mais de uma década. Isso impede o suporte de node.js> 16 / openl 3.x. É necessário investigar se pode ser ignorado com a variável
SSL_OP_LEGACY_SERVER_CONNECT.
Inclui a implementação de fornecedores de dados: serviços de consulta que extraem dados de fontes públicas. Alguns serviços consultam dados quando solicitados (online) e outros usam dados locais (offline).
Criar um novo serviço é muito simples. Atualmente, o seguinte está desenvolvido. Confira e propor novas idéias nos problemas ou envie sua solicitação de tração com novos serviços. É muito fácil.
| Serviço | Aula | Origem de dados | On-line |
|---|---|---|---|
| Procure populações e códigos postais Categoria: Geral | PostalCodeService | Geonames.org | ❎ (Arquivo local) |
| Localização de antenas de telefonia móvel Categoria: Telco | AntennaService | geoportal.minetur.gob.es | ✅ (API) |
| Verificação de cobertura de 4G a 800MHz Categoria: Telco | NetworkService | www.llega800.es | ✅ (API) |
| Sinais de televisão por localização geográfica Categoria: Telco | DigitalTelevisionService | www.televisiongital.gob.es | ✅ (Html) |
| Radares de trânsito Categoria: Tráfego | TrafficRadarService | www.dgt.es | ✅ (Html, pdf) |
| Informações sobre o veículo Categoria: Tráfego | TrafficVehicleService | www.dgt.es | ✅ (Html, pdf) |
Exemplos de uso programático dos serviços de consulta disponíveis nos egov-data-providers .
import * as egov from '@egov/data-providers' ;
let service = new egov . AntennaService ( ) ;
let antennas = await service . findAntennas ( 41.73 , - 5.32 ) ;
console . table ( antennas , [ 'code' , 'latitude' , 'longitude' ] ) ;
// output
// ┌─────────┬───────────────────────────────────┬───────────┬───────────┐
// │ (index) │ code │ latitude │ longitude │
// ├─────────┼───────────────────────────────────┼───────────┼───────────┤
// │ 0 │ 'VODAFONE ESPAÑA, S.A. - 144588' │ 41.471472 │ -4.989911 │
// │ 1 │ 'VODAFONE ESPAÑA, S.A. - 144589' │ 41.479806 │ -5.048222 │
// │ 2 │ 'ORANGE ESPAGNE, SAU - CYLR2147A' │ 41.471472 │ -4.989911 │
// │ 3 │ 'ORANGE ESPAGNE, SAU - CYLR2223B' │ 41.479806 │ -5.048222 │
// └─────────┴───────────────────────────────────┴───────────┴───────────┘O código EGOV é desenvolvido em node.js (TypeScript). Aqueles que desejam contribuir para novos fornecedores de dados em outra linguagem de programação têm a possibilidade de serem executados como processos independentes que expõem uma interface HTTP. Esses processos adaptadores podem obter os dados, processá -los e oferecer -os para egov por meio dessa interface HTTP.
Existe uma prova de conceito para obter radares de tráfego com um processo Python que sucule os dados dos radares DGT. Esse processo está sendo executado como uma função sem servidor no AWS Lambda.
Data-Provider- (http)-> adaptador- (http scrape)-> DataSource
Por que sem servidor? Porque é a maneira de fazer o projeto economicamente sustentável, sem ter que pedir dinheiro por enquanto.
Copyright 2019 - Guido García (Guido.garcia no Protonmail Dot Com)
Licenciado sob a GNU, Licença Pública Geral, versão 2.0 (a "licença"); Você não pode usar esse arquivo, exceto em conformidade com a licença.
Os códigos postais da Sub Information são fornecidos pela Geonames sob uma licença Creative Commons Attribution 4.0.