recherche
Maisondéveloppement back-endTutoriel PythonComment j'ai transformé la façon dont mon entreprise interagit avec les clients et collecte leurs données à l'aide de fonctionnalités de type formulaires WhatsApp

How I Transformed How My Business Interacts with and Collects Data from Customers Using WhatsApp Forms-like Features

Introduction

Avec plus de 2 milliards d'utilisateurs en ligne, WhatsApp a révolutionné la façon dont les entreprises gèrent et interagissent avec leurs clients.

Malgré les efforts, la plupart d'entre eux ont échoué en raison d'un flux de conversation long et fastidieux juste pour corriger certaines informations, limitant ainsi l'utilisateur à ses autres besoins.

Dans cet esprit, j'ai développé un outil appelé « Flux WhatsApp » qui utilise une fonctionnalité appelée « Flux WhatsApp » de Meta, qui permet aux entreprises d'intégrer/ajouter des formulaires tels que des éléments/composants interactifs dans leur flux de conversation, permettant ainsi entreprise pour collecter les informations souhaitées en envoyant uniquement un seul message à l'utilisateur.

Techniquement. . .

WhatsApp Flows est une bibliothèque Python conçue pour rationaliser la création, la gestion et le déploiement de flux de travail automatisés pour WhatsApp. Que vous créiez des chatbots interactifs, gériez la messagerie professionnelle ou orchestrais des flux de messages complexes, cette bibliothèque fournit une boîte à outils conviviale pour les développeurs pour une automatisation efficace de WhatsApp.

Pourquoi utiliser les flux WhatsApp ?

  • Facilité d'utilisation : simplifie les interactions avec l'API WhatsApp Business avec une abstraction de haut niveau.
  • Flexibilité : prend en charge la création de flux basés sur des points de terminaison et sans points de terminaison pour divers cas d'utilisation.
  • Évolutivité : gère de manière transparente les flux de travail complexes pour les entreprises de toutes tailles.
  • Prêt pour l'intégration : fonctionne sans effort avec les frameworks populaires tels que FastAPI et Flask.

Installation

Vous pouvez installer la bibliothèque en utilisant pip :

pip install whatsapp-flows

Guide des flux WhatsApp

Ce guide décrit les étapes pour créer et gérer des flux WhatsApp à l'aide de la plateforme Meta Developers. Il existe deux types de flux WhatsApp :

  1. Flux avec points de terminaison : Ces flux interagissent avec des API externes pour récupérer ou envoyer des données dynamiques.
  2. Flux sans points de terminaison : Ces flux fonctionnent indépendamment et ne nécessitent pas d'interactions API externes.

Dans ce guide, nous nous concentrerons sur la création d'une application de flux WhatsApp sans points de terminaison. Suivez les étapes ci-dessous pour configurer votre flux et le déployer avec succès.


Étapes pour créer une application WhatsApp Flow sans points de terminaison

1. Créez une application sur le compte Meta Developers

Pour commencer, créez une application sur la plateforme Meta Developers. Cette application servira de base à la gestion de vos flux WhatsApp.


2. Ajouter un numéro de téléphone

Ajoutez un numéro de téléphone à votre application. Ce numéro sera associé à votre compte WhatsApp Business et utilisé pour envoyer et recevoir des messages.


3. Activer les autorisations de messagerie

Assurez-vous que votre application dispose des autorisations de messagerie nécessaires pour interagir avec les fonctionnalités de messagerie WhatsApp.


4. Créer une entreprise sur un compte Meta Business

Créez un compte professionnel sur Meta Business. Cela relie votre WhatsApp Business à votre application Meta Developers.


5. Vérifiez votre entreprise

Terminez le processus de vérification de votre entreprise pour accéder à des fonctionnalités et autorisations supplémentaires.


6. Demander des autorisations avancées

Demandez les autorisations avancées suivantes pour votre application Meta Developers :

  • whatsapp_business_management : gérer les comptes WhatsApp Business, y compris la création de flux.
  • whatsapp_business_messaging : envoyez et recevez des messages via l'API WhatsApp Business.
  • whatsapp_business_phone_number : accédez aux numéros de téléphone WhatsApp Business.
  • business_management : gérez les actifs de l'entreprise tels que les comptes et les pages publicitaires.
  • pages_messaging : facultatif si les flux interagissent avec les pages Facebook pour la messagerie.

7. Obtenez les informations d'identification nécessaires

Rassemblez les informations d'identification suivantes à partir de votre compte Meta Developers. Ceux-ci configureront vos flux WhatsApp :

pip install whatsapp-flows

8. Créer un flux sur Flow Development Playground

Concevez votre flux WhatsApp à l'aide de Flow Development Playground.

Pour créer un flux par programmation :

WHATSAPP_BUSINESS_VERIFY_TOKEN
WHATSAPP_BUSINESS_PHONE_NUMBER_ID
WHATSAPP_BUSINESS_ACCESS_TOKEN
WHATSAPP_BUSINESS_ACCOUNT_ID

9. Déployer le middleware/Webhook

Déployez le middleware ou le webhook pour gérer l'exécution du flux.


10. Configurez l'URL du Webhook

Configurez l'URL du webhook dans votre compte Meta Developers. Cela relie votre flux à la messagerie WhatsApp.


11. Créer et gérer des flux

Flux de liste :

from whatsapp_flows import FlowsManager
import os
from dotenv import load_dotenv

load_dotenv()

flows_manager = FlowsManager(
    whatsapp_access_token=os.getenv("WHATSAPP_BUSINESS_ACCESS_TOKEN"),
    whatsapp_account_id=os.getenv("WHATSAPP_BUSINESS_ACCOUNT_ID"),
    whatsapp_phone_number_id=os.getenv("WHATSAPP_BUSINESS_PHONE_NUMBER_ID"),
)

try:
    response = flows_manager.create_flow(flow_name="TEST FLOW")
    print(response)
except Exception as e:
    print(e)

Obtenir les détails du flux :

try:
    response = flows_manager.list_flows()
    print(response)
except Exception as e:
    print(e)

12. Téléchargez votre flux JSON

Téléchargez votre flux JSON à l'aide de Flow Development Playground ou par programmation :

try:
    response = flows_manager.get_flow_details(flow_id="1234567890")
    print(response)
except Exception as e:
    print(e)

13. Testez votre flux

Testez votre flux par programmation :

SYSTEM_PATH = os.getcwd()
FLOW_JSON_FILE_PATH = os.path.join(SYSTEM_PATH, "data/flow.json")

try:
    response = flows_manager.upload_flow_json(
        flow_id="1234567890", flow_file_path=FLOW_JSON_FILE_PATH
    )
    print(response)
except Exception as e:
    print(e)

14. Publiez votre flux

Publiez votre flux :

pip install whatsapp-flows

15. Envoi de flux publiés et non publiés

Envoyer un flux publié :

WHATSAPP_BUSINESS_VERIFY_TOKEN
WHATSAPP_BUSINESS_PHONE_NUMBER_ID
WHATSAPP_BUSINESS_ACCESS_TOKEN
WHATSAPP_BUSINESS_ACCOUNT_ID

Envoyer un flux non publié :

from whatsapp_flows import FlowsManager
import os
from dotenv import load_dotenv

load_dotenv()

flows_manager = FlowsManager(
    whatsapp_access_token=os.getenv("WHATSAPP_BUSINESS_ACCESS_TOKEN"),
    whatsapp_account_id=os.getenv("WHATSAPP_BUSINESS_ACCOUNT_ID"),
    whatsapp_phone_number_id=os.getenv("WHATSAPP_BUSINESS_PHONE_NUMBER_ID"),
)

try:
    response = flows_manager.create_flow(flow_name="TEST FLOW")
    print(response)
except Exception as e:
    print(e)

16. Mettre à jour ou supprimer des flux

Mettre à jour le flux JSON :

try:
    response = flows_manager.list_flows()
    print(response)
except Exception as e:
    print(e)

Supprimer un flux :

try:
    response = flows_manager.get_flow_details(flow_id="1234567890")
    print(response)
except Exception as e:
    print(e)

Conclusion

Si vous avez envie de contribuer, de demander une fonctionnalité ou de signaler un bug, n'hésitez pas à me consulter.

NB : Ceci est le lien vers le dépôt GitHub du projet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Comment le choix entre les listes et les tableaux a-t-il un impact sur les performances globales d'une application Python traitant de grands ensembles de données?Comment le choix entre les listes et les tableaux a-t-il un impact sur les performances globales d'une application Python traitant de grands ensembles de données?May 03, 2025 am 12:11 AM

ForhandlingLargedatasetSInpython, UsenumpyArraysforbetterperformance.1) NumpyArraysAremeMory-EfficientAndFasterFornumericalOperations.2) EvitUnneceSsaryTypeConversions.3) Le effet de levier

Expliquez comment la mémoire est allouée aux listes par rapport aux tableaux dans Python.Expliquez comment la mémoire est allouée aux listes par rapport aux tableaux dans Python.May 03, 2025 am 12:10 AM

Inpython, listSusedynamicMemoryallocation withover-allocation, whileLumpyArraySallocateFixedMemory.1) listsallocatemoreMoryThreededEdededInitialement, redimensipwenessary.2) NumpyArraySallocateExactMemoryForElements, offrantwectable usinessflexibilité.

Comment spécifiez-vous le type d'éléments de données dans un tableau Python?Comment spécifiez-vous le type d'éléments de données dans un tableau Python?May 03, 2025 am 12:06 AM

Inpython, YouCanscthedatatatypeyfelemememedenernSspant.1) usenpynernrump.1) usenpynerp.dloatp.ploatm64, formateur préséconstrolatatype.

Qu'est-ce que Numpy et pourquoi est-il important pour l'informatique numérique dans Python?Qu'est-ce que Numpy et pourquoi est-il important pour l'informatique numérique dans Python?May 03, 2025 am 12:03 AM

NumpyissentialFornumericalComputingInpythondutOtsSpeed, MemoryEfficiency et ComprehenSiveMathematicalFunctions.1) It'sfastBecauseitPerformSoperations INC.2) NumpyArraySareMoremory-EfficientThanpythonlists.3)

Discutez du concept de «l'allocation de la mémoire contigu» et de son importance pour les tableaux.Discutez du concept de «l'allocation de la mémoire contigu» et de son importance pour les tableaux.May 03, 2025 am 12:01 AM

ContigusMymoryallocationiscrucialforAraySBauseitallowsforefficient andfastelementAccess.1) iTenablesConstanttimeAccess, o (1), duetoDirectAddressCalculation.2) itimproveScacheefficiendyAllowingMultipleElementFetchesperCacheline.3) itsimplieniesMemorymorymorymorymorymory

Comment coupez-vous une liste de python?Comment coupez-vous une liste de python?May 02, 2025 am 12:14 AM

SlitingyPapyThonListIsDoneUsingTheSyntaxList [Démarrage: arrêt: étape] .He'showitworks: 1) startisheindexofthefirStelementoinclude.2) stopisTheIndexoftheFirstelementsoexclude.3) StepistheincrementBetweenselans.it'susefulfactingPortationSoListShsandCanusegeg

Quelles sont les opérations communes qui peuvent être effectuées sur des tableaux Numpy?Quelles sont les opérations communes qui peuvent être effectuées sur des tableaux Numpy?May 02, 2025 am 12:09 AM

NumpyAllowsForvariousOperations ONARRAYS: 1) BasicarithmeticLikeaddition, Soustraction, Multiplication, anddivision; 2) AdvancedOperationSuchasmatrixMultiplication; 3) Element-Wiseoperations withoutExplicitloop

Comment les tableaux sont-ils utilisés dans l'analyse des données avec Python?Comment les tableaux sont-ils utilisés dans l'analyse des données avec Python?May 02, 2025 am 12:09 AM

ArraySinpython, en particulier ThroughNumpyandPandas, aressentialfordataanalysis, offingspeeedAfficiency.1) numpyarrayablefficienthandlingoflargedatasetsandComplexOperationsLikEMoVingAverages.2)

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

mPDF

mPDF

mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) ​​et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

PhpStorm version Mac

PhpStorm version Mac

Le dernier (2018.2.1) outil de développement intégré PHP professionnel