integracao.js 1013 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import { config } from "../../src/config/index.js";
  2. const TIPO_IXC = 1;
  3. const TIPO_ACS = 2;
  4. export async function seed(knex) {
  5. await seedIxc(knex);
  6. await seedAcs(knex);
  7. }
  8. async function seedIxc(knex) {
  9. const { baseUrl, login, senha } = config.ixcIntegradorSeed;
  10. if (!baseUrl) return;
  11. await knex("integracao")
  12. .insert({
  13. Id: TIPO_IXC,
  14. Nome: "Integrador IXC (Alfred)",
  15. Tipo: TIPO_IXC,
  16. Url: baseUrl,
  17. Outros: JSON.stringify({ Login: login, Senha: senha })
  18. })
  19. .onConflict("Id")
  20. .merge(["Nome", "Tipo", "Url", "Outros"]);
  21. }
  22. // chave fixa (acsk_...) criada no painel do ACS — sem login/renovação como no IXC
  23. async function seedAcs(knex) {
  24. const { baseUrl, apiKey } = config.acsSeed;
  25. if (!baseUrl || !apiKey) return;
  26. await knex("integracao")
  27. .insert({
  28. Id: TIPO_ACS,
  29. Nome: "ACS Space (TR-069)",
  30. Tipo: TIPO_ACS,
  31. Url: baseUrl,
  32. Token: apiKey
  33. })
  34. .onConflict("Id")
  35. .merge(["Nome", "Tipo", "Url", "Token"]);
  36. }