Comments (5)
ARI Originate will create a new channel and add it to a Stasis application ONLY. So, if you intend to dial both parties from Stasis Originate then you're fine (i.e. SIP trunk channel and then extension). ARI Originate can't be used, for example, to Originate a channel to a dialplan extension.
Normally, you would do something like
Originate Leg A
Originate Leg B
Create a Bridge
Join A and B to Bridge
ARI is way more specific than AMI Originate, in that you have total control over the flow of what happens, but if that's more control than you need, then maybe you should just use AMI, it may be easier and more appropriate for you use case.
Hope that helps.
from asternet.ari.
Hi Ben,
Thanks for the advice, I prefer the control that ARI gives you over the call from within a stasis application. From the examples I get how to create a new bridge and add an incoming call / channel to the newly created bridge.
The part where I'm stuck is making an outbound call/originating from e.g. extension 101 to 102 using method ActionClient.Channels.Originate:
//call
Channel ch = ActionClient.Channels.Originate("SIP/101", "102", "from-internal-custom", 1, "test_label", "hello-world", "originated", "test_caller_id", 60, null, e.Channel.Id, "", "");
ActionClient.Bridges.AddChannel(SimpleBridge.Id, ch.Id, "member");
(What is the endpoint string parameter? it's the only parameter without a default value)
I am just trying to create a simple POC...What are the minimum required parameters that needs to be passed through to this method to call ext 102 from ext 101?
Regards,
Rudi
from asternet.ari.
Personally, I would Originate each leg independently. So Originate a call to 101 an then to 102, and then join both channels into the bridge.
In Originate, the Endpoint is the channel you wish to dial. E.g. "SIP/101".
Hope I've not got the wrong end of the stick here?
from asternet.ari.
closed due to no response
from asternet.ari.
Sorry for replying on the closed thread ... but this is very similar to what exactly I am trying to achieve..
@skrusty If I follow your approach creating a channel A to 101 and then to 102 and bridging them together then this call is not behaving the way it should be, as 101 should be listening a ring or a busy signal till 102 is not picking up or is busy accordingly. What should we do to achieve the required behaviour?
from asternet.ari.
Related Issues (20)
- Use library in .net8
- Nuget package with .net standard support
- How to click2dial? HOT 1
- Having exception while trying to send notifications to SignalR connected clients based on DeviceStateChangeEvent
- Instructions
- PlayAsync throwing exception HOT 1
- References FUBAR HOT 1
- How to add recipient to Conference
- How to add recipient to Conference HOT 2
- SimpleConf RemoveUser throwing exception HOT 2
- How use GetObject /UpdateObject ? HOT 1
- does this API support "External Media"
- README.md: link is failed
- No errors when read only
- Asternet softphone
- Recording not working HOT 1
- Need help on how to use this library to send caller number to our CRM system
- ARI RTPStats fields have wrong data type
- Event filtering call on application does nothing
- class AsyncDispatcher : IAriDispatcher improperly uses 'await Task.Run(action)'. Because methods are 'events' with void return, await does not work HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from asternet.ari.