🔴 INTI MASALAH (FINAL)

Di database Supabase kamu:

YANG TERSEDIA & TERBUKTI JALAN

net.http_get(url := text)



1️⃣ FUNCTION BARU (CRON VERSION – PASTI JALAN)

CREATE OR REPLACE FUNCTION send_wa_every_5_minutes()
RETURNS void
LANGUAGE plpgsql
AS $$
DECLARE
  wa_url text;
  pesan_raw text;
  pesan_encoded text;
BEGIN
  -- Pesan
  pesan_raw :=
    'Assalamu’alaikum warahmatullahi wabarakatuh.' || E'\\n\\n' ||
    'Ini adalah pesan otomatis (cron) yang dikirim setiap 5 menit.' || E'\\n\\n' ||
    '— Sistem';

  -- Encode (SAMA PERSIS DENGAN FUNCTION YANG BERHASIL)
  pesan_encoded := replace(pesan_raw, ' ', '%20');
  pesan_encoded := replace(pesan_encoded, E'\\n', '%0A');
  pesan_encoded := replace(pesan_encoded, '''', '%27');
  pesan_encoded := replace(pesan_encoded, '’', '%27');
  pesan_encoded := replace(pesan_encoded, '“', '%22');
  pesan_encoded := replace(pesan_encoded, '”', '%22');
  pesan_encoded := replace(pesan_encoded, ',', '%2C');
  pesan_encoded := replace(pesan_encoded, '.', '%2E');

  -- URL final (GET – TERBUKTI JALAN)
  wa_url :=
    '<https://sender.digilunar.com/send-message>'
    || '?api_key=tq1t9SX4udY7gwDGkdFsKlBP03J103'
    || '&sender=6285708249267'
    || '&number=6285229944411'
    || '&message=' || pesan_encoded;

  PERFORM net.http_get(url := wa_url);
END;
$$;

📌 INI ADALAH VERSI PALING AMAN

karena:


2️⃣ TEST MANUAL (WAJIB)

SELECT send_wa_every_5_minutes();

✅ Kalau WA masuk → function BERES


3️⃣ PASANG CRON (SETIAP 5 MENIT)

SELECT cron.schedule(
  'send-wa-every-5-minutes',
  '*/5 * * * *',
  $$SELECT send_wa_every_5_minutes();$$
);