- Version: 0.2.0
- GitHub:
- NPM: https://www.npmjs.com/package/nativescript-tglib
- Downloads:
- Last Day: 0
- Last Week: 0
- Last Month: 0
Nativescript Tglib
Nativescript Library for building Telegram clients
Installation
Describe your plugin installation steps. Ideally it would be something like:
tns plugin add nativescript-tglib
Features
- Currently support for iOS
- Android coming soon
APIs
tglib provide some useful methods that makes your Telegram app development easier.
Most API classes/methods can be found in the official TDLib documentation.
Authorizing an user
const client = new TDJSON({
apiId: 'YOUR_API_ID',
apiHash: 'YOUR_API_HASH',
auth: {
type: 'user',
value: 'YOUR_PHONE_NUMBER',
},
})
Authorizing a bot
const client = new TDJSON({
apiId: 'YOUR_API_ID',
apiHash: 'YOUR_API_HASH',
auth: {
type: 'bot',
value: 'YOUR_BOT_TOKEN',
},
})
Low Level APIs
client.ready
This promise is used for initializing tglib client and connect with Telegram.
await client.ready
client.registerCallback(key, callback)
-> Void
This API is provided by tglib, you can use this API to register your function in order to receive callbacks.
The authorization process can be overridden here by registering td:getInput
callback.
client.registerCallback('td:update', (update) => console.log(update))
client.registerCallback('td:error', (error) => console.error(error))
client.registerCallback('td:getInput', async (args) => {
const result = await getInputFromUser(args)
return result
})
client.fetch(query)
-> Promise -> Object
This API is provided by tglib, you can use this API to send asynchronous message to Telegram and receive response.
const chats = await client.fetch({
'@type': 'getChats',
'offset_order': '9223372036854775807',
'offset_chat_id': 0,
'limit': 100,
})
client.send(query)
-> Promise -> Object
This API is provided by TDLib, you can use this API to send asynchronous message to Telegram.
await client.send({
'@type': 'sendMessage',
'chat_id': -123456789,
'input_message_content': {
'@type': 'inputMessageText',
'text': {
'@type': 'formattedText',
'text': '👻',
},
},
})
License
Apache License Version 2.0, January 2004