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,