Skip to content

n8n integracija

Samostalno hostirana automatizacija tijekova rada s potpunom kontrolom nad vašim podacima.

Pregled

n8n je open-source, samostalno hostabilan alat za automatizaciju. Zadržite podatke o fotografijama na svojoj infrastrukturi dok automatizirate tijekove rada s 200+ integracija.

Preduvjeti

  • Visiono račun s pristupom API-ju
  • n8n instanca (samostalno hostirana ili u oblaku)
  • API ključ iz Visiona

Zašto n8n?

ZnačajkaPrednost
Samostalno hostiranoPotpuna kontrola nad podacima
Open sourcePregledajte i modificirajte kod
Bez ograničenja izvršavanjaNeograničeni tijekovi rada
Prilagođeni čvoroviIzgradite integracije
Fair-code licencaBesplatno za većinu korištenja

Koraci postavljanja

1. Kreirajte Webhook čvor

  1. Otvorite n8n editor tijekova rada
  2. Dodajte Webhook čvor
  3. Postavite metodu: POST
  4. Kopirajte webhook URL (Produkcijski ili Testni)

2. Konfigurirajte u Visionu

  1. Idite na Postavke radnog prostoraWebhooks
  2. Kliknite Dodaj webhook
  3. Zalijepite n8n webhook URL
  4. Odaberite događaje za okidanje
  5. Spremite konfiguraciju

3. Testirajte vezu

  1. U n8n-u, kliknite Listen for Test Event
  2. Pošaljite testnu fotografiju u Visionu
  3. n8n prikazuje primljene podatke
  4. Kliknite Stop Listening

4. Izgradite svoj tijek rada

Dodajte čvorove za obradu podataka:

[Webhook] → [IF] → [HTTP Request] → [Email]
                 ↘ [Slack]

Primjeri tijekova rada

Tijek rada za sigurnosnu kopiju fotografija

Spremite fotografije na lokalnu pohranu ili S3:

json
{
  "nodes": [
    {
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "parameters": {
        "path": "visiono-photos",
        "httpMethod": "POST"
      }
    },
    {
      "name": "Loop Photos",
      "type": "n8n-nodes-base.splitInBatches",
      "parameters": {
        "batchSize": 1
      }
    },
    {
      "name": "Download Photo",
      "type": "n8n-nodes-base.httpRequest",
      "parameters": {
        "url": "={{$json.url}}",
        "responseFormat": "file"
      }
    },
    {
      "name": "Save to S3",
      "type": "n8n-nodes-base.awsS3",
      "parameters": {
        "operation": "upload",
        "bucketName": "visiono-backups",
        "fileName": "={{$json.slot_name}}.jpg"
      }
    }
  ]
}

Tijek rada za obavijesti

Obavijestite tim o novim slanjima:

Čvorovi:

  1. Webhook - Primi Visiono događaj
  2. Set - Formatiraj podatke poruke
  3. Slack - Pošalji na kanal
  4. Email - Pošalji sažetak

Zapisivanje u bazu podataka

Zabilježite slanja u PostgreSQL:

Čvorovi:

  1. Webhook - Primi događaj
  2. Postgres - Umetni zapis
  3. IF - Provjeri broj fotografija
  4. HTTP Request - Pozovi vanjski API

Konfiguracija čvorova

Webhook čvor

yaml
HTTP Method: POST
Path: visiono-webhook
Response Mode: On Received
Response Data: Success

HTTP Request čvor

Za preuzimanje fotografija:

yaml
Method: GET
URL: ={{ $json.data.photos[0].url }}
Response Format: File

IF čvor

Uvjetno usmjeravanje:

yaml
Condition: Number
Value 1: ={{ $json.data.photos.length }}
Operation: Larger
Value 2: 5

Referenca podataka

Pristupite webhook podacima u izrazima:

IzrazPodaci
{{ $json.event }}Vrsta događaja
{{ $json.data.smart_link.name }}Naziv Trajnog linka
{{ $json.data.photos[0].url }}URL prve fotografije
{{ $json.data.photos.length }}Broj fotografija
{{ $json.data.metadata.full_name }}Ime pošiljatelja
{{ $json.data.metadata.unique_field }}Identifikator

Petlje i iteracija

Obradi sve fotografije

Koristite Split In Batches čvor:

  1. Dodajte nakon Webhooka
  2. Postavite stavke: {{ $json.data.photos }}
  3. Veličina serije: 1
  4. Povežite čvorove za obradu
  5. Dodajte Merge na kraju

Agregiraj rezultate

Prikupite obrađene podatke:

  1. Code čvor za agregaciju
  2. Pohranite u statične podatke tijeka rada
  3. Izlaz kombiniranih rezultata

Rukovanje greškama

Ponovni pokušaj pri neuspjehu

Konfigurirajte po čvoru:

  • Continue on Fail: Obradi sljedeću stavku
  • Retry on Fail: Pokušaj ponovno
  • Max Retries: 3

Error Trigger

Hvatajte i rukujte greškama:

  1. Dodajte Error Trigger čvor
  2. Povežite s čvorom za obavijesti
  3. Zabilježite ili upozorite na neuspjehe

Savjeti za samostalno hostiranje

Docker deployment

yaml
version: "3"
services:
  n8n:
    image: n8nio/n8n
    ports:
      - "5678:5678"
    environment:
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=sigurna-lozinka
      - WEBHOOK_URL=https://n8n.vasadomena.com/
    volumes:
      - n8n_data:/home/node/.n8n

Webhook URL

Za produkcijske webhookove:

  • Koristite produkcijski URL (ne testni)
  • Konfigurirajte WEBHOOK_URL varijablu okruženja
  • Koristite HTTPS s valjanim certifikatom

Sigurnost

  • Omogućite autentifikaciju
  • Koristite HTTPS
  • Ograničite mrežni pristup
  • Redovite sigurnosne kopije

Napredne značajke

Prilagođeni kod

Koristite Code čvor za JavaScript:

javascript
const photos = items[0].json.data.photos;
const processed = photos.map(photo => ({
  url: photo.url,
  name: photo.slot_name,
  downloaded: new Date().toISOString()
}));
return [{ json: { photos: processed } }];

Vjerodajnice

Sigurno pohranite API ključeve:

  1. Idite na Credentials
  2. Dodajte novu vjerodajnicu
  3. Referencirajte u čvorovima

Pod-tijekovi rada

Modularizirajte tijekove rada:

  1. Kreirajte višekratni tijek rada
  2. Pozovite putem Execute Workflow čvora
  3. Proslijedite podatke između tijekova rada

Rješavanje problema

Webhook ne prima

  1. Provjerite da n8n radi
  2. Provjerite da URL uključuje port ako je potrebno
  3. Provjerite da vatrozid dopušta promet
  4. Testirajte s curl-om

Greške izraza

  1. Provjerite strukturu podataka
  2. Provjerite putanje svojstava
  3. Koristite opcionalno ulančavanje: $json.data?.photos

Problemi s izvršavanjem

  1. Provjerite zapisnik izvršavanja
  2. Pregledajte izlaze čvorova
  3. Testirajte pojedinačne čvorove
  4. Provjerite vjerodajnice

Optimizacija performansi

Skupna obrada

  • Grupirajte slične operacije
  • Koristite bulk API pozive
  • Ograničite istovremena izvršavanja

Upravljanje resursima

  • Pratite korištenje memorije
  • Ograničite izvršavanja tijeka rada
  • Arhivirajte stare podatke

Povezani resursi

Profesionalna Platforma za Foto Dokumentaciju