Automatisation Telegram avec n8n : envoi de notifications programmées
Ce workflow n8n a pour objectif d'automatiser l'envoi de notifications sur Telegram à des moments précis, facilitant ainsi la communication au sein des équipes ou avec des clients. Dans un contexte où la réactivité est cruciale, cette automatisation permet de s'assurer que les messages importants sont envoyés sans intervention manuelle, réduisant ainsi les risques d'oubli et améliorant la productivité. Le premier déclencheur est un Cron, qui permet de programmer l'exécution du workflow à des intervalles définis. Ensuite, le flux commence par un nœud 'On clicking execute' pour initier le processus manuellement si nécessaire. Le workflow utilise un nœud 'HTTP Request' pour récupérer des données d'une API, suivi d'un traitement des données binaires avec les nœuds 'Binary to json' et 'Json to binary' pour assurer la bonne conversion des formats. Les messages sont ensuite préparés et envoyés via le nœud 'Telegram', où l'utilisateur peut spécifier le texte et l'identifiant du chat. Enfin, un nœud 'Set new update time' permet de mettre à jour les horaires d'envoi, garantissant ainsi que les notifications sont toujours à jour. Cette automatisation n8n offre un gain de temps considérable et améliore la communication, ce qui est essentiel pour toute organisation cherchant à optimiser ses processus.
Workflow n8n Telegram, communication, notifications : vue d'ensemble
Schéma des nœuds et connexions de ce workflow n8n, généré à partir du JSON n8n.
Workflow n8n Telegram, communication, notifications : détail des nœuds
Inscris-toi pour voir l'intégralité du workflow
Inscription gratuite
S'inscrire gratuitementBesoin d'aide ?{
"nodes": [
{
"name": "On clicking 'execute'",
"type": "n8n-nodes-base.manualTrigger",
"position": [
340,
380
],
"parameters": {},
"typeVersion": 1
},
{
"name": "Write Binary File",
"type": "n8n-nodes-base.writeBinaryFile",
"position": [
1680,
280
],
"parameters": {
"fileName": "={{$node[\"Config\"].parameter[\"values\"][\"string\"][0][\"value\"]}}"
},
"typeVersion": 1
},
{
"name": "Read Binary File",
"type": "n8n-nodes-base.readBinaryFile",
"position": [
580,
460
],
"parameters": {
"filePath": "={{$node[\"Config\"].parameter[\"values\"][\"string\"][0][\"value\"]}}"
},
"typeVersion": 1,
"continueOnFail": true,
"alwaysOutputData": true
},
{
"name": "HTTP Request",
"type": "n8n-nodes-base.httpRequest",
"position": [
1020,
460
],
"parameters": {
"url": "https://readwise.io/reader/api/state/",
"options": {},
"authentication": "headerAuth",
"queryParametersUi": {
"parameter": [
{
"name": "schemaVersion",
"value": "5"
},
{
"name": "filter[updated_at][gt]",
"value": "={{$json[\"last_synced\"]}}"
}
]
},
"headerParametersUi": {
"parameter": []
}
},
"credentials": {
"httpHeaderAuth": {
"id": "10",
"name": "Header Auth account"
}
},
"typeVersion": 1
},
{
"name": "Telegram",
"type": "n8n-nodes-base.telegram",
"position": [
1480,
460
],
"parameters": {
"text": "={{$json[\"title\"]}} by {{$json[\"author\"]}}\n\n{{$json[\"summary\"]}}\n\n{{$json[\"url\"]}}",
"chatId": "={{$node[\"Config\"].parameter[\"values\"][\"number\"][0][\"value\"]}}",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "2",
"name": "my bot"
}
},
"typeVersion": 1
},
{
"name": "Binary to json",
"type": "n8n-nodes-base.moveBinaryData",
"position": [
800,
460
],
"parameters": {
"options": {}
},
"typeVersion": 1,
"alwaysOutputData": true
},
{
"name": "Json to binary",
"type": "n8n-nodes-base.moveBinaryData",
"position": [
1480,
280
],
"parameters": {
"mode": "jsonToBinary",
"options": {}
},
"typeVersion": 1
},
{
"name": "Set new update time",
"type": "n8n-nodes-base.functionItem",
"position": [
1280,
280
],
"parameters": {
"functionCode": "return {\n last_synced: new Date().getTime()\n};"
},
"typeVersion": 1
},
{
"name": "Split into baches",
"type": "n8n-nodes-base.function",
"position": [
1280,
460
],
"parameters": {
"functionCode": "const newValue = Object.values(items[0].json.documents).filter(it => it.category === 'article').filter(it => it.children.length === 0).map(it => ({\n json: {\n url: it.url,\n title: it.title,\n author: it.author,\n summary: it.summary,\n saved_at: new Date(it.saved_at),\n }\n}))\n\n\nreturn newValue;"
},
"typeVersion": 1
},
{
"name": "Cron",
"type": "n8n-nodes-base.cron",
"position": [
340,
540
],
"parameters": {
"triggerTimes": {
"item": [
{
"mode": "everyX",
"unit": "minutes",
"value": 10
}
]
}
},
"typeVersion": 1
},
{
"name": "Config",
"type": "n8n-nodes-base.set",
"position": [
800,
300
],
"parameters": {
"values": {
"number": [
{
"name": "Telegram chat it",
"value": 19999
}
],
"string": [
{
"name": "file path",
"value": "/whatever/readwiseLastSynced.json"
}
]
},
"options": {}
},
"typeVersion": 1
}
],
"connections": {
"Cron": {
"main": [
[
{
"node": "Read Binary File",
"type": "main",
"index": 0
}
]
]
},
"HTTP Request": {
"main": [
[
{
"node": "Split into baches",
"type": "main",
"index": 0
},
{
"node": "Set new update time",
"type": "main",
"index": 0
}
]
]
},
"Binary to json": {
"main": [
[
{
"node": "HTTP Request",
"type": "main",
"index": 0
}
]
]
},
"Json to binary": {
"main": [
[
{
"node": "Write Binary File",
"type": "main",
"index": 0
}
]
]
},
"Read Binary File": {
"main": [
[
{
"node": "Binary to json",
"type": "main",
"index": 0
}
]
]
},
"Split into baches": {
"main": [
[
{
"node": "Telegram",
"type": "main",
"index": 0
}
]
]
},
"Set new update time": {
"main": [
[
{
"node": "Json to binary",
"type": "main",
"index": 0
}
]
]
},
"On clicking 'execute'": {
"main": [
[
{
"node": "Read Binary File",
"type": "main",
"index": 0
}
]
]
}
}
}Workflow n8n Telegram, communication, notifications : pour qui est ce workflow ?
Ce workflow s'adresse aux entreprises de toutes tailles souhaitant améliorer leur communication interne ou externe via Telegram. Il est particulièrement utile pour les équipes marketing, les gestionnaires de projet et toute organisation ayant besoin d'envoyer des notifications régulières. Un niveau technique intermédiaire est recommandé pour la personnalisation.
Workflow n8n Telegram, communication, notifications : problème résolu
Ce workflow résout le problème de la gestion manuelle des notifications sur Telegram, qui peut entraîner des oublis ou des retards dans la communication. En automatisant ce processus, les utilisateurs éliminent les frustrations liées à l'envoi de messages à des moments critiques, réduisant ainsi le risque de manquer des opportunités de communication. Après mise en place, les utilisateurs peuvent s'attendre à une amélioration significative de la réactivité et de l'efficacité de leurs échanges.
Workflow n8n Telegram, communication, notifications : étapes du workflow
Étape 1 : Le workflow est déclenché par un Cron, qui définit les moments d'exécution.
- Étape 1 : Un nœud 'On clicking execute' permet de lancer le processus manuellement si besoin.
- Étape 2 : Le nœud 'HTTP Request' récupère les données nécessaires depuis une API.
- Étape 3 : Les données sont traitées avec les nœuds 'Binary to json' et 'Json to binary' pour assurer leur formatage correct.
- Étape 4 : Le message est préparé et envoyé via le nœud 'Telegram', où l'utilisateur spécifie le texte et l'identifiant du chat.
- Étape 5 : Le nœud 'Set new update time' met à jour les horaires d'envoi pour garantir la pertinence des notifications.
Workflow n8n Telegram, communication, notifications : guide de personnalisation
Pour personnaliser ce workflow, commencez par ajuster le nœud 'Cron' afin de définir vos propres horaires d'envoi. Modifiez le nœud 'HTTP Request' pour pointer vers l'API de votre choix, en adaptant les paramètres d'authentification si nécessaire. Dans le nœud 'Telegram', vous pouvez changer le texte du message et l'identifiant du chat pour cibler le bon public. Si vous souhaitez ajouter d'autres outils, envisagez d'intégrer des nœuds supplémentaires pour enrichir les données avant l'envoi. Assurez-vous également de surveiller le flux pour détecter d'éventuelles erreurs et garantir un fonctionnement optimal.