Di database Supabase kamu:
✅ YANG TERSEDIA & TERBUKTI JALAN
net.http_get(url := text)
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:
SELECT send_wa_every_5_minutes();
✅ Kalau WA masuk → function BERES
SELECT cron.schedule(
'send-wa-every-5-minutes',
'*/5 * * * *',
$$SELECT send_wa_every_5_minutes();$$
);