Asterisk 18.10中mixmonitor录音文件名月份本地化配置求助(Ubuntu 22.04.2)
让Asterisk的MixMonitor录音文件名使用系统区域化月份名称
1. 配置系统区域设置
- 先检查系统已安装的区域:
locale -a - 如果目标区域(比如中文
zh_CN.UTF-8)未安装,执行安装命令:sudo locale-gen zh_CN.UTF-8 - 编辑系统默认locale配置文件
/etc/default/locale,添加或修改以下内容(以中文为例):LANG=en_US.UTF-8 # 保持系统默认语言不变,仅修改时间区域 LC_TIME=zh_CN.UTF-8注:如果需要全系统使用中文,可将
LANG也设为zh_CN.UTF-8,但仅修改LC_TIME即可满足月份名称本地化需求,避免其他功能出现乱码。
2. 修改Asterisk服务的环境变量
Ubuntu下Asterisk通过systemd管理,需要确保服务启动时加载指定的locale:
- 编辑Asterisk的systemd服务文件:
sudo nano /etc/systemd/system/asterisk.service - 在
[Service]段落中添加环境变量配置:Environment="LC_TIME=zh_CN.UTF-8" - 重新加载systemd配置并重启Asterisk:
sudo systemctl daemon-reload sudo systemctl restart asterisk
3. 验证配置是否生效
- 进入Asterisk控制台:
asterisk -rvvv - 查看当前locale设置,确认
LC_TIME为目标区域:core show locale - 测试strftime输出,验证月份名称是否本地化:
core show function STRFTIME # 执行测试命令 STRFTIME(,,%B)
4. 确认MixMonitor文件名格式
保持MixMonitor的文件名格式不变:%d-%B-%Y-%H:%M:%S.wav,新录制的通话文件名将使用本地化的完整月份名称。
内容的提问来源于stack exchange,提问作者romancev
相关产品推荐
相关产品推荐

