Read the statement by Michael Teeuw here.
MMM-TelegramBot : Control MM on Telegram
-
This is a great module - I’m adding Telegram support to all my modules shortly :thumbs_up:
-
Hello,
can somebody help me with this module?
here is my config.js entry including the MMM-Tools. Tools are running very well.
{ module: 'MMM-Tools', position: 'bottom_right', config: { device : "RPI", // "RPI" is also available refresh_interval_ms : 10000, warning_interval_ms : 1000 * 60 * 5, enable_warning : true, warning : { CPU_TEMPERATURE : 65, GPU_TEMPERATURE : 65, CPU_USAGE : 75, STORAGE_USED_PERCENT : 80, MEMORY_USED_PERCENT : 80 }, warning_text: { CPU_TEMPERATURE : "The temperature of CPU is over %VAL%", GPU_TEMPERATURE : "The temperature of GPU is over %VAL%", CPU_USAGE : "The usage of CPU is over %VAL%", STORAGE_USED_PERCENT : "The storage is used over %VAL% percent", MEMORY_USED_PERCENT : "The memory is used over %VAL% percent", }, }, }, { module: 'MMM-TelegramBot', config: { telegramAPIKey : 'xxxxxxxxxxxxxxxmy_API_keyxxxxxxxxxxxxxxxxxxxx', allowedUser : ['my_Telegram_username without @'], // This is NOT the username of bot. }, },
The logs of MM2!
0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | chat_id: undefined, 0|mm | text: 'Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.' } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | chat_id: undefined, 0|mm | text: 'Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.' } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","text":"`ERROR`\\n```\\nBad Request: chat_id is empty\\n```\\nat\\n```\\n{\\"type\\":\\"TEXT\\",\\"chat_id\\":null,\\"text\\":\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\"}\\n```","option":{"disable_notification":false,"parse_mode":"Markdown","chat_id":"","text":"`ERROR`\\n```\\nBad Request: chat_id is empty\\n```\\nat\\n```\\n{\\"type\\":\\"TEXT\\",\\"chat_id\\":null,\\"text\\":\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\"}\\n```"}}\n```', 0|mm | option: 0|mm | { disable_notification: false, 0|mm | parse_mode: 'Markdown', 0|mm | chat_id: '', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","text":"`ERROR`\\n```\\nBad Request: chat_id is empty\\n```\\nat\\n```\\n{\\"type\\":\\"TEXT\\",\\"chat_id\\":null,\\"text\\":\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\"}\\n```","option":{"disable_notification":false,"parse_mode":"Markdown","chat_id":"","text":"`ERROR`\\n```\\nBad Request: chat_id is empty\\n```\\nat\\n```\\n{\\"type\\":\\"TEXT\\",\\"chat_id\\":null,\\"text\\":\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\"}\\n```"}}\n```' } } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | chat_id: undefined, 0|mm | text: 'Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.' } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","chat_id":null,"text":"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren."}\n```', 0|mm | option: 0|mm | { disable_notification: false, 0|mm | parse_mode: 'Markdown', 0|mm | chat_id: '', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","chat_id":null,"text":"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren."}\n```' } } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | chat_id: undefined, 0|mm | text: 'Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.' } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","text":"`ERROR`\\n```\\nBad Request: chat_id is empty\\n```\\nat\\n```\\n{\\"type\\":\\"TEXT\\",\\"text\\":\\"`ERROR`\\\\n```\\\\nBad Request: chat_id is empty\\\\n```\\\\nat\\\\n```\\\\n{\\\\\\"type\\\\\\":\\\\\\"TEXT\\\\\\",\\\\\\"chat_id\\\\\\":null,\\\\\\"text\\\\\\":\\\\\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\\\\\"}\\\\n```\\",\\"option\\":{\\"disable_notification\\":false,\\"parse_mode\\":\\"Markdown\\",\\"chat_id\\":\\"\\",\\"text\\":\\"`ERROR`\\\\n```\\\\nBad Request: chat_id is empty\\\\n```\\\\nat\\\\n```\\\\n{\\\\\\"type\\\\\\":\\\\\\"TEXT\\\\\\",\\\\\\"chat_id\\\\\\":null,\\\\\\"text\\\\\\":\\\\\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\\\\\"}\\\\n```\\"}}\\n```","option":{"disable_notification":false,"parse_mode":"Markdown","chat_id":"","text":"`ERROR`\\n```\\nBad Request: chat_id is empty\\n```\\nat\\n```\\n{\\"type\\":\\"TEXT\\",\\"text\\":\\"`ERROR`\\\\n```\\\\nBad Request: chat_id is empty\\\\n```\\\\nat\\\\n```\\\\n{\\\\\\"type\\\\\\":\\\\\\"TEXT\\\\\\",\\\\\\"chat_id\\\\\\":null,\\\\\\"text\\\\\\":\\\\\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\\\\\"}\\\\n```\\",\\"option\\":{\\"disable_notification\\":false,\\"parse_mode\\":\\"Markdown\\",\\"chat_id\\":\\"\\",\\"text\\":\\"`ERROR`\\\\n```\\\\nBad Request: chat_id is empty\\\\n```\\\\nat\\\\n```\\\\n{\\\\\\"type\\\\\\":\\\\\\"TEXT\\\\\\",\\\\\\"chat_id\\\\\\":null,\\\\\\"text\\\\\\":\\\\\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\\\\\"}\\\\n```\\"}}\\n```"}}\n```', 0|mm | option: 0|mm | { disable_notification: false, 0|mm | parse_mode: 'Markdown', 0|mm | chat_id: '', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","text":"`ERROR`\\n```\\nBad Request: chat_id is empty\\n```\\nat\\n```\\n{\\"type\\":\\"TEXT\\",\\"text\\":\\"`ERROR`\\\\n```\\\\nBad Request: chat_id is empty\\\\n```\\\\nat\\\\n```\\\\n{\\\\\\"type\\\\\\":\\\\\\"TEXT\\\\\\",\\\\\\"chat_id\\\\\\":null,\\\\\\"text\\\\\\":\\\\\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\\\\\"}\\\\n```\\",\\"option\\":{\\"disable_notification\\":false,\\"parse_mode\\":\\"Markdown\\",\\"chat_id\\":\\"\\",\\"text\\":\\"`ERROR`\\\\n```\\\\nBad Request: chat_id is empty\\\\n```\\\\nat\\\\n```\\\\n{\\\\\\"type\\\\\\":\\\\\\"TEXT\\\\\\",\\\\\\"chat_id\\\\\\":null,\\\\\\"text\\\\\\":\\\\\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\\\\\"}\\\\n```\\"}}\\n```","option":{"disable_notification":false,"parse_mode":"Markdown","chat_id":"","text":"`ERROR`\\n```\\nBad Request: chat_id is empty\\n```\\nat\\n```\\n{\\"type\\":\\"TEXT\\",\\"text\\":\\"`ERROR`\\\\n```\\\\nBad Request: chat_id is empty\\\\n```\\\\nat\\\\n```\\\\n{\\\\\\"type\\\\\\":\\\\\\"TEXT\\\\\\",\\\\\\"chat_id\\\\\\":null,\\\\\\"text\\\\\\":\\\\\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\\\\\"}\\\\n```\\",\\"option\\":{\\"disable_notification\\":false,\\"parse_mode\\":\\"Markdown\\",\\"chat_id\\":\\"\\",\\"text\\":\\"`ERROR`\\\\n```\\\\nBad Request: chat_id is empty\\\\n```\\\\nat\\\\n```\\\\n{\\\\\\"type\\\\\\":\\\\\\"TEXT\\\\\\",\\\\\\"chat_id\\\\\\":null,\\\\\\"text\\\\\\":\\\\\\"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.\\\\\\"}\\\\n```\\"}}\\n```"}}\n```' } } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","text":"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren."}\n```', 0|mm | option: 0|mm | { disable_notification: false, 0|mm | parse_mode: 'Markdown', 0|mm | chat_id: '', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","text":"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren."}\n```' } } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | chat_id: undefined, 0|mm | text: 'Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.' } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","text":"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren."}\n```', 0|mm | option: 0|mm | { disable_notification: false, 0|mm | parse_mode: 'Markdown', 0|mm | chat_id: '', 0|mm | text: '`ERROR`\n```\nBad Request: chat_id is empty\n```\nat\n```\n{"type":"TEXT","text":"Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren."}\n```' } } 0|mm | [TELBOT] Error: ETELEGRAM 0|mm | { ok: false, 0|mm | error_code: 400, 0|mm | description: 'Bad Request: chat_id is empty' } 0|mm | ERR_RESPONSE { type: 'TEXT', 0|mm | chat_id: undefined, 0|mm | text: 'Ein Fehler ist aufgetreten. Bitte den Admin kontaktieren.' } ^C
and it’s never ending.
What is wrong?
-
@lolobyte
Your telegrambot config is not completed. Read instructions of module on github -
Hi, i know.
But ongoing with step 4 is not possible because Telegranm don’t know the /commands or the /mychatid command!
This is the reson why i don’t have actually the adminChatId.
-
@lolobyte
To make things simple, Disable other modules except MMM-TelegramBot.
Then execute MM again. Show me which logs are displayed. -
OK, here the new config .js only with telegram module.
units: "metric", modules: [ // { // module: 'MMM-Tools', // position: 'top_right', // config: { // device : "RPI", // "RPI" is also available // refresh_interval_ms : 10000, // warning_interval_ms : 1000 * 60 * 5, // enable_warning : true, // warning : { // CPU_TEMPERATURE : 65, // GPU_TEMPERATURE : 65, // CPU_USAGE : 75, // STORAGE_USED_PERCENT : 80, // MEMORY_USED_PERCENT : 80 // }, // warning_text: { // CPU_TEMPERATURE : "The temperature of CPU is over %VAL%", // GPU_TEMPERATURE : "The temperature of GPU is over %VAL%", // CPU_USAGE : "The usage of CPU is over %VAL%", // STORAGE_USED_PERCENT : "The storage is used over %VAL% percent", // MEMORY_USED_PERCENT : "The memory is used over %VAL% percent", // }, // }, // }, { module: 'MMM-TelegramBot', config: { telegramAPIKey : 'xxxxxxxxxxxxxxxmy_API_keyxxxxxxxxxxxxxxxxxxxx', allowedUser : ['my_Telegram_username without @'], // This is NOT the username of bot. }, }, ] }; /*************** DO NOT EDIT THE LINE BELOW ***************/ if (typeof module !== "undefined") {module.exports = config;}
and here the log data.
pi@raspi-MM2:~ $ pm2 logs mm [TAILING] Tailing last 15 lines for [mm] process (change the value with --lines option) /home/pi/.pm2/logs/mm-error.log last 15 lines: 0|mm | at Request.emit (events.js:214:7) 0|mm | at Request.<anonymous> (/home/pi/MagicMirror/modules/MMM-iCloud-Client/node_modules/request/request.js:1161:10 ) 0|mm | at emitOne (events.js:116:13) 0|mm | at Request.emit (events.js:211:7) 0|mm | at IncomingMessage.<anonymous> (/home/pi/MagicMirror/modules/MMM-iCloud-Client/node_modules/request/request.js :1083:12) 0|mm | at Object.onceWrapper (events.js:313:30) 0|mm | TypeError: PythonShell is not a constructor 0|mm | at Class.loadDataFromAPI (/home/pi/MagicMirror/modules/MMM-FRITZ-Box-Callmonitor/node_helper.js:216:17) 0|mm | at Class.socketNotificationReceived (/home/pi/MagicMirror/modules/MMM-FRITZ-Box-Callmonitor/node_helper.js:69: 9) 0|mm | at Socket.<anonymous> (/home/pi/MagicMirror/modules/node_modules/node_helper/index.js:113:11) 0|mm | at emitTwo (events.js:126:13) 0|mm | at Socket.emit (events.js:214:7) 0|mm | at /home/pi/MagicMirror/node_modules/socket.io/lib/socket.js:528:12 0|mm | at _combinedTickCallback (internal/process/next_tick.js:131:7) 0|mm | at process._tickCallback (internal/process/next_tick.js:180:9) /home/pi/.pm2/logs/mm-out.log last 15 lines: 0|mm | starting network connection testing 0|mm | starting network connection testing 0|mm | Serving iCal 0|mm | starting network connection testing 0|mm | starting network connection testing 0|mm | starting network connection testing 0|mm | starting network connection testing 0|mm | starting network connection testing 0|mm | Serving iCal 0|mm | starting network connection testing 0|mm | starting network connection testing 0|mm | 0|mm | > magicmirror@2.6.0 start /home/pi/MagicMirror 0|mm | > sh run-start.sh 0|mm | 0|mm | Starting MagicMirror: v2.6.0 0|mm | Loading config ... 0|mm | Loading module helpers ... 0|mm | Initializing new module helper ... 0|mm | Module helper loaded: MMM-TelegramBot 0|mm | All module helpers loaded. 0|mm | Starting server on port 8080 ... 0|mm | Server started ... 0|mm | Connecting socket for: MMM-TelegramBot 0|mm | Sockets connected & modules started ... 0|mm | Launching application.
the /commands or the /mychatid command doesn’t work.
second time restartin MM2
pi@raspi-MM2:~ $ pm2 logs mm [TAILING] Tailing last 15 lines for [mm] process (change the value with --lines option) /home/pi/.pm2/logs/mm-error.log last 15 lines: 0|mm | _started: true, 0|mm | href: 'https://api.telegram.org/bot%3C718051157:AAFqI9VPBUE5W0FTYeZi770CWaq9mLYEBEQ%3E/getUpdates', 0|mm | req: [Object], 0|mm | ntick: true, 0|mm | response: [Circular], 0|mm | originalHost: 'api.telegram.org', 0|mm | originalHostHeaderName: 'host', 0|mm | responseContent: [Circular], 0|mm | _destdata: true, 0|mm | _ended: true, 0|mm | _callbackCalled: true }, 0|mm | toJSON: [Function: responseToJSON], 0|mm | caseless: Caseless { dict: [Object] }, 0|mm | read: [Function], 0|mm | body: { ok: false, error_code: 404, description: 'Not Found' } } }
-
@lolobyte More error logs are needed. your mm-error.log is showing just last 15 lines.
If your file is too long, send me via email : eouia0819@gmail.com.
And If you don’t mind, send me your TelegramAPIKey also. (You can make new thing after my researching) -
I searche’d the log files and has found this 2:
/home/pi/.pm2/logs/mm-error.log
/home/pi/.pm2/logs/mm-out.logmm-error.log is empty
mm-out.log
> magicmirror@2.6.0 start /home/pi/MagicMirror > sh run-start.sh Starting MagicMirror: v2.6.0 Loading config ... Loading module helpers ... Initializing new module helper ... Module helper loaded: MMM-TelegramBot All module helpers loaded. Starting server on port 8080 ... Server started ... Connecting socket for: MMM-TelegramBot Sockets connected & modules started ... Launching application. Shutting down server... Stopping module helper: MMM-TelegramBot > magicmirror@2.6.0 start /home/pi/MagicMirror > sh run-start.sh Starting MagicMirror: v2.6.0 Loading config ... Loading module helpers ... Initializing new module helper ... Module helper loaded: MMM-TelegramBot All module helpers loaded. Starting server on port 8080 ... Server started ... Connecting socket for: MMM-TelegramBot Sockets connected & modules started ... Launching application.
-
@lolobyte
Well,mm-error.log is empty
mm-out.log
It means there’s no error in module on installation phase or running phase.
So I have to represent your issue but it might be related your account specific. So I need your TelegramBotAPI Key to represent your issue. Without it, I can help you only limitedly. -
@Sean
Is it possible to use this module to display on my mirror every time a specific telegram person posts a message? not me. another account.