Boutons « Ajouter au calendrier » pour votre app ChatGPT & Codex
Une réservation absente du calendrier de l'utilisateur, c'est un rendez-vous manqué en puissance. Sur iOS, WebViewGold permet d'ajouter un événement à l'app Calendrier depuis un simple lien vers un fichier .ics : votre app ChatGPT & Codex n'a besoin de rien d'autre que d'une URL qui renvoie l'événement. Sur Android, WebViewGold n'a pas d'API de calendrier dédiée ; voici ce qui fonctionne à la place.
Dès $109 en paiement unique par plateforme, ou notre équipe s'occupe de tout dès $698.
Garantie d'approbation – ou remboursement sous 14 jours
Aucun codage requis
Paiement unique, mises à jour gratuites
Support humain 24/7
Conçu en Allemagne depuis 2014 · ISO 27001
9:41
CChatGPT & Codex
Événements de calendrierDésormais dans votre poche
App Store · Google Play Approuvée
Ce qui fonctionne sur chaque plateforme
iOS : un lien vers un fichier .ics
WebViewGold est prévu pour Calendrier (anciennement iCal) : un lien classique vers un fichier .ics permet à l'utilisateur d'ajouter l'entrée au calendrier de l'iPhone ou de l'iPad. Pas de schéma d'URL, pas de pont JavaScript, et l'app web ne lit jamais le calendrier de l'utilisateur ; elle se contente de proposer un événement.
Android : téléchargement ou Google Calendar
La documentation Android ne contient pas d'API de calendrier. Deux voies fonctionnent : ajouter .ics à downloadableExtension dans Config.java pour que le fichier soit téléchargé et puisse être ouvert avec une app de calendrier qui importe les fichiers .ics, et proposer un lien « Ajouter à Google Calendar » qui s'ouvre hors de l'app.
Un fichier d'événement par réservation
Votre serveur renvoie un petit fichier texte (un VCALENDAR avec un VEVENT) pour chaque réservation, cours ou rendez-vous. La même URL sert le site web, l'app iOS et le téléchargement sur Android.
Prompt pour ChatGPT & Codex
Collez ceci dans ChatGPT & Codex pour implémenter la partie app web. Vérifiez le résultat, publiez, puis testez dans l'app WebViewGold.
Prompt pour ChatGPT ou Codex
Prompt pour Codex : Ajoutez l'export calendrier des réservations, compatible avec le wrapper d'app WebViewGold, et ouvrez une pull request. Créez GET /calendar/:token.ics (un token aléatoire par réservation), qui renvoie un VEVENT avec un UID stable, DTSTAMP, DTSTART et DTEND en UTC terminés par Z, SUMMARY, LOCATION, DESCRIPTION avec l'URL de la réservation et un VALARM une heure avant, servi en text/calendar; charset=utf-8. Utilisez une bibliothèque iCalendar maintenue. Ajoutez calendarLinks(booking), qui renvoie cette URL et un lien calendar.google.com/calendar/render?action=TEMPLATE. Affichez le lien .ics sur toutes les plateformes et le lien Google quand navigator.userAgent contient WebViewGold-Android. Si les rendez-vous sont extraits de texte libre avec l'API OpenAI, exigez un JSON structuré avec des heures ISO 8601 et un fuseau horaire, et construisez le fichier à partir de celui-ci sur le serveur. Ajoutez des tests et documentez les règles dans AGENTS.md.
Excellente façon de convertir son app web en app native ! Un délai très court, et un super moyen de mettre ses apps dans les stores sans devoir développer une app native complète !
Kevin Joling · FlightConnections & TrainConnections · Trustpilot
Ajouter un bouton « Ajouter au calendrier »
Environ une heure, dont l'essentiel pour l'endpoint .ics.
Créez l'endpoint .ics
Ajoutez une route comme /calendar/BOOKING_TOKEN.ics qui renvoie l'événement avec Content-Type: text/calendar; charset=utf-8. Gardez un chemin qui se termine par .ics, comme dans l'exemple WebViewGold, et utilisez un token impossible à deviner plutôt que de compter sur la session de connexion.
Remplissez les champs qui comptent
Un UID stable par réservation, DTSTAMP, DTSTART et DTEND en UTC (terminés par Z), SUMMARY, LOCATION et une DESCRIPTION avec un lien vers la réservation. Échappez les virgules et les points-virgules dans le texte.
Ouvrez le lien dans le même onglet
Un simple <a href="https://yourdomain.com/calendar/TOKEN.ics">. Ne l'ouvrez pas dans une nouvelle fenêtre ni avec target="_blank" : une WebView n'a nulle part où l'afficher.
Gérez Android
Ajoutez .ics à downloadableExtension dans Config.java pour la voie du téléchargement, et affichez un lien « Ajouter à Google Calendar » avec calendar.google.com dans BROWSER_BLACKLIST, pour qu'il s'ouvre dans le navigateur du système, où la plupart des utilisateurs sont connectés à Google, plutôt que dans la WebView.
Testez sur de vrais appareils
Ajoutez un événement sur un iPhone, puis vérifiez le fuseau horaire, la durée et le lien dans la description. Sur Android, essayez des téléphones de deux fabricants ; les apps de calendrier n'ouvrent pas toutes les fichiers .ics téléchargés de la même façon.
Un fichier .ics minimal
C'est tout ce dont un calendrier a besoin. Selon la spécification iCalendar, les lignes se terminent par CRLF ; les bibliothèques s'en chargent pour vous. Partie serveur de votre stack : Votre propre API ou des fonctions serverless.
text
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//YourApp//Bookings//EN
CALSCALE:GREGORIAN
METHOD:PUBLISH
BEGIN:VEVENT
UID:[email protected]
DTSTAMP:20261101T120000Z
DTSTART:20261205T170000Z
DTEND:20261205T180000Z
SUMMARY:Cours de yoga
LOCATION:Studio 2\, 14 rue Principale
DESCRIPTION:Gérer votre réservation : https://yourdomain.com/bookings/123
BEGIN:VALARM
TRIGGER:-PT1H
ACTION:DISPLAY
DESCRIPTION:Cours de yoga dans une heure
END:VALARM
END:VEVENT
END:VCALENDAR
La logique du bouton
Le lien .ics partout, le lien Google Calendar en plus sur Android et sur ordinateur :
javascript
// User agents personnalisés : "... WebViewGold-iOS" (Config.swift), "... WebViewGold-Android" (Config.java)
var ua = navigator.userAgent;
var IS_ANDROID_APP = ua.indexOf("WebViewGold-Android") !== -1;
var IS_IOS_APP = ua.indexOf("WebViewGold-iOS") !== -1;
function icsUrl(b) { return "https://yourdomain.com/calendar/" + b.token + ".ics"; }
function googleCalendarUrl(b) {
var f = function (d) { return d.toISOString().replace(/[-:]|\.\d{3}/g, ""); };
return "https://calendar.google.com/calendar/render?action=TEMPLATE" +
"&text=" + encodeURIComponent(b.title) +
"&dates=" + f(b.start) + "/" + f(b.end) +
"&details=" + encodeURIComponent(b.url) +
"&location=" + encodeURIComponent(b.location);
}
// Rendu : toujours le lien .ics ; le lien Google sauf si IS_IOS_APP
Pièges
Fuseaux horaires : écrivez les heures en UTC avec un Z final, ou incluez un bloc VTIMEZONE correct. Les heures locales « flottantes » se décalent pour les voyageurs et pour les utilisateurs d'autres fuseaux.
Un nouvel UID à chaque téléchargement peut créer des doublons. Gardez un UID par réservation ; la façon dont un calendrier traite une réimportation varie selon l'app.
URL .ics protégées par une connexion : la requête qui récupère le fichier peut ne pas transporter la session web de l'utilisateur. Un token aléatoire par réservation est l'option fiable.
Les abonnements à un calendrier (flux webcal://) sont une autre fonctionnalité ; la documentation WebViewGold couvre les fichiers .ics individuels.
WebViewGold a-t-il une API de calendrier pour Android ?
Pas d'API dédiée ; l'intégration du calendrier décrite dans la documentation concerne uniquement iOS. Sur Android, proposez le fichier .ics en téléchargement (ajoutez .ics à downloadableExtension dans Config.java) et un lien Ajouter à Google Calendar qui s'ouvre hors de l'app.
L'app peut-elle lire le calendrier de l'utilisateur pour vérifier ses disponibilités ?
Non. Le flux .ics se contente de proposer un événement que l'utilisateur ajoute. Les disponibilités relèvent de votre serveur, à partir de vos propres données de réservation.
Puis-je ajouter des événements récurrents ou des rappels ?
Oui, dans le fichier .ics : une ligne RRULE pour les cours qui se répètent et un bloc VALARM pour un rappel. L'affichage du rappel dépend de l'app de calendrier de l'utilisateur ; pour des rappels que vous maîtrisez, utilisez les notifications push.
Comment générer le fichier .ics pour mon app ChatGPT & Codex ?
Une petite route serveur construit le texte. Pour un seul événement, aucune bibliothèque n'est nécessaire, mais ical-generator (Node) ou icalendar (Python) aide pour les événements récurrents et l'échappement. Demandez à ChatGPT & Codex un endpoint qui renvoie du text/calendar pour un token de réservation.
Les liens de calendrier fonctionnent-ils aussi dans le navigateur ?
Oui. La même URL .ics télécharge ou ouvre l'événement dans les navigateurs de bureau et mobiles : un seul bouton sert le site web et les deux apps.
Trois façons de mettre votre app dans les stores
Même résultat, charge de travail différente de votre côté. Les trois formules incluent la garantie d'approbation et le support humain 24/7.
Faites-le vous-même
$109 par plateforme, paiement unique
La licence WebViewGold : un projet Xcode ou Android Studio prêt à l'emploi. Collez votre URL, définissez le nom et l'icône, activez les fonctionnalités, compilez et soumettez. Mises à jour gratuites à vie.
Ni Mac, ni Xcode, ni Android Studio : configurez dans le navigateur, nous compilons les deux apps dans le cloud et les transmettons à App Store Connect et à la Play Console.
Envoyez-nous votre URL et votre icône. Notre équipe configure, compile et livre votre app sous 72 heures, en marque blanche, projets sources inclus. Les deux plateformes pour $1,158.
Les remboursements sont accordés aux conditions indiquées dans notre FAQ : un refus non lié au contenu par Apple et/ou Google, demandé dans les 14 jours suivant l'achat.