Integração i-Diario com i-Educar

Bom dia,

Com a ajuda do @Juchem, consegui instalar o i-Diário.
Agora o passo da integração com o i-Educar, ainda não consegui fazer.

Quando logo na aplicação do i-Diário , aparece uma mensagem de Configuração de Perfil:

E em toda tela que vou, fica abrindo esse popup.

Bom final de semana a todos.

No link https://github.com/portabilis/i-diario/blob/master/README.md tem a sessão Sincronização com i-Educar, com os detalhes de como sincronizar.
Essa tela de seleção de perfil vai aparecer até você concluir a parte de sincronização e selecionar um perfil, basta clicar em cancelar que você consegue acessar os menus.
Basicamente os passos que você deve seguir são:

  • Acessar o menu Configurações > Api de Integraçao e configurar os dados do sincronismo, as chaves de acesso são configuradas no i-educar.
  • Acessar Configurações > Unidades e clicar em Sincronizar.
  • Acessar Calendário letivo, clicar em Sincronizar e configurar os calendários.
  • Acessar Configurações > Api de Integração e clicar no botão de sincronizar.
1 curtida

Essa parte, que não encontrei no i-Educar.

  • Acessar o menu Configurações > Api de Integraçao e configurar os dados do sincronismo, as chaves de acesso são configuradas no i-educar.

Tem até um item (URL de Integração), mas não entendi o que colocar:

image

Na verdade não é ai onde você está procurando, você deve ajustar o arquivo ieducar.ini, existe o exemplo no link https://github.com/portabilis/i-educar/blob/master/ieducar/configuration/ieducar.ini.example, basta informar os campos ‘apis.access_key’ e ‘apis.secret_key’ com as chaves que você desejar(pode usar um gerador como o https://www.geradordesenha.com.br) e informar essas chaves no i-diário no menu Configurações > Api de Integraçao junto com a url que você usa para acessar o i-educar e o ‘Código da instituição’ que geralmente é 1.

2 curtidas

Funcionou. @eliezer Obrigado :smiley:

Só estou procurando vincular um perfil professor agora.
Cadastra professor no Educar ou Diario?

Os cadastros de professores, alunos, turmas, séries, regras de avaliação, vínculos de professores é tudo pelo i-educar, o i-diário apenas sincroniza esses dados.

Funciona de forma automática? ou preciso apertar algum botão para sincronizar os professores?

Em Configurações > Api de Integraçao, tem o botão ‘Sincronizar’, ao clicar nesse botão será feito o processo de sincronização. Você deve estar com o sidekiq rodando para fazer a sincronização, pois é um processo em background. Os professores que serão sincronizados devem estar devidamente alocados em turmas e disciplinas no i-educar.

Quando entro na tela Api Integração, o botão sincronizar já fica girando com o nome “Sincronizando”.

E qual é esse sidekiq? como instalo?

Se o botão esta como Sincronizando, você em algum momento já clicou nele, então para ajustar isso você deve pelo banco verificar a tabela ‘ieducar_api_synchronizations’ com o status ‘started’ e colocar em ‘complete’.
Sempre que for fazer a sincronização você deve estar primeiramente com o sidekiq(é uma gem que serve para rodar processos em background) rodando. Se você fez a instalação correta do i-diário e tem o redis(é um banco noSQL que o sidekiq usa para registrar os processos) instalado, basta ir no terminal e digitar ‘sidekiq’ no diretório do projeto que o sidekiq já estará funcionando corretamente, ai é só clicar no botão sincronizar.

Mudei o status desse tabela para complete, aí quando cliquei em Sincronizar, deu um erro:

Esse erro é devido ao Redis não estar rodando na sua maquina, você deve instalar o Redis e para isso você deve pesquisar no google como instalar no seu sistema operacional.

A questão foi que instalei o i-Diário, usando Docker. conforme apoio do @Juchem, no tópico

Nesse caso, como ficaria a parte do Redis? Não tem nada falando sobre na documentação de instalação.

Não consegui logar no sistema, pode ser a falta dele, tenho estudado o sistema entre demandas.

Consegui fazer a integração funcionar, graças a ajuda do @wilkinsondarolt e @Juchem

Passo 1: Criar o arquivo /i-diario/initializers/sidekiq.rb, com o conteúdo:

require 'sidekiq'

Sidekiq.configure_server do |config|
  config.redis = { url: 'redis://redis:6379/0' }
end

Sidekiq.configure_client do |config|
  config.redis = { url: 'redis://redis:6379/0' }
end

Passo 2: Acessar o Docker da aplicação:

docker exec -it novo-educacao bash

e digitar o comando, para executar o sidekiq:

bundle exec sidekiq


Não sei se tem que clicar em Sincronizar (em Configurações / Api de Integração) antes ou depois de fazer o Passo 2, mas aqui fiz antes e deu certo.

Att

Instalei o redis e o sidekiq, mas quando tento salvar os dados de sincronização, o sistema diz que o formato de URL é inválido. Utilizei o seguinte valor: http://localhost/intranet/index.php

Funcionou utilizando o endereço: http://localhost

Consegui sincronizar removendo a linha 101 (AND $2 = any(ccae.anos_letivos) ) do arquivo https://github.com/portabilis/i-educar/blob/master/ieducar/modules/Api/Views/ServidorController.php . Nas disciplinas importadas do censo os registros da tabela modules.componente_curricular_ano_escolar são preenchidos corretamente. Quando preencho manualmente os anos letivos não são gravados

censo: 10;13;0.000;2;"{2018,2019}"
manualmente: 6;16;80.000;;"{}"

Vou continuar procurando como preencher corretamente essa tabela

amigos, consegui instalar o i-educar e o i-diario em um mesmo servidor VPS, o i-diario está rodando na porta 8080, configurei as API´s de integração e conseguir sincronizar as unidades, mas quando acesso as rotinas para sincronizar CALENDARIO ANO LETIVO e a própria sincronização com o i-educar, aparece o erro 500 , isso tem haver com o redis? e a configuração do sidekid??

Ocorreu esse problema com um conhecido. Comigo (que uso uma versão mais antiga), ocorre em outras páginas, mas funciona normalmente, parece ser um bug. Tem um tópico sobre isso.