What is exposed by Extensions API method signatures needs to be defined/narrowed by interfaces.
This requires design discussion on what can or can not be customized by 3rd party developers.
Currently preOutboundAction takes an Object parameter and returns an ExtensionResponse with an Object payload hence is too generic.
To maintain more control of RC, we can limit 3rd party customization of RC by only exposing specific customizable properties of RC like system-wide or session-wide outbound-proxy or outbound-sms properties.
To allow customization of RC functions/logic, different approach might be necessary.
Currently the Extension method signatures depend on specific exposed classes in extensions.api
telephony.api.CreateCall maps to extension.api.CallRequest
- properties in
IncomingPhoneNumbersEP constructsextension.api.ApiRequest
There is currently no exposed extension.api class for CreateSmsSession nor UssdCall requests.
- There is no interface to customize RC system wide or session wide configurations like
outbound-proxy or outbound-sms.
What is exposed by Extensions API method signatures needs to be defined/narrowed by interfaces.
This requires design discussion on what can or can not be customized by 3rd party developers.
Currently
preOutboundActiontakes anObjectparameter and returns anExtensionResponsewith anObjectpayload hence is too generic.To maintain more control of RC, we can limit 3rd party customization of RC by only exposing specific customizable properties of RC like system-wide or session-wide
outbound-proxyoroutbound-smsproperties.To allow customization of RC functions/logic, different approach might be necessary.
Currently the Extension method signatures depend on specific exposed classes in extensions.api
telephony.api.CreateCallmaps toextension.api.CallRequestIncomingPhoneNumbersEPconstructsextension.api.ApiRequestThere is currently no exposed extension.api class for
CreateSmsSessionnorUssdCallrequests.outbound-proxyoroutbound-sms.