-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to install #7
Comments
first, have a look at where ansible looks for its configuration files. Your problem is that ansible is not finding your In my case, put my ansible config file under my home directory, and configure it to look for roles under a 'git' folder where I have them all checked out:
and you can see that I have that role in the configured location:
With that in place, you can run ansible-playbook from any folder and it will find your roles. (By the way, running ansible locally is not something I do, so I am not sure how that will work out for you. I find it easier to run ansible from my laptop against the server(s) that I want to configure) |
Thanks for the fast response. What I had to do was set up my folders like so:
Basically it was looking for a roles folder under the current directory, and then a folder under that matching the role name. Then it started working. Sorry if this is the wrong place to ask - but what would be the next steps I should take? My goal is to have incoming calls on Freeswitch handled by IVRs (these will be different applications based on the number called). Users will interact with the IVRs using voice, so I want to use google text to speech/speech to text/dialogflow, which is how I found your freeswitch modules repository originally. Based on the examples in your modules repo (I'm looking at the google_tts.js as a basic example), I'll need drachtio-server, so I've installed that using your ansible-role-drachtio repo. So I have drachtio-fsmrf and drachtio-server installed. What I'm confused about now is how I configure freeswitch (or drachtio) so that it knows what application to run to handle the call when a call comes in, so I can actually get developing. For example, if I dial extension 4000 I want the call to be handled by application A, where as if I dial extension 4001 I want the call to be handled by application B. etc. In plain Freeswitch this can be done by setting up a dialplan for each extension that uses a javascript action, but I'm not sure how to do this using drachtio. I saw the mrf.xml file in the freeswitch dialplan folder, but it looks like I shouldn't be touching this and instead I should configure it somewhere else. Can you please point me in the right direction? |
Hi there, I think I've made a little progress. In /etc/drachtio.conf.xml I've uncommented the request-handlers tag and put the url to an API I've created, as per https://drachtio.org/docs/drachtio-server#request-handlers-section My API is receiving the request when I try to make a call which is good. Currently my API just logs the requests and responds with the below rejection (example from the link above).
In the logged request, the fromUser seems to be 0000000000000001 followed by the server IP address, and the toUser 0000000000000001 followed by some other numbers I don't recognise. The toUser number seems to be the same no matter what extension I dial. How would I determine what extension number was called in Freeswitch so I can respond with the appropriate "route" response with the url to the application which should handle the call? I had a look at your sample app here (https://github.com/davehorton/drachtio-sample-webapp) and it looks like the toUser should be the field I want, just not sure how to get the matching number dialled from freeswitch. |
I'm unclear on your scenario and where freeswitch fits into it. Is freeswitch generating an inbound call to the drachtio server? |
Hi Dave Thanks for your time. I'll try to explain a bit better. What I want to achieve:
I don't have any SIP trunks configured on Freeswitch yet. Our call centre uses a different phone system currently, but we're looking at using Freeswitch for IVRs due to technical limitations with our current phone system. So for now, I just want to be able to log into Freeswitch with a softphone and call an extension to test an IVR (once the IVRs are developed). I started out building a regular Javascript Freeswitch application (mod_v8) which worked in a naive way - play an announcement, record audio for x seconds, then send the wav file to google to transcribe it and take action. But I would like to do the transcribing in real time instead to give a better user experience. I couldn't see an easy way to access the call audio and do speech-to-text in real time, which is how I came across Drachtio and your related projects. And as far as google integration with freeswitch goes, it looks like you've already built it. Apologies if I'm going about this the wrong way or mixed up how your projects work but here's what I've done from the beginning:
Haven't touched any other configuration anywhere apart from above. Once test calls are working I then plan to build IVR applications as per https://drachtio.org/docs/developer-guide/#outbound-connections. I tried making a call to a random number (5001) from a softphone using extension 4000 (Zoiper softphone) and I see this in the freeswitch logs (I changed server IP to
Based on this line it doesn't seem to be routing the call to Drachtio. How would I configure freeswitch send the call to drachtio server? Do I need to add a dialplan, if yes what would it look like? Also - am I understanding the way it works overall correctly (that the call goes from freeswitch to drachtio then is handled by drachtio), or should I be using your freeswitch modules without drachtio? Full freeswitch log for the test call if its of any use
|
OK, if you want to use drachtio in this scenario, you would need to do things in a completely different fashion:
So this is a very different way of working with freeswitch, and it may not be for you. |
Hi there
I'm new to Freeswitch and have been playing around with it recently. I saw your repository https://github.com/davehorton/drachtio-freeswitch-modules and wanted to try it out, which lead me to this repository.
How would I install this? I have never used ansible before.
I did a bit of googling and here is what I tried.
I have a clean install of Debian 10.
I installed ansible as per below:
I saw you posted this playbook on this issue (#6), which appears to be more current than the one on the readme:
I created a file with the above content called install.yml in the root directory of where I extracted the files to, and tried the following command (found online for running a playbook locally)
ansible-playbook -c local -i localhost, install.yml
But I got the following error:
I noticed there is no roles folder in the repository. Should this file be in a specific folder, is there another file I need to create, or am I way off?
Any guidance would be appreciated.
The text was updated successfully, but these errors were encountered: