Как загрузить файл используя telegram api?

Что-то я совсем ничего не понимаю... Почему все так сложно с этим telegram api да еще и примеров толковых нет на ноде.. Зато для ботов куча...

Короче, нужно отправить файл моему боту используя апи, нашел библиотеку для ноды.

Попробовал запустить код ниже код, но сразу же столкнулся с непониманием. Если при авторизации нужно отправить код полученный с смс, значит скрипт нужно запускать каждый раз 2 раза (1. Получить код 2. Записать код в скрипт и авторизоваться.)
Понимаю, что библиотека отлично будет работать с фронтендом, но как быть если фронта нет и быть его не может?

Разве нельзя просто 1 раз авторизоваться и держаться сессию?!

Во-вторых, обязательно ли использовать эту авторизацию, если мне нужно отправить файл от своего имени боту, разве нельзя это сделать просто имея секретный ключ?

Что мне вообще дальше делать? Как от этого прийти к отправке файла и не заморачиваться с авторизациями? Можете привести примеры, как это вообще реализовывается? Скрипт будет запускаться на кроне, соответственно никаких ключей я получать не должен, просто отправить файл.

Объясните.

import MTProto from 'telegram-mtproto'

const phone = {
  num : '+9996620001',
  code: '22222'
}

const api = {
  layer          : 57,
  initConnection : 0x69796de9,
  api_id         : 49631
}

const server = {
  dev: true //We will connect to the test server.
}           //Any empty configurations fields can just not be specified

const client = MTProto({ server, api })

async function connect(){
  const { phone_code_hash } = await client('auth.sendCode', {
    phone_number  : phone.num,
    current_number: false,
    api_id        : 49631,
    api_hash      : 'fb050b8f6771e15bfda5df2409931569'
  })
  const { user } = await client('auth.signIn', {
    phone_number   : phone.num,
    phone_code_hash: phone_code_hash,
    phone_code     : phone.code
  })

  console.log('signed as ', user)
}

connect()
  • Вопрос задан
  • 722 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы