Fonctions pour envoyer et modifier des messages
Comment envoyer des messages à l’aide d’un compte Telegram Business
tg_send_message(platform_id, text,client_message_id, reply_markup, parse_mode, disable_web_page_preview, protect_content, disable_notification, message_thread_id, entities)
Paramètres :
! platform_id
ID utilisateur Telegram auquel un message doit être envoyé *
! text
Texte du message
client_message_id
ID du message à citer
reply_markup
Paramètres du bouton **
parse_mode
Mise en forme du texte en gras et en italique dans la description ***. Il peut avoir des valeurs telles que html, markdown, markdownV2.
disable_web_page_preview
Afficher l’aperçu du lien. Pour le désactiver, passez 1 ; sinon, passez 0 ou laissez-le vide "".
protect_content
Indicateur de protection du contenu. Passez une valeur différente de 0, False ou '' pour activer.
disable_notification
Indicateur de notification sonore (par défaut : 0). Passez 1 pour désactiver la notification, 0 pour l’activer.
message_thread_id
ID du sujet (disponible pour les supergroupes avec la fonctionnalité forum activée)
entities
Cela vous permet de copier un texte préformaté avec tous ses styles et de simplement spécifier la plage de caractères où une police particulière doit être appliquée. Un exemple peut être trouvé dans le tg_request sous le champ correspondant. Le paramètre doit être un dictionnaire. Voir l’onglet d’exemple pour référence.
Exemple détaillé
Prenons un exemple simple avec un ensemble de paramètres requis :

Le platform_id spécifie l’identifiant d’un client particulier.
Voir le même exemple, mais en utilisant des variables :

Dans cet exemple, la variable soob contiendra la réponse du serveur après l’envoi d’un message.

Si vous enregistrez le message_id de la réponse reçue, cela vous permettra ensuite de travailler avec ce message (modifier, supprimer, transférer, commenter).
Des difficultés surviennent souvent lors de l’utilisation de tous les paramètres. Examinons l’exemple suivant :
Tout d’abord, déclarez tous les paramètres utilisés dans la fonction. N’oubliez pas que les paramètres peuvent être transmis non seulement comme valeurs, mais aussi comme variables, ce qui est souvent plus pratique et plus clair. Des variables telles que platform_id et client_message_id peuvent être obtenues à partir de la fiche de profil du client. platform_id — ID du client Telegram auquel le message doit être envoyé * >Nous répondrons dans le même chat où le client écrit
text - texte du message. >Nous utilisons une mise en forme du texte - par exemple, une mise en gras.
client_message_id - ID du message à citer >Dans les chats, cette variable reçoit automatiquement sa valeur. reply_markup — paramètres des boutons **. >Attribuons-la à la variable opts. parse_mode — Mise en forme du texte en gras et en italique dans la description ***. Il peut avoir des valeurs telles que html, markdown, markdownV2. Les caractères utilisés pour la mise en forme du texte du message sont décrits ici. >Utilisons markdown. disable_web_page_preview - Afficher l’aperçu du lien. Pour le désactiver, passez 1 ; sinon, passez 0 ou laissez-le vide "". >Nous pouvons passer n’importe quelle valeur puisque le texte du message ne contient pas de lien. protect_content — Indicateur de protection du contenu. Passez une valeur différente de 0, False ou '' pour activer. >Nous n’avons pas besoin de protection du contenu, donc nous passerons une chaîne vide ''. disable_notification — Indicateur de notification sonore (par défaut : 0). Passez 1 pour désactiver la notification, 0 pour l’activer. >Une notification est une fenêtre contextuelle affichant le texte du message. Activons-la.
Ensuite, nous assemblons la fonction. N’oubliez pas d’assigner la fonction à une variable — cela vous permettra de suivre l’état de l’envoi du message.

Voici ce que nous avons obtenu : Après que le client nous a envoyé le mot-clé test, nous répondons en citant son message.
Dans 'ok' nous voyons l’état de l’envoi ; ensuite viennent les informations sur le message lui-même — son ID, les données de l’expéditeur et son contenu.
Exemple avec le entities paramètre Vous pouvez stocker la chaîne d’origine dans une variable, comme indiqué ci-dessous :
text = "qwert asdfg zxcvb poiuy lkjhg 12345"
Vous devez écrire le paramètre sous forme de dictionnaire avec les données et spécifier le format souhaité en indiquant les polices :
entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":" https://mavibot.ai"},{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]
Passez le paramètre en dernier dans la fonction que vous utilisez. Le paramètre peut être transmis aux fonctions tg_send_message et tg_send_message_1 :
x = tg_send_message(platform_id, text, None, None, None, False, False, False, None, entities)
Pour attribuer du texte avec des retours à la ligne à une variable, spécifiez la valeur comme suit :
text = "Première ligne de texte" + "\n" + "Deuxième ligne de texte" + "\n" + "Troisième ligne"
Comment envoyer un message en spécifiant un bot Telegram particulier
tg_send_message_1(token, platform_id, text, client_message_id, reply_markup, parse_mode, disable_web_page_preview, protect_content, disable_notification, message_thread_id, entities, business_connection_id)
! token
Jeton du bot Telegram obtenu via BotFather
! platform_id
ID utilisateur Telegram auquel un message doit être envoyé *
! text
Texte du message
client_message_id
ID du message à citer
reply_markup
Paramètres du bouton **
parse_mode
Mise en forme du texte en gras et en italique dans la description ***. Il peut avoir des valeurs telles que html, markdown, markdownV2.
disable_web_page_preview
Afficher l’aperçu du lien. Pour le désactiver, passez 1 ; sinon, passez 0 ou laissez-le vide "".
protect_content
Indicateur de protection du contenu. Passez une valeur différente de 0, False ou '' pour activer.
disable_notification
Indicateur de notification sonore (par défaut : 0). Passez 1 pour désactiver la notification, 0 pour l’activer.
message_thread_id
ID du sujet (disponible pour les supergroupes avec la fonctionnalité forum activée)
entities
Cela vous permet de copier un texte préformaté avec tous ses styles et de simplement spécifier la plage de caractères où une police particulière doit être appliquée. Un exemple peut être trouvé dans le tg_request sous le champ correspondant. Le paramètre doit être un dictionnaire.
business_connection_id
Le ID Business la valeur est utilisée lors de la connexion du bot et affichée dans les canaux. Elle doit être fournie si un jeton de bot est inclus dans les paramètres et que le message doit être envoyé via un compte utilisateur lié au bot.
Exemple
Exemple de passage du paramètre :
entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":"https://mavibot.ai"},{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]
L’exemple montre uniquement le dictionnaire, tandis que le texte du message lui-même est attribué à une variable séparée.
Comment modifier le texte d’un message Telegram
Veuillez noter !
La fonction de modification d’un message n’est disponible que pour les messages nouveaux et récemment envoyés.
La fenêtre de temps pendant laquelle la modification du message est autorisée est déterminée par le messager lui-même et dépend de la charge/activité de votre bot ; elle peut être réduite pour l’édition.
Selon le support technique du messager, la durée optimale pour modifier un message est de 48 heures.
tg_edit_message_text(platform_id, message_id, text, reply_markup, parse_mode, disable_web_page_preview, entities)
! platform_id
ID utilisateur Telegram auquel un message doit être envoyé *
! message_id
ID du message à modifier. Cet ID doit avoir été enregistré au préalable lors de l’envoi du message.
! text
Texte du message
reply_markup
Paramètres du bouton **
parse_mode
Mise en forme du texte en gras et en italique dans la description ***. Il peut avoir des valeurs telles que html, markdown, markdownV2.
disable_web_page_preview
Afficher l’aperçu du lien. Pour le désactiver, passez 1 ; sinon, passez 0 ou laissez-le vide "".
entities
Cela vous permet de copier un texte préformaté avec tous ses styles et de simplement spécifier la plage de caractères où une police particulière doit être appliquée. Un exemple peut être trouvé dans le tg_request sous le champ correspondant. Le paramètre doit être un dictionnaire.
Comment envoyer une réaction à un message
tg_set_reaction(platform_id, message_id, reaction)
! platform_id
ID du chat Telegram
! message_id
ID du message
! réaction
La réaction requise est transmise sous forme de chaîne.
Exemple
Exemple de code à copier :
react = tg_set_reaction(platform_id, 1556, '👌')
Exemple dans le calculateur :

Comment modifier la description d’une pièce jointe
tg_edit_message_caption(platform_id, message_id, caption, reply_markup, parse_mode, entities, show_caption_above_media)
! platform_id
ID utilisateur Telegram auquel un message doit être envoyé *
! message_id
ID du message à modifier
! caption
Texte de la description
reply_markup
Paramètres du bouton **
parse_mode
Mise en forme du texte en gras et en italique dans la description ***. Il peut avoir des valeurs telles que html, markdown, markdownV2.
entities
Cela vous permet de copier un texte préformaté avec tous ses styles et de simplement spécifier la plage de caractères où une police particulière doit être appliquée. Un exemple peut être trouvé dans le tg_request sous le champ correspondant. Le paramètre doit être un dictionnaire.
Exemple de passage du paramètre :
entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":"https://,mavibot.ai"},{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]
L’exemple montre uniquement le dictionnaire, tandis que le texte du message lui-même est attribué à une variable séparée.
show_caption_above_media
Prend la valeur True ; si ce paramètre est spécifié, le texte du message s’affichera au-dessus de la pièce jointe.
Comment modifier les pièces jointes multimédias dans un message
! platform_id
ID utilisateur Telegram auquel un message doit être envoyé *
! message_id
ID du message à modifier. Cet ID doit avoir été enregistré au préalable lors de l’envoi du message.
! media
Un dictionnaire décrivant le fichier multimédia :
Exemple de dictionnaire JSON pour remplacer une photo envoyée précédemment :
media = '{"type": "photo", "media": "<file_to_send>"}'
où <file_to_send> est recommandé d’être le file_id obtenu via le webhook Telegram.
Pour plus de détails, les paramètres du dictionnaire sont décrits dans la documentation Telegram officielle.
reply_markup
Paramètres du bouton **
Comment modifier un clavier inline dans un message
Vous ne pouvez modifier qu’un clavier inline.
Exemple : modification de message avec l’API Telegram
Vous trouverez ci-dessous un exemple détaillé de travail avec les fonctions de l’API Telegram pour la modification des messages.
Comment copier un message
tg_copy_message(platform_id, from_chat_id, message_id, reply_to_message_id, reply_markup, parse_mode, protect_content, disable_notification, caption, message_thread_id, entities, show_caption_above_media)
! platform_id
ID utilisateur Telegram VERS lequel un message doit être copié *
! from_chat_id
ID utilisateur Telegram DEPUIS lequel un message doit être copié *
! message_id
ID du message à copier
reply_to_message_id
ID du message original si le message copié est un commentaire
reply_markup
Paramètres du bouton **
parse_mode
Mise en forme du texte en gras et en italique dans la description ***.
Il peut avoir des valeurs telles que html, markdown, markdownV2.
protect_content
Indicateur de protection du contenu. Passez une valeur différente de 0, False ou '' pour activer.
disable_notification
Indicateur de notification sonore (par défaut : 0). Passez 1 pour désactiver la notification, 0 pour l’activer.
caption -
Description jusqu’à 1024 caractères.
message_thread_id
ID du sujet (disponible pour les supergroupes avec la fonctionnalité forum activée)
entities
Cela vous permet de copier un texte préformaté avec tous ses styles et de simplement spécifier la plage de caractères où une police particulière doit être appliquée. Un exemple peut être trouvé dans le tg_request sous le champ correspondant. Le paramètre doit être un dictionnaire.
Exemple de passage du paramètre :
entities = [{"offset":0,"length":5,"type":"bold"},{"offset":6,"length":4,"type":"text_link","url":"https://mavibot.ai"},{"offset":11,"length":9,"type":"strikethrough"},{"offset":21,"length":6,"type":"spoiler"},{"offset":29,"length":12,"type":"code"}]
L’exemple montre uniquement le dictionnaire, tandis que le texte du message lui-même est attribué à une variable séparée.
show_caption_above_media
Prend la valeur True ; si ce paramètre est spécifié, le texte du message s’affichera au-dessus de la pièce jointe.
Comment transférer un message
tg_forward_message(platform_id, from_chat_id, message_id, protect_content, disable_notification, message_thread_id)
! platform_id
ID utilisateur Telegram VERS lequel un message doit être envoyé *
! from_chat_id
ID utilisateur Telegram DEPUIS lequel un message doit être envoyé *
! message_id
ID du message à transférer
protect_content
Indicateur de protection du contenu. Passez une valeur différente de 0, False ou '' pour activer.
disable_notification
Indicateur de notification sonore (par défaut : 0). Passez 1 pour désactiver la notification, 0 pour l’activer.
message_thread_id
ID du sujet (disponible pour les supergroupes avec la fonctionnalité forum activée)
Comment supprimer un message
tg_delete_message(platform_id, message_id)
! Utilisez cette méthode pour supprimer un message, y compris les messages de service, avec les restrictions suivantes :
Un message ne peut être supprimé que s’il a été envoyé il y a moins de 48 heures.
Les messages avec dés dans un chat privé ne peuvent être supprimés que s’ils ont été envoyés il y a plus de 24 heures.
Les bots peuvent supprimer les messages sortants dans les chats privés, les groupes et les supergroupes.
Les bots peuvent supprimer les messages entrants dans les chats privés.
Les bots disposant de l’autorisation can_post_messages peuvent supprimer les messages sortants dans les canaux.
Si un bot est administrateur d’un groupe, il peut y supprimer n’importe quel message.
Si un bot dispose de l’autorisation can_delete_messages dans un supergroupe ou un canal, il peut y supprimer n’importe quel message.
! platform_id
ID utilisateur Telegram *
! message_id
ID du message à supprimer
Comment supprimer plusieurs messages
tg_delete_messages(platform_id, message_ids)
! Utilisez cette méthode pour supprimer un message, y compris les messages de service, avec les restrictions suivantes :
Un message ne peut être supprimé que s’il a été envoyé il y a moins de 48 heures.
Les messages avec dés dans un chat privé ne peuvent être supprimés que s’ils ont été envoyés il y a plus de 24 heures.
Les bots peuvent supprimer les messages sortants dans les chats privés, les groupes et les supergroupes.
Les bots peuvent supprimer les messages entrants dans les chats privés.
Les bots disposant de l’autorisation can_post_messages peuvent supprimer les messages sortants dans les canaux.
Si un bot est administrateur d’un groupe, il peut y supprimer n’importe quel message.
Si un bot dispose de l’autorisation can_delete_messages dans un supergroupe ou un canal, il peut y supprimer n’importe quel message.
! platform_id
ID utilisateur Telegram
! message_ids
Un tableau d’IDs de messages à supprimer. Maximum de 100 éléments.
Exemple : envoi de message avec l’API Telegram
Exemple : modification de message avec l’API Telegram
Exemple de configuration
Alors, envoyons-nous un message avec un clavier inline :

Ensuite, modifiez le texte du message :

Et modifiez les boutons :

Essayons de modifier un message avec une image. Pour cela, envoyez un message avec une image et enregistrez l’ID du message envoyé. Lisez les instructions détaillées sur la façon d’obtenir l’URL de l’image ici:

Maintenant, modifions l’image et sa description :

Exemple : copie de message avec l’API Telegram
Mis à jour

