@Bean
        @RefreshScope(proxyMode = ScopedProxyMode.DEFAULT)
        public PhoneCallOperator phoneCallOperator(
            final ConfigurableApplicationContext applicationContext,
            final CasConfigurationProperties casProperties) {
            return BeanSupplier.of(PhoneCallOperator.class)
                .when(TWILIO_CONDITION.given(applicationContext.getEnvironment()))
                .and(TWILIO_PHONE_CONDITION.given(applicationContext.getEnvironment()))
                .supply(() -> new TwilioPhoneCallOperator(casProperties.getSmsProvider().getTwilio()))
                .otherwise(PhoneCallOperator::noOp)
                .get();
        }
This is {@link CasTwilioAutoConfiguration}.

@author Misagh Moayyed
@since 5.1.0
support/cas-server-support-twilio/src/main/java/org/apereo/cas/config/CasTwilioAutoConfiguration.java