使用 Ruby、Sinatra 和 Twilio REST API,我正在为我的公司编写一条客户服务线。当接到来电时,客户在动词中被搁置 < Conference >
,而应用程序向座席发出去电。如果他接受呼叫,则呼叫被桥接。
我目前有 3 个会议室(技术支持、销售和移动支持),由我相当线性的程序创建。但是如果一个会议室很忙,而另一个电话进来请求已经占用的房间,他们就无法联系到座席,这是有问题的。
我的问题是:我/如何在 Ruby 中为每个来电创建一个线程,以便它有自己的独立进程?
我的理由是:一旦每个呼叫都有其线程,那么我可以创建一个名为“部门名称”+“@process.id”的房间。
例如:(还添加一个随机生成的 7 位数字,使每个会议名称 100% 唯一。
@random = Random.rand(10_000_000 - 1_000_000) + 1_000_000
puts @random
< Dial >
< Conference > 'Tech Supp' + PROCESS_ID \ + @random
</会议>
< /Dial >