Merge pull request #836 from chatwoot-br/next

feat: Define a global proxy to be used if the instance does not have one
This commit is contained in:
Davidson Gomes 2024-08-30 09:38:57 -03:00 committed by GitHub
commit 09eaba99c0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 26 additions and 6 deletions

View File

@ -212,3 +212,10 @@ AUTHENTICATION_API_KEY=429683C4C977415CAAFCCE10F7D57E11
# If you leave this option as true, the instances will be exposed in the fetch instances endpoint.
AUTHENTICATION_EXPOSE_IN_FETCH_INSTANCES=true
LANGUAGE=en
# Define a global proxy to be used if the instance does not have one
# PROXY_HOST=
# PROXY_PORT=80
# PROXY_PROTOCOL=http
# PROXY_USERNAME=
# PROXY_PASSWORD=

View File

@ -338,18 +338,31 @@ export class ChannelStartupService {
}
public async loadProxy() {
this.localProxy.enabled = false;
if (process.env.PROXY_HOST) {
this.localProxy.enabled = true;
this.localProxy.host = process.env.PROXY_HOST;
this.localProxy.port = process.env.PROXY_PORT || '80';
this.localProxy.protocol = process.env.PROXY_PROTOCOL || 'http';
this.localProxy.username = process.env.PROXY_USERNAME;
this.localProxy.password = process.env.PROXY_PASSWORD;
}
const data = await this.prismaRepository.proxy.findUnique({
where: {
instanceId: this.instanceId,
},
});
this.localProxy.enabled = data?.enabled;
this.localProxy.host = data?.host;
this.localProxy.port = data?.port;
this.localProxy.protocol = data?.protocol;
this.localProxy.username = data?.username;
this.localProxy.password = data?.password;
if (data?.enabled) {
this.localProxy.enabled = true;
this.localProxy.host = data?.host;
this.localProxy.port = data?.port;
this.localProxy.protocol = data?.protocol;
this.localProxy.username = data?.username;
this.localProxy.password = data?.password;
}
}
public async setProxy(data: ProxyDto) {