new(whatsapp.gblib): Multiple service definition allowed per tenant.
This commit is contained in:
parent
b45f7372da
commit
4dcb581897
3 changed files with 15 additions and 4 deletions
|
@ -333,7 +333,7 @@ export class GuaribasChannel extends Model<GuaribasChannel> {
|
||||||
export class GuaribasException extends Model<GuaribasException> {
|
export class GuaribasException extends Model<GuaribasException> {
|
||||||
@PrimaryKey
|
@PrimaryKey
|
||||||
@AutoIncrement
|
@AutoIncrement
|
||||||
@Column(DataType.STRING(255))
|
@Column(DataType.INTEGER)
|
||||||
public exceptionId: number;
|
public exceptionId: number;
|
||||||
|
|
||||||
@Column(DataType.STRING(255))
|
@Column(DataType.STRING(255))
|
||||||
|
|
|
@ -167,7 +167,7 @@ export class GBMinService {
|
||||||
|
|
||||||
// Servers the WhatsApp callback.
|
// Servers the WhatsApp callback.
|
||||||
|
|
||||||
GBServer.globals.server.post('/webhooks/whatsapp', this.WhatsAppCallback.bind(this));
|
GBServer.globals.server.post('/webhooks/whatsapp/:botId', this.WhatsAppCallback.bind(this));
|
||||||
|
|
||||||
// Calls mountBot event to all bots.
|
// Calls mountBot event to all bots.
|
||||||
|
|
||||||
|
@ -332,6 +332,13 @@ export class GBMinService {
|
||||||
}
|
}
|
||||||
|
|
||||||
let activeMin;
|
let activeMin;
|
||||||
|
let botId = req.params.botId;
|
||||||
|
if (botId === '[default]' || botId === undefined) {
|
||||||
|
botId = GBConfigService.get('BOT_ID');
|
||||||
|
}
|
||||||
|
|
||||||
|
GBLog.info(`Client requested instance for: ${botId}.`);
|
||||||
|
|
||||||
|
|
||||||
// Processes group behaviour.
|
// Processes group behaviour.
|
||||||
|
|
||||||
|
@ -442,10 +449,14 @@ export class GBMinService {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
let minInstance = GBServer.globals.minInstances.filter(
|
||||||
|
p => p.instance.botId.toLowerCase() === botId
|
||||||
|
)[0];
|
||||||
|
|
||||||
|
|
||||||
// Just pass the message to the receiver.
|
// Just pass the message to the receiver.
|
||||||
|
|
||||||
await (GBServer.globals.minBoot as any).whatsAppDirectLine.received(req, res);
|
await minInstance.whatsAppDirectLine.received(req, res);
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
GBLog.error(`Error on Whatsapp callback: ${error.data ? error.data : error}`);
|
GBLog.error(`Error on Whatsapp callback: ${error.data ? error.data : error}`);
|
||||||
|
|
|
@ -110,7 +110,7 @@ export class WhatsappDirectLine extends GBService {
|
||||||
timeout: 10000,
|
timeout: 10000,
|
||||||
qs: {
|
qs: {
|
||||||
token: this.whatsappServiceKey,
|
token: this.whatsappServiceKey,
|
||||||
webhookUrl: `${GBServer.globals.publicAddress}/webhooks/whatsapp`,
|
webhookUrl: `${GBServer.globals.publicAddress}/webhooks/whatsapp/${this.botId}`,
|
||||||
set: true
|
set: true
|
||||||
},
|
},
|
||||||
headers: {
|
headers: {
|
||||||
|
|
Loading…
Add table
Reference in a new issue