mirror of
https://github.com/zitadel/zitadel.git
synced 2025-02-28 21:37:24 +00:00
fix(console): SMS provider (#3949)
fix: console twilio Co-authored-by: Livio Spring <livio.a@gmail.com>
This commit is contained in:
parent
aed7010508
commit
3855ec2ab5
@ -8,7 +8,7 @@
|
|||||||
<input cnslInput name="sid" formControlName="sid" />
|
<input cnslInput name="sid" formControlName="sid" />
|
||||||
</cnsl-form-field>
|
</cnsl-form-field>
|
||||||
|
|
||||||
<cnsl-form-field class="sms-form-field" label="Token">
|
<cnsl-form-field *ngIf="token" class="sms-form-field" label="Token">
|
||||||
<cnsl-label>{{ 'SETTING.SMS.TWILIO.TOKEN' | translate }}</cnsl-label>
|
<cnsl-label>{{ 'SETTING.SMS.TWILIO.TOKEN' | translate }}</cnsl-label>
|
||||||
<input cnslInput name="token" formControlName="token" />
|
<input cnslInput name="token" formControlName="token" />
|
||||||
</cnsl-form-field>
|
</cnsl-form-field>
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
import { Component, Inject } from '@angular/core';
|
import { Component, Inject } from '@angular/core';
|
||||||
import { AbstractControl, UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
|
import { AbstractControl, FormControl, UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
|
||||||
import { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';
|
import { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';
|
||||||
import {
|
import {
|
||||||
AddSMSProviderTwilioRequest,
|
AddSMSProviderTwilioRequest,
|
||||||
UpdateSMSProviderTwilioRequest,
|
UpdateSMSProviderTwilioRequest,
|
||||||
UpdateSMSProviderTwilioTokenRequest,
|
UpdateSMSProviderTwilioTokenRequest,
|
||||||
} from 'src/app/proto/generated/zitadel/admin_pb';
|
} from 'src/app/proto/generated/zitadel/admin_pb';
|
||||||
import { SMSProvider, TwilioConfig } from 'src/app/proto/generated/zitadel/settings_pb';
|
import { SMSProvider, TwilioConfig } from 'src/app/proto/generated/zitadel/settings_pb';
|
||||||
import { AdminService } from 'src/app/services/admin.service';
|
import { AdminService } from 'src/app/services/admin.service';
|
||||||
@ -41,13 +41,14 @@ export class DialogAddSMSProviderComponent {
|
|||||||
) {
|
) {
|
||||||
this.twilioForm = this.fb.group({
|
this.twilioForm = this.fb.group({
|
||||||
sid: ['', [Validators.required]],
|
sid: ['', [Validators.required]],
|
||||||
token: ['', [Validators.required]],
|
|
||||||
senderNumber: ['', [Validators.required]],
|
senderNumber: ['', [Validators.required]],
|
||||||
});
|
});
|
||||||
|
|
||||||
this.smsProviders = data.smsProviders;
|
this.smsProviders = data.smsProviders;
|
||||||
if (!!this.twilio) {
|
if (!!this.twilio) {
|
||||||
this.twilioForm.patchValue(this.twilio);
|
this.twilioForm.patchValue(this.twilio);
|
||||||
|
} else {
|
||||||
|
this.twilioForm.addControl('token', new FormControl('', Validators.required));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -82,14 +83,16 @@ export class DialogAddSMSProviderComponent {
|
|||||||
});
|
});
|
||||||
|
|
||||||
dialogRef.afterClosed().subscribe((token: string) => {
|
dialogRef.afterClosed().subscribe((token: string) => {
|
||||||
if (token) {
|
if (token && this.twilioProvider?.id) {
|
||||||
const tokenReq = new UpdateSMSProviderTwilioTokenRequest();
|
const tokenReq = new UpdateSMSProviderTwilioTokenRequest();
|
||||||
tokenReq.setToken(token);
|
tokenReq.setToken(token);
|
||||||
|
tokenReq.setId(this.twilioProvider.id);
|
||||||
|
|
||||||
this.service
|
this.service
|
||||||
.updateSMSProviderTwilioToken(tokenReq)
|
.updateSMSProviderTwilioToken(tokenReq)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
this.toast.showInfo('SETTING.SMS.TWILIO.TOKENSET', true);
|
this.toast.showInfo('SETTING.SMS.TWILIO.TOKENSET', true);
|
||||||
|
this.dialogRef.close();
|
||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
this.toast.showError(error);
|
this.toast.showError(error);
|
||||||
@ -110,6 +113,15 @@ export class DialogAddSMSProviderComponent {
|
|||||||
return this.twilioForm.get('sid');
|
return this.twilioForm.get('sid');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public get twilioProvider(): SMSProvider.AsObject | undefined {
|
||||||
|
const twilioProvider: SMSProvider.AsObject | undefined = this.smsProviders.find((p) => p.twilio);
|
||||||
|
if (twilioProvider) {
|
||||||
|
return twilioProvider;
|
||||||
|
} else {
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public get twilio(): TwilioConfig.AsObject | undefined {
|
public get twilio(): TwilioConfig.AsObject | undefined {
|
||||||
const twilioProvider: SMSProvider.AsObject | undefined = this.smsProviders.find((p) => p.twilio);
|
const twilioProvider: SMSProvider.AsObject | undefined = this.smsProviders.find((p) => p.twilio);
|
||||||
if (twilioProvider && !!twilioProvider.twilio) {
|
if (twilioProvider && !!twilioProvider.twilio) {
|
||||||
|
@ -75,9 +75,32 @@
|
|||||||
active: twilio?.state === SMSProviderConfigState.SMS_PROVIDER_CONFIG_ACTIVE,
|
active: twilio?.state === SMSProviderConfigState.SMS_PROVIDER_CONFIG_ACTIVE,
|
||||||
inactive: twilio?.state === SMSProviderConfigState.SMS_PROVIDER_CONFIG_INACTIVE
|
inactive: twilio?.state === SMSProviderConfigState.SMS_PROVIDER_CONFIG_INACTIVE
|
||||||
}"
|
}"
|
||||||
></span>
|
>{{ 'SETTING.SMS.SMSPROVIDERSTATE.' + twilio?.state | translate }}</span
|
||||||
|
>
|
||||||
|
|
||||||
<span class="fill-space"></span>
|
<span class="fill-space"></span>
|
||||||
|
<button
|
||||||
|
*ngIf="twilio && twilio.id"
|
||||||
|
[disabled]="(['iam.write'] | hasRole | async) === false"
|
||||||
|
mat-stroked-button
|
||||||
|
(click)="toggleSMSProviderState(twilio.id)"
|
||||||
|
>
|
||||||
|
<span *ngIf="twilio.state === SMSProviderConfigState.SMS_PROVIDER_CONFIG_ACTIVE">{{
|
||||||
|
'ACTIONS.DEACTIVATE' | translate
|
||||||
|
}}</span>
|
||||||
|
<span *ngIf="twilio.state === SMSProviderConfigState.SMS_PROVIDER_CONFIG_INACTIVE">{{
|
||||||
|
'ACTIONS.ACTIVATE' | translate
|
||||||
|
}}</span>
|
||||||
|
</button>
|
||||||
|
<button
|
||||||
|
*ngIf="twilio && twilio.id"
|
||||||
|
color="warn"
|
||||||
|
[disabled]="(['iam.write'] | hasRole | async) === false"
|
||||||
|
mat-icon-button
|
||||||
|
(click)="removeSMSProvider(twilio.id)"
|
||||||
|
>
|
||||||
|
<i class="las la-trash"></i>
|
||||||
|
</button>
|
||||||
<button [disabled]="(['iam.write'] | hasRole | async) === false" mat-icon-button (click)="editSMSProvider()">
|
<button [disabled]="(['iam.write'] | hasRole | async) === false" mat-icon-button (click)="editSMSProvider()">
|
||||||
<i class="las la-pen"></i>
|
<i class="las la-pen"></i>
|
||||||
</button>
|
</button>
|
||||||
|
@ -49,6 +49,7 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
width: 350px;
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
|
@ -3,12 +3,12 @@ import { AbstractControl, UntypedFormBuilder, UntypedFormGroup, Validators } fro
|
|||||||
import { MatDialog } from '@angular/material/dialog';
|
import { MatDialog } from '@angular/material/dialog';
|
||||||
import { take } from 'rxjs';
|
import { take } from 'rxjs';
|
||||||
import {
|
import {
|
||||||
AddSMSProviderTwilioRequest,
|
AddSMSProviderTwilioRequest,
|
||||||
AddSMTPConfigRequest,
|
AddSMTPConfigRequest,
|
||||||
UpdateSMSProviderTwilioRequest,
|
UpdateSMSProviderTwilioRequest,
|
||||||
UpdateSMTPConfigPasswordRequest,
|
UpdateSMTPConfigPasswordRequest,
|
||||||
UpdateSMTPConfigPasswordResponse,
|
UpdateSMTPConfigPasswordResponse,
|
||||||
UpdateSMTPConfigRequest,
|
UpdateSMTPConfigRequest,
|
||||||
} from 'src/app/proto/generated/zitadel/admin_pb';
|
} from 'src/app/proto/generated/zitadel/admin_pb';
|
||||||
import { DebugNotificationProvider, SMSProvider, SMSProviderConfigState } from 'src/app/proto/generated/zitadel/settings_pb';
|
import { DebugNotificationProvider, SMSProvider, SMSProviderConfigState } from 'src/app/proto/generated/zitadel/settings_pb';
|
||||||
import { AdminService } from 'src/app/services/admin.service';
|
import { AdminService } from 'src/app/services/admin.service';
|
||||||
@ -16,6 +16,7 @@ import { GrpcAuthService } from 'src/app/services/grpc-auth.service';
|
|||||||
import { ToastService } from 'src/app/services/toast.service';
|
import { ToastService } from 'src/app/services/toast.service';
|
||||||
|
|
||||||
import { InfoSectionType } from '../../info-section/info-section.component';
|
import { InfoSectionType } from '../../info-section/info-section.component';
|
||||||
|
import { WarnDialogComponent } from '../../warn-dialog/warn-dialog.component';
|
||||||
import { PolicyComponentServiceType } from '../policy-component-types.enum';
|
import { PolicyComponentServiceType } from '../policy-component-types.enum';
|
||||||
import { DialogAddSMSProviderComponent } from './dialog-add-sms-provider/dialog-add-sms-provider.component';
|
import { DialogAddSMSProviderComponent } from './dialog-add-sms-provider/dialog-add-sms-provider.component';
|
||||||
import { PasswordDialogComponent } from './password-dialog/password-dialog.component';
|
import { PasswordDialogComponent } from './password-dialog/password-dialog.component';
|
||||||
@ -185,11 +186,12 @@ export class NotificationSettingsComponent implements OnInit {
|
|||||||
|
|
||||||
dialogRef.afterClosed().subscribe((req: AddSMSProviderTwilioRequest | UpdateSMSProviderTwilioRequest) => {
|
dialogRef.afterClosed().subscribe((req: AddSMSProviderTwilioRequest | UpdateSMSProviderTwilioRequest) => {
|
||||||
if (req) {
|
if (req) {
|
||||||
if (this.hasTwilio) {
|
if (!!this.twilio) {
|
||||||
this.service
|
this.service
|
||||||
.updateSMSProviderTwilio(req as UpdateSMSProviderTwilioRequest)
|
.updateSMSProviderTwilio(req as UpdateSMSProviderTwilioRequest)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
this.toast.showInfo('SETTING.SMS.TWILIO.ADDED', true);
|
this.toast.showInfo('SETTING.SMS.TWILIO.ADDED', true);
|
||||||
|
this.fetchData();
|
||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
this.toast.showError(error);
|
this.toast.showError(error);
|
||||||
@ -199,6 +201,7 @@ export class NotificationSettingsComponent implements OnInit {
|
|||||||
.addSMSProviderTwilio(req as AddSMSProviderTwilioRequest)
|
.addSMSProviderTwilio(req as AddSMSProviderTwilioRequest)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
this.toast.showInfo('SETTING.SMS.TWILIO.ADDED', true);
|
this.toast.showInfo('SETTING.SMS.TWILIO.ADDED', true);
|
||||||
|
this.fetchData();
|
||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
this.toast.showError(error);
|
this.toast.showError(error);
|
||||||
@ -234,6 +237,59 @@ export class NotificationSettingsComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public toggleSMSProviderState(id: string): void {
|
||||||
|
const provider = this.smsProviders.find((p) => p.id === id);
|
||||||
|
if (provider) {
|
||||||
|
if (provider.state === SMSProviderConfigState.SMS_PROVIDER_CONFIG_ACTIVE) {
|
||||||
|
this.service
|
||||||
|
.deactivateSMSProvider(id)
|
||||||
|
.then(() => {
|
||||||
|
this.toast.showInfo('SETTING.SMS.DEACTIVATED', true);
|
||||||
|
this.fetchData();
|
||||||
|
})
|
||||||
|
.catch((error) => {
|
||||||
|
this.toast.showError(error);
|
||||||
|
});
|
||||||
|
} else if (provider.state === SMSProviderConfigState.SMS_PROVIDER_CONFIG_INACTIVE) {
|
||||||
|
this.service
|
||||||
|
.activateSMSProvider(id)
|
||||||
|
.then(() => {
|
||||||
|
this.toast.showInfo('SETTING.SMS.ACTIVATED', true);
|
||||||
|
this.fetchData();
|
||||||
|
})
|
||||||
|
.catch((error) => {
|
||||||
|
this.toast.showError(error);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public removeSMSProvider(id: string): void {
|
||||||
|
const dialogRef = this.dialog.open(WarnDialogComponent, {
|
||||||
|
data: {
|
||||||
|
confirmKey: 'ACTIONS.DELETE',
|
||||||
|
cancelKey: 'ACTIONS.CANCEL',
|
||||||
|
titleKey: 'SETTING.SMS.REMOVEPROVIDER',
|
||||||
|
descriptionKey: 'SETTING.SMS.REMOVEPROVIDER_DESC',
|
||||||
|
},
|
||||||
|
width: '400px',
|
||||||
|
});
|
||||||
|
|
||||||
|
dialogRef.afterClosed().subscribe((resp) => {
|
||||||
|
if (resp) {
|
||||||
|
this.service
|
||||||
|
.removeSMSProvider(id)
|
||||||
|
.then(() => {
|
||||||
|
this.toast.showInfo('SETTING.SMS.TWILIO.REMOVED', true);
|
||||||
|
this.fetchData();
|
||||||
|
})
|
||||||
|
.catch((error) => {
|
||||||
|
this.toast.showError(error);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
public get twilio(): SMSProvider.AsObject | undefined {
|
public get twilio(): SMSProvider.AsObject | undefined {
|
||||||
return this.smsProviders.find((p) => p.twilio);
|
return this.smsProviders.find((p) => p.twilio);
|
||||||
}
|
}
|
||||||
@ -257,13 +313,4 @@ export class NotificationSettingsComponent implements OnInit {
|
|||||||
public get host(): AbstractControl | null {
|
public get host(): AbstractControl | null {
|
||||||
return this.form.get('host');
|
return this.form.get('host');
|
||||||
}
|
}
|
||||||
|
|
||||||
public get hasTwilio(): boolean {
|
|
||||||
const twilioProvider: SMSProvider.AsObject | undefined = this.smsProviders.find((p) => p.twilio);
|
|
||||||
if (twilioProvider && !!twilioProvider.twilio) {
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -13,6 +13,7 @@ import { CardModule } from '../../card/card.module';
|
|||||||
import { FormFieldModule } from '../../form-field/form-field.module';
|
import { FormFieldModule } from '../../form-field/form-field.module';
|
||||||
import { InfoSectionModule } from '../../info-section/info-section.module';
|
import { InfoSectionModule } from '../../info-section/info-section.module';
|
||||||
import { InputModule } from '../../input/input.module';
|
import { InputModule } from '../../input/input.module';
|
||||||
|
import { WarnDialogModule } from '../../warn-dialog/warn-dialog.module';
|
||||||
import { DialogAddSMSProviderComponent } from './dialog-add-sms-provider/dialog-add-sms-provider.component';
|
import { DialogAddSMSProviderComponent } from './dialog-add-sms-provider/dialog-add-sms-provider.component';
|
||||||
import { NotificationSettingsComponent } from './notification-settings.component';
|
import { NotificationSettingsComponent } from './notification-settings.component';
|
||||||
import { PasswordDialogComponent } from './password-dialog/password-dialog.component';
|
import { PasswordDialogComponent } from './password-dialog/password-dialog.component';
|
||||||
@ -31,6 +32,7 @@ import { PasswordDialogComponent } from './password-dialog/password-dialog.compo
|
|||||||
InputModule,
|
InputModule,
|
||||||
MatIconModule,
|
MatIconModule,
|
||||||
FormFieldModule,
|
FormFieldModule,
|
||||||
|
WarnDialogModule,
|
||||||
MatSelectModule,
|
MatSelectModule,
|
||||||
MatProgressSpinnerModule,
|
MatProgressSpinnerModule,
|
||||||
MatSelectModule,
|
MatSelectModule,
|
||||||
|
@ -1,195 +1,201 @@
|
|||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
ActivateLabelPolicyRequest,
|
ActivateLabelPolicyRequest,
|
||||||
ActivateLabelPolicyResponse,
|
ActivateLabelPolicyResponse,
|
||||||
AddCustomDomainPolicyRequest,
|
ActivateSMSProviderRequest,
|
||||||
AddCustomOrgIAMPolicyResponse,
|
ActivateSMSProviderResponse,
|
||||||
AddIAMMemberRequest,
|
AddCustomDomainPolicyRequest,
|
||||||
AddIAMMemberResponse,
|
AddCustomOrgIAMPolicyResponse,
|
||||||
AddIDPToLoginPolicyRequest,
|
AddIAMMemberRequest,
|
||||||
AddIDPToLoginPolicyResponse,
|
AddIAMMemberResponse,
|
||||||
AddJWTIDPRequest,
|
AddIDPToLoginPolicyRequest,
|
||||||
AddJWTIDPResponse,
|
AddIDPToLoginPolicyResponse,
|
||||||
AddMultiFactorToLoginPolicyRequest,
|
AddJWTIDPRequest,
|
||||||
AddMultiFactorToLoginPolicyResponse,
|
AddJWTIDPResponse,
|
||||||
AddOIDCIDPRequest,
|
AddMultiFactorToLoginPolicyRequest,
|
||||||
AddOIDCIDPResponse,
|
AddMultiFactorToLoginPolicyResponse,
|
||||||
AddSecondFactorToLoginPolicyRequest,
|
AddOIDCIDPRequest,
|
||||||
AddSecondFactorToLoginPolicyResponse,
|
AddOIDCIDPResponse,
|
||||||
AddSMSProviderTwilioRequest,
|
AddSecondFactorToLoginPolicyRequest,
|
||||||
AddSMSProviderTwilioResponse,
|
AddSecondFactorToLoginPolicyResponse,
|
||||||
AddSMTPConfigRequest,
|
AddSMSProviderTwilioRequest,
|
||||||
AddSMTPConfigResponse,
|
AddSMSProviderTwilioResponse,
|
||||||
DeactivateIDPRequest,
|
AddSMTPConfigRequest,
|
||||||
DeactivateIDPResponse,
|
AddSMTPConfigResponse,
|
||||||
GetCustomDomainClaimedMessageTextRequest,
|
DeactivateIDPRequest,
|
||||||
GetCustomDomainClaimedMessageTextResponse,
|
DeactivateIDPResponse,
|
||||||
GetCustomDomainPolicyRequest,
|
DeactivateSMSProviderRequest,
|
||||||
GetCustomDomainPolicyResponse,
|
DeactivateSMSProviderResponse,
|
||||||
GetCustomInitMessageTextRequest,
|
GetCustomDomainClaimedMessageTextRequest,
|
||||||
GetCustomInitMessageTextResponse,
|
GetCustomDomainClaimedMessageTextResponse,
|
||||||
GetCustomLoginTextsRequest,
|
GetCustomDomainPolicyRequest,
|
||||||
GetCustomLoginTextsResponse,
|
GetCustomDomainPolicyResponse,
|
||||||
GetCustomPasswordlessRegistrationMessageTextRequest,
|
GetCustomInitMessageTextRequest,
|
||||||
GetCustomPasswordlessRegistrationMessageTextResponse,
|
GetCustomInitMessageTextResponse,
|
||||||
GetCustomPasswordResetMessageTextRequest,
|
GetCustomLoginTextsRequest,
|
||||||
GetCustomPasswordResetMessageTextResponse,
|
GetCustomLoginTextsResponse,
|
||||||
GetCustomVerifyEmailMessageTextRequest,
|
GetCustomPasswordlessRegistrationMessageTextRequest,
|
||||||
GetCustomVerifyEmailMessageTextResponse,
|
GetCustomPasswordlessRegistrationMessageTextResponse,
|
||||||
GetCustomVerifyPhoneMessageTextRequest,
|
GetCustomPasswordResetMessageTextRequest,
|
||||||
GetCustomVerifyPhoneMessageTextResponse,
|
GetCustomPasswordResetMessageTextResponse,
|
||||||
GetDefaultDomainClaimedMessageTextRequest,
|
GetCustomVerifyEmailMessageTextRequest,
|
||||||
GetDefaultDomainClaimedMessageTextResponse,
|
GetCustomVerifyEmailMessageTextResponse,
|
||||||
GetDefaultInitMessageTextRequest,
|
GetCustomVerifyPhoneMessageTextRequest,
|
||||||
GetDefaultInitMessageTextResponse,
|
GetCustomVerifyPhoneMessageTextResponse,
|
||||||
GetDefaultLanguageRequest,
|
GetDefaultDomainClaimedMessageTextRequest,
|
||||||
GetDefaultLanguageResponse,
|
GetDefaultDomainClaimedMessageTextResponse,
|
||||||
GetDefaultLoginTextsRequest,
|
GetDefaultInitMessageTextRequest,
|
||||||
GetDefaultLoginTextsResponse,
|
GetDefaultInitMessageTextResponse,
|
||||||
GetDefaultPasswordlessRegistrationMessageTextRequest,
|
GetDefaultLanguageRequest,
|
||||||
GetDefaultPasswordlessRegistrationMessageTextResponse,
|
GetDefaultLanguageResponse,
|
||||||
GetDefaultPasswordResetMessageTextRequest,
|
GetDefaultLoginTextsRequest,
|
||||||
GetDefaultPasswordResetMessageTextResponse,
|
GetDefaultLoginTextsResponse,
|
||||||
GetDefaultVerifyEmailMessageTextRequest,
|
GetDefaultPasswordlessRegistrationMessageTextRequest,
|
||||||
GetDefaultVerifyEmailMessageTextResponse,
|
GetDefaultPasswordlessRegistrationMessageTextResponse,
|
||||||
GetDefaultVerifyPhoneMessageTextRequest,
|
GetDefaultPasswordResetMessageTextRequest,
|
||||||
GetDefaultVerifyPhoneMessageTextResponse,
|
GetDefaultPasswordResetMessageTextResponse,
|
||||||
GetDomainPolicyRequest,
|
GetDefaultVerifyEmailMessageTextRequest,
|
||||||
GetDomainPolicyResponse,
|
GetDefaultVerifyEmailMessageTextResponse,
|
||||||
GetFileSystemNotificationProviderRequest,
|
GetDefaultVerifyPhoneMessageTextRequest,
|
||||||
GetFileSystemNotificationProviderResponse,
|
GetDefaultVerifyPhoneMessageTextResponse,
|
||||||
GetIDPByIDRequest,
|
GetDomainPolicyRequest,
|
||||||
GetIDPByIDResponse,
|
GetDomainPolicyResponse,
|
||||||
GetLabelPolicyRequest,
|
GetFileSystemNotificationProviderRequest,
|
||||||
GetLabelPolicyResponse,
|
GetFileSystemNotificationProviderResponse,
|
||||||
GetLockoutPolicyRequest,
|
GetIDPByIDRequest,
|
||||||
GetLockoutPolicyResponse,
|
GetIDPByIDResponse,
|
||||||
GetLoginPolicyRequest,
|
GetLabelPolicyRequest,
|
||||||
GetLoginPolicyResponse,
|
GetLabelPolicyResponse,
|
||||||
GetLogNotificationProviderRequest,
|
GetLockoutPolicyRequest,
|
||||||
GetLogNotificationProviderResponse,
|
GetLockoutPolicyResponse,
|
||||||
GetOIDCSettingsRequest,
|
GetLoginPolicyRequest,
|
||||||
GetOIDCSettingsResponse,
|
GetLoginPolicyResponse,
|
||||||
GetPasswordAgePolicyRequest,
|
GetLogNotificationProviderRequest,
|
||||||
GetPasswordAgePolicyResponse,
|
GetLogNotificationProviderResponse,
|
||||||
GetPasswordComplexityPolicyRequest,
|
GetOIDCSettingsRequest,
|
||||||
GetPasswordComplexityPolicyResponse,
|
GetOIDCSettingsResponse,
|
||||||
GetPreviewLabelPolicyRequest,
|
GetPasswordAgePolicyRequest,
|
||||||
GetPreviewLabelPolicyResponse,
|
GetPasswordAgePolicyResponse,
|
||||||
GetPrivacyPolicyRequest,
|
GetPasswordComplexityPolicyRequest,
|
||||||
GetPrivacyPolicyResponse,
|
GetPasswordComplexityPolicyResponse,
|
||||||
GetSecretGeneratorRequest,
|
GetPreviewLabelPolicyRequest,
|
||||||
GetSecretGeneratorResponse,
|
GetPreviewLabelPolicyResponse,
|
||||||
GetSMSProviderRequest,
|
GetPrivacyPolicyRequest,
|
||||||
GetSMSProviderResponse,
|
GetPrivacyPolicyResponse,
|
||||||
GetSMTPConfigRequest,
|
GetSecretGeneratorRequest,
|
||||||
GetSMTPConfigResponse,
|
GetSecretGeneratorResponse,
|
||||||
GetSupportedLanguagesRequest,
|
GetSMSProviderRequest,
|
||||||
GetSupportedLanguagesResponse,
|
GetSMSProviderResponse,
|
||||||
IDPQuery,
|
GetSMTPConfigRequest,
|
||||||
ListFailedEventsRequest,
|
GetSMTPConfigResponse,
|
||||||
ListFailedEventsResponse,
|
GetSupportedLanguagesRequest,
|
||||||
ListIAMMemberRolesRequest,
|
GetSupportedLanguagesResponse,
|
||||||
ListIAMMemberRolesResponse,
|
IDPQuery,
|
||||||
ListIAMMembersRequest,
|
ListFailedEventsRequest,
|
||||||
ListIAMMembersResponse,
|
ListFailedEventsResponse,
|
||||||
ListIDPsRequest,
|
ListIAMMemberRolesRequest,
|
||||||
ListIDPsResponse,
|
ListIAMMemberRolesResponse,
|
||||||
ListLoginPolicyIDPsRequest,
|
ListIAMMembersRequest,
|
||||||
ListLoginPolicyIDPsResponse,
|
ListIAMMembersResponse,
|
||||||
ListLoginPolicyMultiFactorsRequest,
|
ListIDPsRequest,
|
||||||
ListLoginPolicyMultiFactorsResponse,
|
ListIDPsResponse,
|
||||||
ListLoginPolicySecondFactorsRequest,
|
ListLoginPolicyIDPsRequest,
|
||||||
ListLoginPolicySecondFactorsResponse,
|
ListLoginPolicyIDPsResponse,
|
||||||
ListSecretGeneratorsRequest,
|
ListLoginPolicyMultiFactorsRequest,
|
||||||
ListSecretGeneratorsResponse,
|
ListLoginPolicyMultiFactorsResponse,
|
||||||
ListSMSProvidersRequest,
|
ListLoginPolicySecondFactorsRequest,
|
||||||
ListSMSProvidersResponse,
|
ListLoginPolicySecondFactorsResponse,
|
||||||
ListViewsRequest,
|
ListSecretGeneratorsRequest,
|
||||||
ListViewsResponse,
|
ListSecretGeneratorsResponse,
|
||||||
ReactivateIDPRequest,
|
ListSMSProvidersRequest,
|
||||||
ReactivateIDPResponse,
|
ListSMSProvidersResponse,
|
||||||
RemoveFailedEventRequest,
|
ListViewsRequest,
|
||||||
RemoveFailedEventResponse,
|
ListViewsResponse,
|
||||||
RemoveIAMMemberRequest,
|
ReactivateIDPRequest,
|
||||||
RemoveIAMMemberResponse,
|
ReactivateIDPResponse,
|
||||||
RemoveIDPFromLoginPolicyRequest,
|
RemoveFailedEventRequest,
|
||||||
RemoveIDPFromLoginPolicyResponse,
|
RemoveFailedEventResponse,
|
||||||
RemoveIDPRequest,
|
RemoveIAMMemberRequest,
|
||||||
RemoveIDPResponse,
|
RemoveIAMMemberResponse,
|
||||||
RemoveLabelPolicyFontRequest,
|
RemoveIDPFromLoginPolicyRequest,
|
||||||
RemoveLabelPolicyFontResponse,
|
RemoveIDPFromLoginPolicyResponse,
|
||||||
RemoveLabelPolicyIconDarkRequest,
|
RemoveIDPRequest,
|
||||||
RemoveLabelPolicyIconDarkResponse,
|
RemoveIDPResponse,
|
||||||
RemoveLabelPolicyIconRequest,
|
RemoveLabelPolicyFontRequest,
|
||||||
RemoveLabelPolicyIconResponse,
|
RemoveLabelPolicyFontResponse,
|
||||||
RemoveLabelPolicyLogoDarkRequest,
|
RemoveLabelPolicyIconDarkRequest,
|
||||||
RemoveLabelPolicyLogoDarkResponse,
|
RemoveLabelPolicyIconDarkResponse,
|
||||||
RemoveLabelPolicyLogoRequest,
|
RemoveLabelPolicyIconRequest,
|
||||||
RemoveLabelPolicyLogoResponse,
|
RemoveLabelPolicyIconResponse,
|
||||||
RemoveMultiFactorFromLoginPolicyRequest,
|
RemoveLabelPolicyLogoDarkRequest,
|
||||||
RemoveMultiFactorFromLoginPolicyResponse,
|
RemoveLabelPolicyLogoDarkResponse,
|
||||||
RemoveSecondFactorFromLoginPolicyRequest,
|
RemoveLabelPolicyLogoRequest,
|
||||||
RemoveSecondFactorFromLoginPolicyResponse,
|
RemoveLabelPolicyLogoResponse,
|
||||||
ResetCustomDomainPolicyToDefaultRequest,
|
RemoveMultiFactorFromLoginPolicyRequest,
|
||||||
ResetCustomDomainPolicyToDefaultResponse,
|
RemoveMultiFactorFromLoginPolicyResponse,
|
||||||
ResetCustomLoginTextsToDefaultRequest,
|
RemoveSecondFactorFromLoginPolicyRequest,
|
||||||
ResetCustomLoginTextsToDefaultResponse,
|
RemoveSecondFactorFromLoginPolicyResponse,
|
||||||
SetCustomLoginTextsRequest,
|
RemoveSMSProviderRequest,
|
||||||
SetCustomLoginTextsResponse,
|
RemoveSMSProviderResponse,
|
||||||
SetDefaultDomainClaimedMessageTextRequest,
|
ResetCustomDomainPolicyToDefaultRequest,
|
||||||
SetDefaultDomainClaimedMessageTextResponse,
|
ResetCustomDomainPolicyToDefaultResponse,
|
||||||
SetDefaultInitMessageTextRequest,
|
ResetCustomLoginTextsToDefaultRequest,
|
||||||
SetDefaultInitMessageTextResponse,
|
ResetCustomLoginTextsToDefaultResponse,
|
||||||
SetDefaultLanguageRequest,
|
SetCustomLoginTextsRequest,
|
||||||
SetDefaultLanguageResponse,
|
SetCustomLoginTextsResponse,
|
||||||
SetDefaultPasswordlessRegistrationMessageTextRequest,
|
SetDefaultDomainClaimedMessageTextRequest,
|
||||||
SetDefaultPasswordlessRegistrationMessageTextResponse,
|
SetDefaultDomainClaimedMessageTextResponse,
|
||||||
SetDefaultPasswordResetMessageTextRequest,
|
SetDefaultInitMessageTextRequest,
|
||||||
SetDefaultPasswordResetMessageTextResponse,
|
SetDefaultInitMessageTextResponse,
|
||||||
SetDefaultVerifyEmailMessageTextRequest,
|
SetDefaultLanguageRequest,
|
||||||
SetDefaultVerifyEmailMessageTextResponse,
|
SetDefaultLanguageResponse,
|
||||||
SetDefaultVerifyPhoneMessageTextRequest,
|
SetDefaultPasswordlessRegistrationMessageTextRequest,
|
||||||
SetDefaultVerifyPhoneMessageTextResponse,
|
SetDefaultPasswordlessRegistrationMessageTextResponse,
|
||||||
SetUpOrgRequest,
|
SetDefaultPasswordResetMessageTextRequest,
|
||||||
SetUpOrgResponse,
|
SetDefaultPasswordResetMessageTextResponse,
|
||||||
UpdateCustomDomainPolicyRequest,
|
SetDefaultVerifyEmailMessageTextRequest,
|
||||||
UpdateCustomDomainPolicyResponse,
|
SetDefaultVerifyEmailMessageTextResponse,
|
||||||
UpdateDomainPolicyRequest,
|
SetDefaultVerifyPhoneMessageTextRequest,
|
||||||
UpdateDomainPolicyResponse,
|
SetDefaultVerifyPhoneMessageTextResponse,
|
||||||
UpdateIAMMemberRequest,
|
SetUpOrgRequest,
|
||||||
UpdateIAMMemberResponse,
|
SetUpOrgResponse,
|
||||||
UpdateIDPJWTConfigRequest,
|
UpdateCustomDomainPolicyRequest,
|
||||||
UpdateIDPJWTConfigResponse,
|
UpdateCustomDomainPolicyResponse,
|
||||||
UpdateIDPOIDCConfigRequest,
|
UpdateDomainPolicyRequest,
|
||||||
UpdateIDPOIDCConfigResponse,
|
UpdateDomainPolicyResponse,
|
||||||
UpdateIDPRequest,
|
UpdateIAMMemberRequest,
|
||||||
UpdateIDPResponse,
|
UpdateIAMMemberResponse,
|
||||||
UpdateLabelPolicyRequest,
|
UpdateIDPJWTConfigRequest,
|
||||||
UpdateLabelPolicyResponse,
|
UpdateIDPJWTConfigResponse,
|
||||||
UpdateLockoutPolicyRequest,
|
UpdateIDPOIDCConfigRequest,
|
||||||
UpdateLockoutPolicyResponse,
|
UpdateIDPOIDCConfigResponse,
|
||||||
UpdateLoginPolicyRequest,
|
UpdateIDPRequest,
|
||||||
UpdateLoginPolicyResponse,
|
UpdateIDPResponse,
|
||||||
UpdateOIDCSettingsRequest,
|
UpdateLabelPolicyRequest,
|
||||||
UpdateOIDCSettingsResponse,
|
UpdateLabelPolicyResponse,
|
||||||
UpdatePasswordAgePolicyRequest,
|
UpdateLockoutPolicyRequest,
|
||||||
UpdatePasswordAgePolicyResponse,
|
UpdateLockoutPolicyResponse,
|
||||||
UpdatePasswordComplexityPolicyRequest,
|
UpdateLoginPolicyRequest,
|
||||||
UpdatePasswordComplexityPolicyResponse,
|
UpdateLoginPolicyResponse,
|
||||||
UpdatePrivacyPolicyRequest,
|
UpdateOIDCSettingsRequest,
|
||||||
UpdatePrivacyPolicyResponse,
|
UpdateOIDCSettingsResponse,
|
||||||
UpdateSecretGeneratorRequest,
|
UpdatePasswordAgePolicyRequest,
|
||||||
UpdateSecretGeneratorResponse,
|
UpdatePasswordAgePolicyResponse,
|
||||||
UpdateSMSProviderTwilioRequest,
|
UpdatePasswordComplexityPolicyRequest,
|
||||||
UpdateSMSProviderTwilioResponse,
|
UpdatePasswordComplexityPolicyResponse,
|
||||||
UpdateSMSProviderTwilioTokenRequest,
|
UpdatePrivacyPolicyRequest,
|
||||||
UpdateSMSProviderTwilioTokenResponse,
|
UpdatePrivacyPolicyResponse,
|
||||||
UpdateSMTPConfigPasswordRequest,
|
UpdateSecretGeneratorRequest,
|
||||||
UpdateSMTPConfigPasswordResponse,
|
UpdateSecretGeneratorResponse,
|
||||||
UpdateSMTPConfigRequest,
|
UpdateSMSProviderTwilioRequest,
|
||||||
UpdateSMTPConfigResponse,
|
UpdateSMSProviderTwilioResponse,
|
||||||
|
UpdateSMSProviderTwilioTokenRequest,
|
||||||
|
UpdateSMSProviderTwilioTokenResponse,
|
||||||
|
UpdateSMTPConfigPasswordRequest,
|
||||||
|
UpdateSMTPConfigPasswordResponse,
|
||||||
|
UpdateSMTPConfigRequest,
|
||||||
|
UpdateSMTPConfigResponse,
|
||||||
} from '../proto/generated/zitadel/admin_pb';
|
} from '../proto/generated/zitadel/admin_pb';
|
||||||
import { SearchQuery } from '../proto/generated/zitadel/member_pb';
|
import { SearchQuery } from '../proto/generated/zitadel/member_pb';
|
||||||
import { ListQuery } from '../proto/generated/zitadel/object_pb';
|
import { ListQuery } from '../proto/generated/zitadel/object_pb';
|
||||||
@ -504,6 +510,24 @@ export class AdminService {
|
|||||||
return this.grpcService.admin.updateSMSProviderTwilio(req, null).then((resp) => resp.toObject());
|
return this.grpcService.admin.updateSMSProviderTwilio(req, null).then((resp) => resp.toObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public removeSMSProvider(id: string): Promise<RemoveSMSProviderResponse.AsObject> {
|
||||||
|
const req = new RemoveSMSProviderRequest();
|
||||||
|
req.setId(id);
|
||||||
|
return this.grpcService.admin.removeSMSProvider(req, null).then((resp) => resp.toObject());
|
||||||
|
}
|
||||||
|
|
||||||
|
public activateSMSProvider(id: string): Promise<ActivateSMSProviderResponse.AsObject> {
|
||||||
|
const req = new ActivateSMSProviderRequest();
|
||||||
|
req.setId(id);
|
||||||
|
return this.grpcService.admin.activateSMSProvider(req, null).then((resp) => resp.toObject());
|
||||||
|
}
|
||||||
|
|
||||||
|
public deactivateSMSProvider(id: string): Promise<DeactivateSMSProviderResponse.AsObject> {
|
||||||
|
const req = new DeactivateSMSProviderRequest();
|
||||||
|
req.setId(id);
|
||||||
|
return this.grpcService.admin.deactivateSMSProvider(req, null).then((resp) => resp.toObject());
|
||||||
|
}
|
||||||
|
|
||||||
public updateSMSProviderTwilioToken(
|
public updateSMSProviderTwilioToken(
|
||||||
req: UpdateSMSProviderTwilioTokenRequest,
|
req: UpdateSMSProviderTwilioTokenRequest,
|
||||||
): Promise<UpdateSMSProviderTwilioTokenResponse.AsObject> {
|
): Promise<UpdateSMSProviderTwilioTokenResponse.AsObject> {
|
||||||
|
@ -106,6 +106,7 @@
|
|||||||
"FINISHED": "Fertig",
|
"FINISHED": "Fertig",
|
||||||
"CHANGE": "Ändern",
|
"CHANGE": "Ändern",
|
||||||
"REACTIVATE": "Aktivieren",
|
"REACTIVATE": "Aktivieren",
|
||||||
|
"ACTIVATE": "Aktivieren",
|
||||||
"DEACTIVATE": "Deaktivieren",
|
"DEACTIVATE": "Deaktivieren",
|
||||||
"REFRESH": "Aktualisieren",
|
"REFRESH": "Aktualisieren",
|
||||||
"LOGIN": "Einloggen",
|
"LOGIN": "Einloggen",
|
||||||
@ -896,11 +897,21 @@
|
|||||||
"PROVIDER": "SMS Anbieter",
|
"PROVIDER": "SMS Anbieter",
|
||||||
"ADDPROVIDER": "Anbieter hinzufügen",
|
"ADDPROVIDER": "Anbieter hinzufügen",
|
||||||
"ADDPROVIDERDESCRIPTION": "Wählen Sie einen der verfügbaren Anbieter und geben Sie die erforderlichen Daten ein.",
|
"ADDPROVIDERDESCRIPTION": "Wählen Sie einen der verfügbaren Anbieter und geben Sie die erforderlichen Daten ein.",
|
||||||
|
"REMOVEPROVIDER": "Anbieter entfernen",
|
||||||
|
"REMOVEPROVIDER_DESC": "Sie sind im Begriff eine Konfiguration zu löschen. Wollen Sie fortfahren?",
|
||||||
|
"SMSPROVIDERSTATE": {
|
||||||
|
"0": "Unbekannt",
|
||||||
|
"1": "Aktiv",
|
||||||
|
"2": "Inaktiv"
|
||||||
|
},
|
||||||
|
"ACTIVATED": "Anbieter aktiviert.",
|
||||||
|
"DEACTIVATED": "Anbieter deaktiviert.",
|
||||||
"TWILIO": {
|
"TWILIO": {
|
||||||
"SID": "Sid",
|
"SID": "Sid",
|
||||||
"TOKEN": "Token",
|
"TOKEN": "Token",
|
||||||
"SENDERNUMBER": "Sender Number",
|
"SENDERNUMBER": "Sender Number",
|
||||||
"ADDED": "Twilio erfolgreich hinzugefügt.",
|
"ADDED": "Twilio erfolgreich hinzugefügt.",
|
||||||
|
"REMOVED": "Twilio entfernt",
|
||||||
"CHANGETOKEN": "Token ändern",
|
"CHANGETOKEN": "Token ändern",
|
||||||
"SETTOKEN": "Token setzen",
|
"SETTOKEN": "Token setzen",
|
||||||
"TOKENSET": "Token erfolgreich gesetzt."
|
"TOKENSET": "Token erfolgreich gesetzt."
|
||||||
|
@ -106,6 +106,7 @@
|
|||||||
"FINISHED": "Close",
|
"FINISHED": "Close",
|
||||||
"CHANGE": "Change",
|
"CHANGE": "Change",
|
||||||
"REACTIVATE": "Reactivate",
|
"REACTIVATE": "Reactivate",
|
||||||
|
"ACTIVATE": "Activate",
|
||||||
"DEACTIVATE": "Deactivate",
|
"DEACTIVATE": "Deactivate",
|
||||||
"REFRESH": "Refresh",
|
"REFRESH": "Refresh",
|
||||||
"LOGIN": "Login",
|
"LOGIN": "Login",
|
||||||
@ -874,7 +875,8 @@
|
|||||||
"LANGUAGE": {
|
"LANGUAGE": {
|
||||||
"de": "Deutsch",
|
"de": "Deutsch",
|
||||||
"it": "Italiano",
|
"it": "Italiano",
|
||||||
"en": "English"
|
"en": "English",
|
||||||
|
"fr": "Français"
|
||||||
},
|
},
|
||||||
"SMTP": {
|
"SMTP": {
|
||||||
"TITLE": "SMTP Settings",
|
"TITLE": "SMTP Settings",
|
||||||
@ -895,11 +897,21 @@
|
|||||||
"PROVIDER": "SMS Provider",
|
"PROVIDER": "SMS Provider",
|
||||||
"ADDPROVIDER": "Add SMS Provider",
|
"ADDPROVIDER": "Add SMS Provider",
|
||||||
"ADDPROVIDERDESCRIPTION": "Choose one of the available providers and enter the required data.",
|
"ADDPROVIDERDESCRIPTION": "Choose one of the available providers and enter the required data.",
|
||||||
|
"REMOVEPROVIDER": "Remove Provider",
|
||||||
|
"REMOVEPROVIDER_DESC": "You are about to delete a provider configuration. Do you want to continue?",
|
||||||
|
"SMSPROVIDERSTATE": {
|
||||||
|
"0": "Unspecified",
|
||||||
|
"1": "Active",
|
||||||
|
"2": "Inactive"
|
||||||
|
},
|
||||||
|
"ACTIVATED": "Provider activated.",
|
||||||
|
"DEACTIVATED": "Provider deactivated.",
|
||||||
"TWILIO": {
|
"TWILIO": {
|
||||||
"SID": "Sid",
|
"SID": "Sid",
|
||||||
"TOKEN": "Token",
|
"TOKEN": "Token",
|
||||||
"SENDERNUMBER": "Sender Number",
|
"SENDERNUMBER": "Sender Number",
|
||||||
"ADDED": "Twilio added successfully.",
|
"ADDED": "Twilio added successfully.",
|
||||||
|
"REMOVED": "Twilio removed",
|
||||||
"CHANGETOKEN": "Change Token",
|
"CHANGETOKEN": "Change Token",
|
||||||
"SETTOKEN": "Set Token",
|
"SETTOKEN": "Set Token",
|
||||||
"TOKENSET": "Token successfully set."
|
"TOKENSET": "Token successfully set."
|
||||||
|
@ -106,6 +106,7 @@
|
|||||||
"FINISHED": "Fermer",
|
"FINISHED": "Fermer",
|
||||||
"CHANGE": "Modifier",
|
"CHANGE": "Modifier",
|
||||||
"REACTIVATE": "Réactiver",
|
"REACTIVATE": "Réactiver",
|
||||||
|
"ACTIVATE": "Activer",
|
||||||
"DEACTIVATE": "Désactiver",
|
"DEACTIVATE": "Désactiver",
|
||||||
"REFRESH": "Rafraîchir",
|
"REFRESH": "Rafraîchir",
|
||||||
"LOGIN": "Connexion",
|
"LOGIN": "Connexion",
|
||||||
@ -896,11 +897,21 @@
|
|||||||
"PROVIDER": "Fournisseur de SMS",
|
"PROVIDER": "Fournisseur de SMS",
|
||||||
"ADDPROVIDER": "Ajouter un fournisseur de SMS",
|
"ADDPROVIDER": "Ajouter un fournisseur de SMS",
|
||||||
"ADDPROVIDERDESCRIPTION": "Choisissez l'un des fournisseurs disponibles et saisissez les données requises.",
|
"ADDPROVIDERDESCRIPTION": "Choisissez l'un des fournisseurs disponibles et saisissez les données requises.",
|
||||||
|
"REMOVEPROVIDER": "Supprimer le fournisseur",
|
||||||
|
"REMOVEPROVIDER_DESC": "Vous êtes sur le point de supprimer une configuration de fournisseur. Voulez-vous continuer",
|
||||||
|
"SMSPROVIDERSTATE": {
|
||||||
|
"0": "non spécifié",
|
||||||
|
"1": "Actif",
|
||||||
|
"2": "Inactif"
|
||||||
|
},
|
||||||
|
"ACTIVATED": "Fournisseur actif.",
|
||||||
|
"DEACTIVATED": "Fournisseur inactif.",
|
||||||
"TWILIO": {
|
"TWILIO": {
|
||||||
"SID": "Sid",
|
"SID": "Sid",
|
||||||
"TOKEN": "Jeton",
|
"TOKEN": "Jeton",
|
||||||
"SENDERNUMBER": "Numéro d'expéditeur",
|
"SENDERNUMBER": "Numéro d'expéditeur",
|
||||||
"ADDED": "Twilio a été ajouté avec succès.",
|
"ADDED": "Twilio a été ajouté avec succès.",
|
||||||
|
"REMOVED": "Twilio a été supprimé avec succès",
|
||||||
"CHANGETOKEN": "Changer de Token",
|
"CHANGETOKEN": "Changer de Token",
|
||||||
"SETTOKEN": "Définir le jeton",
|
"SETTOKEN": "Définir le jeton",
|
||||||
"TOKENSET": "Le jeton a été défini avec succès."
|
"TOKENSET": "Le jeton a été défini avec succès."
|
||||||
|
@ -106,6 +106,7 @@
|
|||||||
"FINISHED": "Chiudi",
|
"FINISHED": "Chiudi",
|
||||||
"CHANGE": "Cambia",
|
"CHANGE": "Cambia",
|
||||||
"REACTIVATE": "Riattiva",
|
"REACTIVATE": "Riattiva",
|
||||||
|
"ACTIVATE": "Attiva",
|
||||||
"DEACTIVATE": "Disattiva",
|
"DEACTIVATE": "Disattiva",
|
||||||
"REFRESH": "Aggiorna",
|
"REFRESH": "Aggiorna",
|
||||||
"LOGIN": "Accedi",
|
"LOGIN": "Accedi",
|
||||||
@ -896,11 +897,21 @@
|
|||||||
"PROVIDER": "Fornitore SMS",
|
"PROVIDER": "Fornitore SMS",
|
||||||
"ADDPROVIDER": "Aggiungi fornitore SMS",
|
"ADDPROVIDER": "Aggiungi fornitore SMS",
|
||||||
"ADDPROVIDERDESCRIPTION": "Scegli uno dei provider disponibili e inserisci i dati richiesti.",
|
"ADDPROVIDERDESCRIPTION": "Scegli uno dei provider disponibili e inserisci i dati richiesti.",
|
||||||
|
"REMOVEPROVIDER": "Elimina configurazione",
|
||||||
|
"REMOVEPROVIDER_DESC": "Stai per eliminare una configurazione. Vuoi continuare?",
|
||||||
|
"SMSPROVIDERSTATE": {
|
||||||
|
"0": "Non specificato",
|
||||||
|
"1": "Attivo",
|
||||||
|
"2": "Inattivo"
|
||||||
|
},
|
||||||
|
"ACTIVATED": "Fornitore attivato.",
|
||||||
|
"DEACTIVATED": "Fornitore disattivato.",
|
||||||
"TWILIO": {
|
"TWILIO": {
|
||||||
"SID": "Sid",
|
"SID": "Sid",
|
||||||
"TOKEN": "Token",
|
"TOKEN": "Token",
|
||||||
"SENDERNUMBER": "Sender Number",
|
"SENDERNUMBER": "Sender Number",
|
||||||
"ADDED": "Twilio aggiunto con successo.",
|
"ADDED": "Twilio aggiunto con successo.",
|
||||||
|
"REMOVED": "Twilio rimosso con successo.",
|
||||||
"CHANGETOKEN": "Cambia Token",
|
"CHANGETOKEN": "Cambia Token",
|
||||||
"SETTOKEN": "Cambia Token",
|
"SETTOKEN": "Cambia Token",
|
||||||
"TOKENSET": "Token cambiato con successo."
|
"TOKENSET": "Token cambiato con successo."
|
||||||
|
Loading…
x
Reference in New Issue
Block a user