npm install x.application.11
{
"файл_конфигурации": "e:/nsj/x.web.hosting.11/config/application.json",
"приложение": {
"bitrix24": {
"local.63e8ba314dd9b1.71651296": "local.63e8ba314dd9b1.71651296"
}
},
"конфигурация": {
"local.63e8ba314dd9b1.71651296": {
"секрет": "DVRqlT3TD9XFeI4E36DE7u7N8ybY67bGNDBfq31VQsPkZnYxq0",
"путь": {
"диалога": "https://b24-vnrazt.bitrix24.ru/rest/",
"авторизации": "https://oauth.bitrix.info/"
},
"фигура": {
"диалога": "json"
},
"данные": {
"access_token": "387c0b64006150a000614db200000001000007c8abb8c8f536c47e9526e3fa4999020b",
"expires": 1678474296,
"expires_in": 3600,
"scope": "app",
"domain": "oauth.bitrix.info",
"server_endpoint": "https://oauth.bitrix.info/rest/",
"status": "L",
"client_endpoint": "https://b24-vnrazt.bitrix24.ru/rest/",
"member_id": "85ef8d7428ba7297cd81b493bd7e1995",
"user_id": 1,
"refresh_token": "28fb3264006150a000614db200000001000007e2053303e4c3f039b9a895f13883b108"
}
}
}
}
/*bx*/ токен: function(путь,метод,опции,токен){return путь+'/'+метод+'?'+опции+'&'+'auth='+токен},
/*tg*/ токен: function(путь,метод,опции,токен){return путь+токен+'/'+метод+'?'+опции},
/*vk*/ токен: function(путь,метод,опции,токен,конфигурация){return путь+'/'+метод+'?'+опции+'&'+'access_token='+токен+'&'+'v='+конфигурация.данные.version},
/*bx*/ афторизация: function(опции,конфигурация){return {путь: опции.пункт_назначения.path+'/oauth/token/?'+опции.опции}},
/*gl*/ афторизация: function(опции,конфигурация){return {путь: опции.пункт_назначения.path,заголовок:{'Content-Type': 'application/x-www-form-urlencoded'},данные:опции.опции}},
let файл_конфигурации = null;
process.argv.forEach((e)=>{if(/\.json$/.test(e)) файл_конфигурации = e});
const qs = require('querystring')
const fs = require('fs');
const crypto = require('crypto');
const http = require('http');
const application = require('x.application.11');
const API = application.API;
let общая = общая_конфигурация = require(файл_конфигурации);
общая_конфигурация.файл_конфигурации = файл_конфигурации;
if(!общая_конфигурация.файл_конфигурации)
throw new Error('конфигурация.файл_конфигурации: '+общая_конфигурация.файл_конфигурации)
const bitrix = new API({
приложение: общая_конфигурация.приложение.bitrix24['local.63e8ba314dd9b1.71651296'],
конфигурация: общая,
токен: function(путь,метод,опции,токен){return путь+'/'+метод+'?'+опции+'&'+'auth='+токен},
афторизация: function(опции,конфигурация){return {путь: опции.пункт_назначения.path+'/oauth/token/?'+опции.опции}}
});
bitrix.method('crm.deal.get').get({опции:{ID: '32'}},(err,результат,cb)=>{try{
if(err) {console.error(err)} else {
результат.данные = JSON.parse(результат.данные.toString());
if(отладка)
console.log('результат:', результат.метод, результат.данные);
}
}catch(err){console.error(err)}})
const telegram = new API({
приложение: общая_конфигурация.приложение.telegram.мой_телеграмм_bot,
конфигурация: общая,
токен: function(путь,метод,опции,токен){return путь+токен+'/'+метод+'?'+опции},
});
telegram.method('sendMessage').get({данные:{chat_id: '@gzt_today',text:'сообщение'}},(err,результат,cb)=>{try{
if(err) {console.error(err)} else {
результат.данные = JSON.parse(результат.данные.toString());
if(отладка)
console.log('результат:', результат.метод, результат.данные);
}
}catch(err){console.error(err)}})
отладка
метод
домен
путь
заголовок
данные
статус
документ