Development #53856
exposer des statistiques /api/statistics/ (pour débuter SMS)
0%
Description
Avoir /api/statistics/... pour consommation par les cellules combo, il y aurait itération sur les connecteurs pour voir les données à exposer, ça pourrait démarrer concrètement par une information sur la consommation SMS.
Fichiers
Révisions associées
Historique
Mis à jour par Valentin Deniaud il y a presque 3 ans
- Patch proposed changé de Non à Oui
- Fichier 0001-api-add-sms-count-statistics-53856.patch 0001-api-add-sms-count-statistics-53856.patch ajouté
- Statut changé de Nouveau à Solution proposée
API sans authent et sans introduire de dépendance à DRF : je peux ajouter l'un, l'autre ou les deux si nécessaire.
Mis à jour par Frédéric Péters il y a presque 3 ans
Ok la dépendance DRF c'est comme tu veux, elle est pratique parce qu'elle introduit justement l'authentification signature Publik, sans rien avoir de particulier à faire, mais on pourrait tout aussi bien se baser sur les permissions d'accès au connecteur.
Sur le code, j'imaginais quelque chose où un connecteur pouvait fournir des statistiques, plutôt qu'hardcoder ainsi, i.e.
class StatisticsListView(View): def get(self, request, *args, **kwargs): sources = [] for app in get_all_apps(): for connector in app.objects.all(): if not getattr(connector, 'get_statistics_entries'): continue sources.extend(connector.get_statistics_entries()) return JsonResponse({'data': sources})
et un
url(r'^(?P<connector>[\w,-]+)/(?P<slug>[\w,-]+)/statistics/(?P<kind_of_stats>[\w,-]+)$', GenericConnectorStatiticsView.as_view())
et cette vue instancierait le connecteur en question, et y appelerait une méthode get_statistics(self, request, kind_of_stats)
.
i.e. rien de spécifique SMS, les stats SMS étant "juste" le premier utilisateur de l'API générique.
Mis à jour par Valentin Deniaud il y a presque 3 ans
Dans ce cas particulier des SMS la question se pose tout de même d'avoir ce truc global, ~100% du temps il n'y a qu'un seul connecteur SMS utilisé à la fois, et si il y a changement de fournisseur SMS (mettons passage d'Orange à OVH) le besoin va être d'avoir des stats continues.
Et si un connecteur est supprimé/recréé/changement de slug on perd l'accès aux anciennes stats.
Mis à jour par Valentin Deniaud il y a presque 3 ans
- Fichier 0001-api-add-sms-count-statistics-53856.patch 0001-api-add-sms-count-statistics-53856.patch ajouté
Revoici avec généricité et un accès restreint aux appels signés ou aux superusers.
Mis à jour par Frédéric Péters il y a presque 3 ans
Je ferais bien s/get_api_urls/get_statistics_urls/, histoire d'éviter des confusions et détournements. (C'est mon seul commentaire.)
Mis à jour par Valentin Deniaud il y a presque 3 ans
- Fichier 0001-api-add-sms-count-statistics-53856.patch 0001-api-add-sms-count-statistics-53856.patch ajouté
sed appliqué
Mis à jour par Frédéric Péters il y a presque 3 ans
- Statut changé de Solution proposée à Solution validée
Mis à jour par Frédéric Péters il y a presque 3 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit c4c1312ae25e80c72b9f75952d3b208e376cee97 Author: Valentin Deniaud <vdeniaud@entrouvert.com> Date: Mon May 10 15:40:16 2021 +0200 api: add sms count statistics (#53856)
Mis à jour par Frédéric Péters il y a presque 3 ans
- Statut changé de Résolu (à déployer) à Solution déployée
api: add sms count statistics (#53856)