feat(Telegram Node): Add support for local bot api server (#8437)

Co-authored-by: Jonathan Bennetts <jonathan.bennetts@gmail.com>
This commit is contained in:
Daniil Zobov 2024-05-20 15:47:01 +03:00 committed by GitHub
parent 747012dcfd
commit 87f965e905
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 19 additions and 5 deletions

View file

@ -26,10 +26,17 @@ export const credentialTypeTelegram = {
description:
'Chat with the <a href="https://telegram.me/botfather">bot father</a> to obtain the access token',
},
{
displayName: 'Base URL',
name: 'baseUrl',
type: 'string',
default: 'https://api.telegram.org',
description: 'Base URL for Telegram Bot API',
},
],
test: {
request: {
baseURL: '=https://api.telegram.org/bot{{$credentials.accessToken}}',
baseURL: '={{$credentials.baseUrl}}/bot{{$credentials.accessToken}}',
url: '/getMe',
},
},

View file

@ -17,11 +17,18 @@ export class TelegramApi implements ICredentialType {
description:
'Chat with the <a href="https://telegram.me/botfather">bot father</a> to obtain the access token',
},
{
displayName: 'Base URL',
name: 'baseUrl',
type: 'string',
default: 'https://api.telegram.org',
description: 'Base URL for Telegram Bot API',
},
];
test: ICredentialTestRequest = {
request: {
baseURL: '=https://api.telegram.org/bot{{$credentials.accessToken}}',
baseURL: '={{$credentials.baseUrl}}/bot{{$credentials.accessToken}}',
url: '/getMe',
},
};

View file

@ -202,7 +202,7 @@ export async function apiRequest(
const options: IRequestOptions = {
headers: {},
method,
uri: `https://api.telegram.org/bot${credentials.accessToken}/${endpoint}`,
uri: `${credentials.baseUrl}/bot${credentials.accessToken}/${endpoint}`,
body,
qs: query,
json: true,

View file

@ -2067,7 +2067,7 @@ export class Telegram implements INodeType {
{
json: false,
encoding: null,
uri: `https://api.telegram.org/file/bot${credentials.accessToken}/${filePath}`,
uri: `${credentials.baseUrl}/bot${credentials.accessToken}/${filePath}`,
resolveWithFullResponse: true,
useStream: true,
},

View file

@ -293,7 +293,7 @@ export class TelegramTrigger implements INodeType {
{
json: false,
encoding: null,
uri: `https://api.telegram.org/file/bot${credentials.accessToken}/${file_path}`,
uri: `${credentials.baseUrl}/file/bot${credentials.accessToken}/${file_path}`,
resolveWithFullResponse: true,
},
);