news 2026/9/2 21:23:55

FreeSWITCH 实用工具集(个人开发整理)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
FreeSWITCH 实用工具集(个人开发整理)

FreeSWITCH 实用工具集(个人开发整理)

本仓库由一名 FreeSWITCH 爱好者维护,整理了本人在日常开发和部署中编写的一些小工具、配置模板与集成脚本。部分基础逻辑已在社区分享,完整版(含注释、部署脚本、使用示例)以数字商品形式在淘宝小店提供,价格低廉,仅用于覆盖维护成本。

🔗淘宝小店(个人店铺):https://shop283765010.taobao.com

💡 所有代码均为本人独立编写,非 FreeSWITCH 官方出品,亦不隶属于任何云服务商(如阿里云、腾讯云等)。仅用于技术交流与学习参考。


1. 多协议短信网关对接包(Golang / C++)

为方便对接国内短信通道,我编写了一套支持 CMPP(移动)、SGIP(联通)、SMGP(电信)及 SMPP(国际)的协议解析与连接管理代码。

  • 自行实现编解码逻辑,无第三方依赖
  • 包含连接保活、消息重发机制
  • 提供简单测试用例

完整版包含详细注释与部署说明,可在淘宝小店获取。

🔗 查看商品


2. FreeSWITCH 快速部署与调试支持服务

基于多次生产环境经验,我提供远程协助服务,帮助用户完成:

  • CentOS/Ubuntu 环境下 FreeSWITCH 安装与基础配置
  • SIP 终端注册测试
  • 呼叫路由策略验证
  • 常见问题排查(如无声音、注册失败等)

此为技术服务,按次计费,具体需求请通过淘宝沟通。

🔗 查看服务


3. FreeSWITCH 配置与学习资料整理

将我在学习和使用 FreeSWITCH 过程中积累的配置片段、拨号计划(Dialplan)示例、ESL 使用技巧等整理成文档。

  • 覆盖基础注册、IVR、录音、CDR 等常见场景
  • 适合初学者快速理解核心概念

资料为 PDF + 配置文件打包,非官方文档,仅为个人笔记整理。

🔗 获取资料


4. Android SIP 电话参考实现(基于 PJSIP)

使用 PJSIP 库开发的 Android 软电话 Demo,包含:

  • SIP 注册与呼叫流程
  • 音频编解码(G.711/OPUS)
  • 基础 UI 控制(拨打、挂断、静音)

代码结构清晰,可作为二次开发起点。完整源码含构建说明。

🔗 获取源码


5. WebRTC 浏览器电话前端(JsSIP 示例)

一个基于 JsSIP 的网页软电话原型,可在现代浏览器中直接拨打 SIP 电话。

  • 支持音频通话
  • 与 FreeSWITCH 的 WebRTC 模块配合使用
  • 代码简洁,便于理解 JsSIP 工作流程

提供 HTML + JS 完整工程,含 FreeSWITCH 配置建议。

🔗 获取示例


6. FreeSWITCH Docker 构建脚本集

为简化容器化部署,我编写了一套自动化构建脚本,可生成包含常用模块的 FreeSWITCH Docker 镜像。

  • 支持自定义启用模块(如 mod_verto、mod_xml_cdr)
  • 多阶段构建,镜像体积小
  • 附带 docker-compose 示例

脚本已测试于 x86_64 Linux 环境。

🔗 获取脚本包


7. 录音自动上传阿里云 OSS 示例

通过 Shell/Python 脚本,在 FreeSWITCH 录音完成后自动上传至阿里云 OSS。

  • 按日期/主被叫号码分类存储
  • 支持失败重试与日志记录
  • 需自行配置阿里云 AccessKey

仅为调用 OSS SDK 的集成示例,不包含阿里云官方代码。

🔗 获取集成方案


8. FreeSWITCH 基础配置模板包

一套开箱即用的配置文件,包含:

  • internal/sip profile
  • 简单 dialplan(内线互拨、外呼网关)
  • 录音策略
  • 用户账号模板

适用于快速搭建测试或演示环境。

🔗 获取配置包


9. 腾讯云 ASR/TTS 集成示例(FreeSWITCH)

通过 ESL 或 dialplan 调用腾讯云语音识别(ASR)与合成(TTS)API 的参考实现。

  • 支持实时语音转写
  • 文字转语音播报
  • 需自行申请腾讯云服务并配置 API 密钥

仅为 HTTP 调用封装示例,不包含腾讯云 SDK。

🔗 获取示例代码


10. 阿里云 ASR/TTS 集成示例(FreeSWITCH)

类似上一项,但适配阿里云智能语音交互服务。

  • 支持普通话识别与合成
  • 包含错误处理逻辑
  • 需用户自行开通阿里云相关服务

仅为个人集成实践,非阿里云官方方案。

🔗 获取示例代码


⚠️ 免责声明

  1. 非官方产品:本仓库及所列商品与 FreeSWITCH 项目、SignalWire Inc.、阿里云、腾讯云等无任何关联。
  2. 个人开发:所有代码/文档均为作者独立编写,仅反映个人技术实践。
  3. 无担保:所提供工具“按现状”提供,不承诺兼容性、稳定性或安全性。使用前请充分测试。
  4. 合法使用:请确保你的 FreeSWITCH 部署符合当地电信法规,不得用于非法外呼、诈骗、绕过监管等用途。
  5. 交付说明:商品为数字内容,购买后通过淘宝站内信发送下载链接,不支持退款,请确认需求后再下单。

🙏 感谢每一位对开源通信技术感兴趣的朋友。如果你觉得这些小工具有帮助,欢迎通过淘宝小店支持我的持续开发!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 23:03:14

Nano Banana Pro:设计师的竞争对手还是强有力的助手?

AI 技术的飞速发展已经深刻改变了各行各业,其中,设计行业正经历一场 革命性 的变化。最近,谷歌发布的 Nano Banana Pro AI 图像生成工具引发了广泛关注,很多人开始讨论,这个强大的 AI 工具会把设计师的饭碗“开源”吗&…

作者头像 李华
网站建设 2026/9/3 0:57:03

sward全面介绍(12) - 集成钉钉,使用钉钉用户扫码登录sward

集成钉钉用户功能划入社区版本,本篇文章将全面介绍如何在sward中集成钉钉用户并实现钉钉用户登录sward。 1、配置钉钉 进入系统设置->用户->用户目录,点击钉钉后的配置按钮,填写钉钉的配置信息。 属性说明企业ID在钉钉管理后台中创建…

作者头像 李华
网站建设 2026/9/2 20:26:51

kanass全面介绍(13) - 如何做好测试管理

测试管理是研发过程中的重要环节,做好测试用例的设计、评审与执行,可以让产品始终沿着最初的产品设计路线发展,防止产品偏离需求,本文将介绍如何使用kanass做好测试管理。1、测试用例设计1.1 添加功能模块进入项目->事项&#…

作者头像 李华
网站建设 2026/9/3 3:38:53

全域众链:需求牵引、政策护航,AI + 实体的落地新路径

在 “AI 赋能实体经济” 的热潮中,真正能扎根市场的项目,必然是兼具需求适配性、政策契合度与落地可行性的务实之作。全域众链正是如此,它以实体商家与创业者的核心需求为出发点,以国家政策为发展依托,用闭环模式与实用…

作者头像 李华
网站建设 2026/9/2 21:16:11

73. 矩阵置零

73. 矩阵置零 已解答 中等 提示 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1…

作者头像 李华