Register Asterisk as a SIP extension

I have an IVR application that can only receive calls as a SIP trunk, it has no ability to register as an extension to a PBX or cloud provider. I have multiple customers that are migrating from on prem PBXs to cloud providers, who seem to prefer extensions to trunks. I am wondering if it is possible to use Asterisk as a SIP device emulator to register to the cloud provider and pass the calls back to the IVR over a SIP trunk. Does Asterisk have this capability?
TIA to the community.

SIP does not use the terms trunk and extension and Asterisk doesn’t use the term trunk, and doesn’t use extension in the sense that you are using it.

Any endpoint can be configured to not authenticate, or to authenticate in one or both directions, potentially with different secrets in each direction. Asterisk can use a hard coded URI for outbound requests, or accept incoming registrations. It can identify incoming requests by source IP address, From user, or the full contents of an arbitrary header.

It can be configured to make any endpoint issue outbound registrations, although having both outbound and inbound registration, at the same time, on the same endpoint, is not a sensible thing to do.

These options are independent on each leg on the call.

People using Asterisk for small systems typically use outbound authentication, with no reverse authentication, and outbound registration, when accessing the provider. This is what I think you mean by emulating an extension. Note though that, only offering this option is a warning that the provider doesn’t really want to talk to PABXes, and you may find they impose limits on the total number of active calls, which may be as low as one, making the “trunk” not actually meet the defining characteristic of a trunk, namely carrying multiple calls in parallel.

On Wednesday 15 January 2025 at 18:19:29, tcuroso via Asterisk Community
wrote:

I am wondering if it is possible to use Asterisk as a SIP device emulator to
register to the cloud provider and pass the calls back to the IVR over a SIP
trunk.

It is.

Simply define two endpoints, one with authentication (registering to the cloud
provider) and one without (the SIP “trunk”) and tell the dialplan to accept
any call in from the first endpoint, dial out to the second, and bridge them.

Antony.

–
Python is executable pseudocode.
Perl is executable line noise.

1 Like

I should probably add that Asterisk is over kill, for your application, and as you are not familiar with it, you might be better using a SIP proxy, like Kamailio.

I have no experience of it, but if you have no experience of Asterisk, the learning curve may be similar.