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
A default app should serve i18n audio via HTTP #570
Comments
If we do this, we should add a note somewhere, perhaps under a Performance section, that this should be offloaded to either direct filesystem access or a separate process. Also, how does this work with Asterisk? |
The intention of this is for apps where FS/* do not share a filesystem with the app to work out of the box. As yet Asterisk still does not play nicely with this idea, unlike every other IVR platform in existence :) |
Hi, to be performant can we implement something like
Disadvantage
Advantages
I might have misunderstood the original idea, but I think this captures it? Note: the other way should be somehow possible as well (recording an audio file, and then doing something with it on the AHN platform). |
@nathansamson Great suggestions! And good news:
This is already done! See #569
This is also done. See #557, which includes English and Italian "Hello World" prompts Regarding your caching questions, there is a document cache available in Virginia, which was the basis for our built-in HTTP server in Adhearsion. For now we've elected to leave the document cache out, but it will likely be resurrected as a separate plugin. Check the implementation and documentation. However, the caching we've done so far has been for GRXML and SSML documents, since they can be expensive to generate. We've not done caching for audio files, since they are static and don't require computation time to create. Can you go into more detail about what you are trying to solve by hashing & caching them? |
The main use case seems to be where the Freeswitch platform (or Asterisk, or ...) is on a different host than the Adhearsion platform. Imagine now AHN serving audio files via a web server. Call flow
Doing this 10s of times per second is obviously too expense for the bandwitdh usage, and also latencies to setup TCP connections might kill the peformance of the app. Hence why Freeswitch should cache the files locally. But if you give every file a unique (hashed) name, whenever the file changes (and AHN is restarted) Freeswitch would immediately download the new file. Unless I am missing something And now I write this, it would even be better if the app could contain mp3 files, and then when pipelining the files could be converted to more suitable audio formats before starting to serve them. But thats another report I would say |
Note that using |
I think @nathansamson has got this dead on. Nathan, do you have any interest in contributing this feature for Adhearsion 3.0? |
No description provided.
The text was updated successfully, but these errors were encountered: