0

我的问题与电信有关,但它仍然是纯粹的编程挑战,因为我使用的是软开关。

目标:

  • 创建呼叫路由引擎使用的算法,以使可用链路容量完全饱和,流量以尽可能高的速率出售

情况:

  • 有固定容量为 30 个语音通道的通信链路 (E1/T1)(1 个通道 = 最终用户之间的一个语音呼叫,因此每个链路上最多可以有 30 个并发呼叫)
  • 链接每月的运行成本是固定的,所以最好是一直充分利用它(固定成本除以更多分钟会产生更高的利润)
  • 有用户通过向呼叫路由引擎发送呼叫来“争夺”链路容量
  • 每个用户可以在给定时间消耗随机链路容量,有可能一个用户一次占用全部容量(即 peek hours)但在非高峰时段不消耗容量
  • 每个用户每分钟的通话率不同
  • 理想情况:链路被充分利用(24/7/365),每分钟呼叫率最高的用户拨打电话

可用控制:

  • 呼叫路由引擎可以接受呼叫并使用此链接发送或拒绝呼叫

可用数据:

  • 当前链接使用情况
  • 每分钟用户率
  • 每位用户每分钟的最近通话次数
  • 用户通话记录(访问成本很高,但可能)

例子:

  • 用户 A 的费率为每分钟 1 美分,B 0.8 美分,C 0.7 美分
  • 如果用户 A 可以填满链路容量,最好接听用户 A 的来电并拒绝其他人
  • 但是用户A通常不能填满整个链路容量,我们需要接听其他人的电话来填补空白
  • 我们无法控制用户在给定时刻将发送多少电话,因此很难计划接受哪些电话以及拒绝哪些电话

任何想法或建议的方法来解决这个问题?

4

1 回答 1

0

我怀疑你能想出的最简单的算法可能是最好的——例如,如果你接到来自用户类型 B 或 C 的呼叫,只需检查是否有来自用户类型 A 的任何呼叫,如果不​​接受则呼叫。

为什么最好采用最简单的方法的原因:

  • Tts更容易!
  • 根据地区的不同,监管机构可能不允许拒绝这样的电话。
  • 如果这里真的有一个强大的商机,那么 VoIP 解决方案可能会更容易,如果您的客户不要求您这样做,那么其他人可能会这样做。VoIP 作为高成本 TDM 呼叫分支的替代传输方式是一种非常常见的方法。
于 2017-08-11T19:59:58.480 回答