Added Azure AD administration routines.

This commit is contained in:
Rodrigo Rodriguez 2018-09-16 17:01:01 -03:00
parent 3247a189c7
commit a59e2e3e66
4 changed files with 49 additions and 6 deletions

View file

@ -1,7 +1,7 @@
{ {
"name": "botlib", "name": "botlib",
"version": "0.0.29", "version": "0.0.29",
"description": "General Bot base library for building Node.js TypeScript Apps packages (.gbapp)", "description": "General Bot base library for building Node.js TypeScript Apps packages (.gbapp)",
"main": "dist/src/index.js", "main": "dist/src/index.js",
"types": "dist/src/index.d.ts", "types": "dist/src/index.d.ts",
"homepage": "http://www.generalbot.com", "homepage": "http://www.generalbot.com",
@ -21,17 +21,18 @@
"botbuilder-azure": "^4.0.0-preview1.2", "botbuilder-azure": "^4.0.0-preview1.2",
"botbuilder-choices": "^4.0.0-preview1.2", "botbuilder-choices": "^4.0.0-preview1.2",
"botbuilder-dialogs": "^4.0.0-preview1.2", "botbuilder-dialogs": "^4.0.0-preview1.2",
"botbuilder-prompts": "^4.0.0-preview1.2",
"botbuilder-location": "^2.0.0", "botbuilder-location": "^2.0.0",
"botbuilder-prompts": "^4.0.0-preview1.2",
"chrono-node": "^1.3.5", "chrono-node": "^1.3.5",
"dotenv-extended": "^2.2.0", "dotenv-extended": "^2.3.0",
"iconv-lite": "^0.4.24", "iconv-lite": "^0.4.24",
"ms": "^2.1.1",
"pragmatismo-io-framework": "^1.0.15", "pragmatismo-io-framework": "^1.0.15",
"reflect-metadata": "^0.1.12", "reflect-metadata": "^0.1.12",
"sequelize": "^4.38.0", "sequelize": "^4.38.1",
"sequelize-typescript": "^0.6.6", "sequelize-typescript": "^0.6.6",
"wait-until": "^0.0.2", "wait-until": "^0.0.2",
"winston": "^3.0.0" "winston": "^3.1.0"
}, },
"devDependencies": { "devDependencies": {
"@types/chai": "^4.1.4", "@types/chai": "^4.1.4",

38
src/IGBAdminService.ts Normal file
View file

@ -0,0 +1,38 @@
/*****************************************************************************\
| ( )_ _ |
| _ _ _ __ _ _ __ ___ ___ _ _ | ,_)(_) ___ ___ _ |
| ( '_`\ ( '__)/'_` ) /'_ `\/' _ ` _ `\ /'_` )| | | |/',__)/' _ `\ /'_`\ |
| | (_) )| | ( (_| |( (_) || ( ) ( ) |( (_| || |_ | |\__, \| ( ) |( (_) ) |
| | ,__/'(_) `\__,_)`\__ |(_) (_) (_)`\__,_)`\__)(_)(____/(_) (_)`\___/' |
| | | ( )_) | |
| (_) \___/' |
| |
| General Bots Copyright (c) Pragmatismo.io. All rights reserved. |
| Licensed under the AGPL-3.0. |
| |
| According to our dual licensing model, this program can be used either |
| under the terms of the GNU Affero General Public License, version 3, |
| or under a proprietary license. |
| |
| The texts of the GNU Affero General Public License with an additional |
| permission and of our proprietary license can be found at and |
| in the LICENSE file you have received along with this program. |
| |
| This program is distributed in the hope that it will be useful, |
| but WITHOUT ANY WARRANTY, without even the implied warranty of |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| GNU Affero General Public License for more details. |
| |
| "General Bots" is a registered trademark of Pragmatismo.io. |
| The licensing of the program under the AGPLv3 does not imply a |
| trademark license. Therefore any rights, title and interest in |
| our trademarks remain entirely with us. |
| |
\*****************************************************************************/
"use strict"
export interface IGBAdminService {
putValue(key: string, value: string);
getValue(key: string)
}

View file

@ -34,6 +34,7 @@
import { Sequelize } from "sequelize-typescript" import { Sequelize } from "sequelize-typescript"
import { IGBInstance } from "./IGBInstance" import { IGBInstance } from "./IGBInstance"
import { IGBAdminService } from "./IGBAdminService";
/** /**
* This interface defines the core service which is shared among * This interface defines the core service which is shared among
@ -41,6 +42,7 @@ import { IGBInstance } from "./IGBInstance"
*/ */
export interface IGBCoreService { export interface IGBCoreService {
sequelize: Sequelize sequelize: Sequelize
adminService: IGBAdminService
initDatabase() initDatabase()
syncDatabaseStructure() syncDatabaseStructure()
loadInstances(): IGBInstance[] loadInstances(): IGBInstance[]

View file

@ -37,7 +37,6 @@ export interface IGBInstance {
whoAmIVideo: string whoAmIVideo: string
applicationPrincipal: string applicationPrincipal: string
authenticatorTenant: string authenticatorTenant: string
authenticatorsignUpSignInPolicy: string
authenticatorClientID: string authenticatorClientID: string
instanceId: number instanceId: number
title: string title: string
@ -55,6 +54,9 @@ export interface IGBInstance {
whatsappServiceNumber: string whatsappServiceNumber: string
whatsappServiceUrl: string whatsappServiceUrl: string
whatsappServiceWebhookUrl: string whatsappServiceWebhookUrl: string
smsKey: string
smsSecret: string
smsServiceNumber: string
theme: string theme: string
ui: string ui: string
kb: string kb: string