Connecter le radar immobilier à Cloudflare
Vérifie que le backend privé est joignable et que les sources sont configurées. Aucun mot de passe ni jeton n'est enregistré par cette page.
Ton avancement Cloudflare
Tu as déjà créé les 8 tables et les 3 index de immopilot-db. Le site patient-hall-ae57 utilise uniquement des fichiers statiques : sa section Bindings ne peut pas recevoir D1. Il faut créer un Worker API distinct.
- Base D1 :
immopilot-db— déjà créée. - Worker : créer un nouveau Worker nommé
immopilot-apidans Cloudflare → Compute → Workers & Pages. - Binding D1 : dans le nouveau Worker, Settings → Bindings → Add binding → D1 database ; nom de variable
DB, baseimmopilot-db. - Code backend : déployer
cloudflare-backend/worker.jsavec ses modules (feed.js,discovery.js,digest.js) depuis l'archive Sources via Wrangler.
Configuration Wrangler prête à copier :
name = "immopilot-api" main = "worker.js" compatibility_date = "2026-10-01" [[d1_databases]] binding = "DB" database_name = "immopilot-db" database_id = "edf229c1-234d-4593-bf6c-3f938a311fe3" [triggers] crons = ["0 7 * * *"]
Important : cette configuration ne contient aucun jeton. Définis SYNC_TOKEN et ALLOWED_ORIGIN comme secrets du Worker, jamais dans le site public. Ne remplace pas patient-hall-ae57 par le code backend.
1. Diagnostic du backend
Ne partage pas ton jeton dans une capture. Il est envoyé uniquement au Worker que tu indiques, depuis ton navigateur, et n'est pas conservé.
2. Préparer Cloudflare
- Crée une base D1 nommée
immopilot-dbdans Cloudflare. - Dans le dossier source
cloudflare-backend, configurewrangler.tomlavec le database_id et le bindingDB. - Applique le fichier
schema.sqlà la base distante, puis configureSYNC_TOKENetALLOWED_ORIGIN. - Déploie le backend en tant que Worker séparé de
patient-hall-ae57, pour ne pas remplacer ton site. - Configure un flux RSS/Atom autorisé dans
DISCOVERY_FEEDS_JSONou un flux JSON autorisé viaLISTING_FEED_URL. - Reviens ici pour vérifier la connexion et l'état des scans.
3. Préparer tes flux de recherche
Colle ici uniquement des URL RSS/Atom de tes propres alertes Google ou flux de recherche autorisés. Les liens ne sont ni enregistrés dans le navigateur, ni envoyés à ImmoPilot : tu copieras le JSON dans un secret Cloudflare.
Dans cloudflare-backend, exécute npx wrangler secret put DISCOVERY_FEEDS_JSON, puis colle le JSON. Ne publie jamais ce contenu dans le ZIP du site.
4. Vérifier avant déploiement
Dans le dossier cloudflare-backend de l’archive sources, exécute node preflight.mjs pour détecter les erreurs de configuration D1 avant le déploiement.
Si tu disposes d’un flux JSON autorisé, vérifie son format avec node validate-feed.mjs annonces.json. Le fichier example-feed.json sert uniquement d’exemple fictif.
Le contrôle local ne vérifie ni les secrets du compte ni l’accès réel à Cloudflare.
5. Ce que le diagnostic signifie
Connexion OK : le Worker répond et la base D1 est accessible. Sources 0 : aucune collecte automatique n'est configurée. Dernier scan absent : aucune exécution enregistrée. Le scan quotidien utilise un Cron après déploiement du Worker.
Ce module ne donne pas accès à toutes les annonces Leboncoin ou SeLoger. Il nécessite des flux utilisables avec autorisation.