1.0.2 • Published 1 year ago

x.application.11 v1.0.2

Weekly downloads
-
License
GPL-3.0-or-later
Repository
-
Last release
1 year ago

install

npm install x.application.11

configuration

{
   "файл_конфигурации": "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"
            }
        }
    }
}

token

/*bx*/ токен: function(путь,метод,опции,токен){return путь+'/'+метод+'?'+опции+'&'+'auth='+токен},
/*tg*/ токен: function(путь,метод,опции,токен){return путь+токен+'/'+метод+'?'+опции},
/*vk*/ токен: function(путь,метод,опции,токен,конфигурация){return путь+'/'+метод+'?'+опции+'&'+'access_token='+токен+'&'+'v='+конфигурация.данные.version},

authorization

/*bx*/ афторизация: function(опции,конфигурация){return {путь: опции.пункт_назначения.path+'/oauth/token/?'+опции.опции}},
/*gl*/ афторизация: function(опции,конфигурация){return {путь: опции.пункт_назначения.path,заголовок:{'Content-Type': 'application/x-www-form-urlencoded'},данные:опции.опции}},

request

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('конфигурация.файл_конфигурации: '+общая_конфигурация.файл_конфигурации)	

bitrix24

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)}})

telegram

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)}})

agruments

отладка метод домен путь заголовок данные статус документ