<aside>
Périmètre choisi : Snapchat comme boîte de réception client pour un petit commerçant. Trois scripts forment une boucle complète : savoir qu'il y a quelque chose, voir qui attend, répondre.
</aside>
| Script | Type | Rôle |
|---|---|---|
@navinvenkatv/web.snapchat.com/list_conversations |
Lecture seule | Renvoie toutes les conversations chargées avec nom, statut, dernière activité, indicateur de non-lu et action disponible. N'ouvre jamais une conversation. |
@navinvenkatv/web.snapchat.com/get_unread_count |
Lecture seule | Renvoie le nombre de messages non lus depuis le badge de l'onglet. |
@navinvenkatv/web.snapchat.com/send_message |
Écriture | Envoie un message à une conversation existante. Correspondance exacte du nom, refus si aucune ou plusieurs correspondances, un seul destinataire par appel, mode dryRun, vérification de l'envoi. |
Un petit commerçant dont les clients le contactent sur Snapchat. Son problème n'est pas de publier : c'est de rater des messages et de répondre trop tard. Snapchat n'a pas d'API publique, donc tout se fait à la main.
J'ai exploré la version web avant de choisir. Une première exploration en lecture seule a conclu que la publication de Story n'existait pas, parce que le mot n'apparaît pas sur la page d'accueil. En vérifiant, j'ai découvert qu'elle existe, mais uniquement après avoir pris un Snap avec la caméra en direct. On ne peut donc pas y publier une image préparée, comme le menu du jour d'un commerçant. J'ai choisi la boîte de réception, qui correspond au vrai problème de mon utilisateur. Les trois scripts forment une boucle complète :
get_unread_countlist_conversationssend_messageJ'ai séparé lecture et écriture. Sur Snapchat, ouvrir un Snap le marque comme lu et l'expéditeur le voit : lire un message est donc une écriture cachée. list_conversations lit uniquement la liste et n'ouvre jamais rien.
list_conversations ne renvoie que les lignes chargées au départ, sans défiler.get_unread_count expire au lieu de renvoyer 0 (cas non testé).Un cron qui appelle get_unread_count toutes les quelques minutes et prévient le commerçant quand le chiffre monte.