From c5c82cacdea7197eb7e9095e8102af958da04c13 Mon Sep 17 00:00:00 2001 From: Rodrigo Nascimento Date: Sun, 29 Mar 2020 19:47:01 -0300 Subject: [PATCH] =?UTF-8?q?Change=20App=E2=80=99s=20username=20pattern=20t?= =?UTF-8?q?o=20{appName}.bot=20and=20prevent=20dupllicated=20creation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/definition/App.ts | 2 +- src/server/AppManager.ts | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/definition/App.ts b/src/definition/App.ts index 8ed0515b0..6c2d442c1 100644 --- a/src/definition/App.ts +++ b/src/definition/App.ts @@ -58,7 +58,7 @@ export abstract class App implements IApp { * @return {string} the username of the app user */ public getAppUserUsername(): string { - return `app.${ this.info.nameSlug }`; + return `${ this.info.nameSlug }.bot`; } /** diff --git a/src/server/AppManager.ts b/src/server/AppManager.ts index 58cef9592..eeb54669c 100644 --- a/src/server/AppManager.ts +++ b/src/server/AppManager.ts @@ -798,7 +798,13 @@ export class AppManager { return enable; } - private createAppUser(app: ProxiedApp): Promise { + private async createAppUser(app: ProxiedApp): Promise { + const appUser = await this.bridges.getUserBridge().getAppUser(app.getID()); + + if (appUser) { + return appUser.id; + } + const userData: Partial = { username: app.getAppUserUsername(), name: app.getInfo().name,