import { ApiClientFactory } from './core/api.client.factory'; import { ApiError } from './core/api.client'; import { TokenService } from './api/token.service'; export const ApiGatewayEndpoint = 'https://zl-test.glodon.com:38001'; export const WebsocketEndpoint = 'https://zl-test.glodon.com:38001/smart/api/ws'; export const TestGlodonCloudToken = 'a8a36ac1-e71f-42b7-8eb7-30d660ad98be'; export const TestGssApiEndPoint = 'https://xmgl-test.glodon.com'; // test tokens export const TestTokens = { glodonCookie: 'cn-25e26e91-957d-44f4-a1b2-f10e83837bab', gssToken: '', zhulianToken: '' }; // test IDS export const TestProjectId = '218107571651072'; export const TestMenuId = '5b6a83f957645400015055b4'; export const TestOrgId = '133118611058688'; export const TestTenantId = '133116919336960'; export function createOptions() { return new ApiClientFactory({ gssOptions: { baseUrl: `${ApiGatewayEndpoint}/cloudt`, headerProcessor: () => ({ Authorization: `Bearer ${TestTokens.glodonCookie}` }), errorHandler: (error) => { error.source = 'gss'; console.log(error); } }, cloudtOptions: { baseUrl: `${ApiGatewayEndpoint}/cloudt/v4`, headerProcessor: () => ({ Authorization: `Bearer ${TestTokens.gssToken}` }), errorHandler: (error) => { error.source = 'cloudt'; console.log(error); } }, cloudtRawOptions: { baseUrl: `${ApiGatewayEndpoint}/cloudt`, headerProcessor: () => ({ Authorization: `Bearer ${TestTokens.glodonCookie}` }), errorHandler: (error) => { error.source = 'cloudtRaw'; console.log(error); } }, datahubOptions: { baseUrl: `${ApiGatewayEndpoint}/datahub`, headerProcessor: () => ({ Authorization: `Bearer ${TestTokens.glodonCookie}` }), errorHandler: (error) => { error.source = 'datahub'; console.log(error); } }, entityOptions: { baseUrl: `${ApiGatewayEndpoint}/smart`, headerProcessor: () => ({ Authorization: `Bearer ${TestTokens.zhulianToken}` }), errorHandler: (error) => { error.source = 'entity'; console.log(error); } }, websocketOptions: { endpoint: WebsocketEndpoint, tokenGenerator: () => `${TestTokens.zhulianToken}` }, surveOptions: { // 潘的视频网关 baseUrl: `${ApiGatewayEndpoint}/ivs/api`, headerProcessor: () => ({ Authorization: `Bearer ${TestTokens.zhulianToken}` }), errorHandler: (error) => { error.source = 'surve'; console.log(error); } }, foundationPitOptions: { baseUrl: `${ApiGatewayEndpoint}/jkjc`, headerProcessor: () => ({ Authorization: `Bearer ${TestTokens.zhulianToken}` }), errorHandler: (error) => { error.source = 'foundationPit'; console.log(error); } }, gssApiOptions: { baseUrl: `${TestGssApiEndPoint}/gss-api`, headerProcessor: () => ({ Authorization: `Bearer ${TestTokens.zhulianToken}` }), errorHandler: (error) => { error.source = 'gss-api'; console.log(error); } } }); } export async function setupTokens() { const factory = createOptions(); const tokenService = new TokenService(factory); const gssTokenResp = await tokenService.loadGatewayToken(TestTokens.glodonCookie); TestTokens.gssToken = gssTokenResp.token; const projectTokenResp = await tokenService.loadProjectToken(TestProjectId); TestTokens.zhulianToken = projectTokenResp.token; }