मुझे एक उपाय मिला! आधिकारिक क्लाइंट शायद इसकी अनुमति नहीं देता (सभी ज्ञात कमांड लाइन तर्क यहां अनौपचारिक रूप से प्रलेखित हैं ), लेकिन लिनक्स और मैक (और शायद विंडोज पर लिनक्स सबसिस्टम भी) के लिए, टेलीग्राम के लिए एक अनौपचारिक कमांड लाइन इंटरफ़ेस है जिसे "टीजी" कहा जाता है: https://github.com/vysheng/tg
यह अपने विवरण में उल्लेख नहीं करता है कि यह फाइलें भी भेज सकता है, लेकिन गितुब मुद्दे में किसी ने लिखा है कि send_fileफ़ंक्शन है। सामान्य तौर पर यह बहुत अच्छी तरह से प्रलेखित नहीं होता है, लेकिन कार्यक्रम के अंदर --helpप्रवेश करने और इसमें प्रवेश करने से helpबहुत सी जानकारी मिलती है, बाकी को मापदंडों के साथ जोड़कर और विभिन्न चीजों की कोशिश करके पता लगाया जा सकता है।
यह वह उपाय है जो मैं इस तरह से प्रस्तुत किया था:
तैयारी
- रीड फ़ाइल कहते हैं जैसे टीजी स्थापित करें। बग के कारण डेबियन पर यह मेरे लिए सही काम नहीं करता था, लेकिन जैसा कि इस बग रिपोर्ट टिप्पणी में कहा गया है , स्थापित
libssl1.0-devकरना उस बग के लिए एक समाधान है: sudo apt install libssl1.0-devबीच में निष्पादित करें ./configureऔर make।
- अपने टेलीग्राम खाते के साथ लॉग इन करें:
bin/telegram-cliइंटरेक्टिव प्रोग्राम शुरू करने के लिए, फ़ोन नंबर दर्ज करें, लॉगिन कोड दर्ज करें। मैंने अपना फ़ोन नंबर शुरू किया +49और उसके साथ काम किया, शायद यह आवश्यक है, मुझे नहीं पता।
- अब लक्ष्य चैट में एक संदेश भेजने के लिए एक अन्य टेलीग्राम क्लाइंट का उपयोग करें (या वैकल्पिक रूप से एक संदेश प्राप्त करें)। यह प्रोग्राम की आंतरिक चैट सूची में चैट का नाम जोड़ता है। यदि समान नाम वाली कई चैट मौजूद हैं, तो यह सबसे हाल ही में जोड़े गए एक को चुनने के लिए लगता है। मुझे आईडी द्वारा चैट करने का कोई तरीका नहीं मिला है।
यह सेटअप के लिए है, quitकार्यक्रम से बाहर निकलता है।
प्रोग्राम को फाइलें अपलोड करना
अब send_fileप्रोग्राम के साथ कमांड देकर फाइल को अपलोड किया जा सकता है --execute, जिससे यह उस कमांड को निष्पादित करता है और फिर स्वचालित रूप से छोड़ देता है:
/path/to/tg/bin/telegram-cli --exec 'send_file <chat> <filename>'
<chat>चैट का नाम है।
<filename>फ़ाइल का पथ है।
/path/to/tgस्पष्ट होना चाहिए।
उदाहरण उपयोग
जब मैंने इसे p7zip के साथ बनाया है, तब मैं अपने Google डिस्क फ़ोल्डर का बैकअप टेलीग्राम पर अपलोड करने के लिए कुछ इस तरह का उपयोग करूंगा:
for filename in ~/drive_backup/drive.zip.*; do ~/tg/bin/telegram-cli --exec 'send_file Backup_chat '"$filename"; done
यह उन सभी फाइलों को अपलोड करता है, जिनके नाम drive.zip.फ़ोल्डर में " " (.001, .002 आदि) ~/drive_backupसे शुरू होते हैं, टेलीग्राम चैट "बैकअपबच" में।