Появилась необходимость работать с telegram api (
не bot api).
На github
нашел только одну более менее "живую" библиотеку для работы с tg api, добавил её в проект и понял что ничего не понимаю.
Мне нужно выполнить метод messages.getDialogs.
Я открыл список методов на официальном сайте telegram api и нашел нужный мне
метод. На странице метода я не увидел ни примеров вызова метода, ни информацию о том, какой из аргументов нужно передавать обязательно, а какой можно опустить.
В недоумении я отправился кодить
Я авторизовался по
гайду и попробовал выполнить запрос
api.call('messages.getDialogs', {
limit: 20
}).then(result => {
console.log(result);
}).catch(err => {
console.log(err)
})
В ответе я получил
TypeError: Cannot read property '_' of undefined
at TLSerializer.predicate (/root/alik/node_modules/@mtproto/core/src/tl/serializer/index.cjs:132:71)
at /root/alik/node_modules/@mtproto/core/src/tl/serializer/index.cjs:81:12
at Array.forEach (<anonymous>)
at TLSerializer.method (/root/alik/node_modules/@mtproto/core/src/tl/serializer/index.cjs:68:23)
at RPC.call (/root/alik/node_modules/@mtproto/core/src/rpc/index.cjs:588:29)
at /root/alik/node_modules/@mtproto/core/src/rpc/index.cjs:388:12
at Array.forEach (<anonymous>)
at RPC.sendWaitMessages (/root/alik/node_modules/@mtproto/core/src/rpc/index.cjs:386:27)
at RPC.handleTransportOpen (/root/alik/node_modules/@mtproto/core/src/rpc/index.cjs:96:12)
А, например, метод contacts.getBlocked выполняется корректно, тогда что не хватает messages.getDialogs?
Так вот, как правильно выполнять запросы к api? Есть ли понятная документация telegram api с примерами? Самое интересное, что по bot api информации куча, а по client api почти нет.