fake-sms/README.md

2.4 KiB

📱 FakeSMS

Serveur d'envoi de SMS factice pour le développement avec interface web.

Utilisation

Avec Docker

docker run -it --rm -p 3000:3000 cadoles/fake-sms

L'interface Web sera accessible à l'adresse http://localhost:3000/.

Voir la section "Variables d'environnement" pour voir comment personnaliser la configuration du service.

Avec les binaires

TODO

Configuration

Le fichier de configuration de FakeSMTP est au format YAML.

Voici la structure du fichier par défaut:

# Configuration HTTP
http:
  address: :3000
  templateDir: template
  publicDir: public
# Configuration du stockage
data:
  path: fakesms.db

# Confirguration du mock Powow
# Voir https://powow4.iroquois.fr/
powow:
  # Clé d'API à utiliser par les clients Powow utilisant le mock
  apiKey: powow

  # La création/mise à jour de modèles de SMS s'effectue via les méthodes TransactionalSMS.Create et TransactionalSMS.Update.
  # Voir le fichier ./misc/powow.http pour un exemple de requête.

Variables d'environnement

La configuration de FakeSMTP peut être personnalisée via des variables d'environnement.

Les valeurs des variables d'environnement surchargent les valeurs présentes dans le fichier de configuration.

Variable Correspondance dans le fichier de configuration
FAKESMS_HTTP_ADDRESS http.address
FAKESMS_HTTP_TEMPLATEDIR http.templateDir
FAKESMS_HTTP_PUBLICDIR http.publicDir
FAKESMS_POWOW_API_KEY powow.apiKey

Mocks

Iroquois/Powow

Un mock de l'API Powow est disponible via l'URL http://<fake_sms_host>/api/v1/mock/powow.

Les commandes suivantes sont implémentées:

Commande Documentation officiele Notes
TransactionalSms.Send https://powow4.iroquois.fr/user/docs/api/#send-transactional-sms La définition des modèles de SMS s'effectue via la configuration.

Un exemple d'appel à l'API est disponible dans le fichier misc/powow.http.

Démarrer avec les sources

Dépendances

  • Go 1.17
  • modd
  • make
  • NodeJS (20.x) / npm

Compiler et démarrer le serveur de développement

Dans un terminal:

npm install
make watch

FAQ

Générer une version de distribution

make release

Licence

AGPL-3.0