设为首页 收藏本站
开启辅助访问 切换到宽版
注册会员 找回密码

VoIP88

ac617 发表于 2015-4-20 14:45 | 显示全部楼层 |阅读模式
有关 app_voicemail.so 这个 module,如果自行修改 asterisk 内的 app_voicemail.c ,再 compiled 成 app_voicemail.so 后,能不能取代 elastix 内的 app_voicemail.so 使用? 谢

因为希望能用 vm_intro (multi_language) 这个功能去读出数量 "两" 而不是 "二"。

谢谢

james.zhu 发表于 2015-4-24 10:00 | 显示全部楼层
只能读数字2(二),而不是liǎng。
 楼主| ac617 发表于 2015-4-27 11:49 | 显示全部楼层
默认是只能读(二),我看了 app_voicemail.c 内的编码,里面提及可以自行新增 vm_intro_xx 去实现读出(两)这个功能。例如使用德文时,读出的是(一个),而不是(一)。
但 Elastix 内的 app_voicemail 是已经编译完的 app_voicemail.so,我试过安装同版本的 Asterisk,自行编译已修改过的 app_voicemail.c 后,把 app_voicemail.so 覆盖 Elastix 内的。但没成功,运行不了。请问有没有什么正确的方法可以令自行编译的 module 在 Elasitx 内运行? 谢谢
用的是 Elastix 2.4


        int res;
        res = ast_play_and_wait(chan, "vm-youhave");
        if (!res) {
                if (vms->newmessages) {
                        if ((vms->newmessages == 1))
                                res = ast_play_and_wait(chan, "digits/1F");

                        else
                                res = say_and_wait(chan, vms->newmessages, ast_channel_language(chan));
                        if (!res)
                                res = ast_play_and_wait(chan, "vm-INBOX");
                        if (vms->oldmessages && !res)
                                res = ast_play_and_wait(chan, "vm-and");
                        else if (!res) {
                                if ((vms->newmessages == 1))
                                        res = ast_play_and_wait(chan, "vm-message");
                                else
                                        res = ast_play_and_wait(chan, "vm-messages");
alang 发表于 2015-5-31 14:37 | 显示全部楼层
理論上,只要 Linux 與 Asterisk 版本都相同,重新編譯後就能被套用。
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|VoIP88 ( 粤ICP备11095982号   填写您的邮件地址,订阅我们的精彩内容:

GMT+8, 2020-7-4 09:38 , Processed in 0.062804 second(s), 20 queries .

Powered by VoIP88

© 2001-2017 VoIP88

快速回复 返回顶部 返回列表