拨打电话并使用somleng检索电话

问题描述 投票:0回答:1

我很有兴趣开始研究IVRs项目。经过一些研究,我发现了somleng项目(https://medium.com/@dwilkie_34546/somleng-an-open-source-twilio-clone-a297062b340d)。我曾尝试使用docker在ubuntu 14.04上安装完整软件包,但freeswitch无法正常工作且adhearsion无法连接到它。我决定单独安装每个组件:adhearsion-twilio,freeswitch,twilreapi。我已经配置了mod-rayo,并且每个单独的测试似乎都能正常工作。我已经启动了twilreapi并开始以下调用:

curl -XPOST http://localhost:3000/api/2010-04-01/Accounts/35af2347-5656-44fb-ba83-2d1bdd9c593b/Calls.json -d“Method = GET”-d“Url = http://demo.twilio.com/docs/voice.xml”-d“To = + 85510202101”-d“From = 1234”-u'35af2347-5656-44fb-ba83-2d1bdd9c593b:0c5388fa8fafaa8f73c62ee13e57030c1d4e3c01361f5b2445e844ae6f4f1c19'

我有这样的回应:

{ “到”: “+ 85510202101”, “从”: “1234”, “状态”: “排队”, “SID”: “fcfcbd36-3186-4e78-8099-91956ebb2fc5”, “account_sid”:“35af2347-5656 -44fb-ba83-2d1bdd9c593b”, “URI”: “/ API / 2010-04-01 /帐号/ 35af2347-5656-44fb-ba83-2d1bdd9c593b /电话/ fcfcbd36-3186-4e78-8099-91956ebb2fc5”, “DATE_CREATED” :“星期二,2017年12月19日10:12:13 +0000”,“date_updated”:“星期二,2017年12月19日10:12:13 +0000”,“api_version”:“2010-04-01”,“注释” :NULL, “answered_by”:NULL, “caller_name”:NULL, “方向”: “出站-API”, “持续时间”:NULL, “END_TIME”:NULL, “forwarded_from”:NULL, “from_formatted”:“+ 1 (234)“,”group_sid“:null,”parent_call_sid“:null,”phone_number_sid“:null,”price“:null,”price_unit“:null,”start_time“:null,”subresource_uris“:{},”to_formatted “:”+ 855 10 202 101“}

但我没有在adhearsion方面或freeswitch看到任何日志活动。这是正常的吗?

我的另一个问题是:实际上如何使用rapidpro或任何软电话启动呼叫并从此板块形式获得响应(我已经安装了X-lite并使用freeswitch进行测试,它工作正常)。


嗨@dwilkie,谢谢你的帮助。在卸载第一个somleng项目后,我已经能够使用docker安装并测试所有五个组件。现在我尝试连接到rapidpro。我执行了以下步骤:1。获取twilreapi docker容器的ip地址,以便能够构建API URL。我已经使用了docker ps命令2.添加一个带有Number的twiML api通道:1234 TwiML REST API主机:http://172.18.0.6:3000角色:代理帐户sid和帐户令牌但是在rapidpro上验证后我有这个消息

“要完成配置TwiML REST API通道,您需要在TwiML REST API实例中添加以下URL。

TwiML REST API主机将接收此通道的Twilio API请求的端点http://172.18.0.6:3000请求URL此通道的传入消息将发送到此端点。 https://temba.ngrok.io/handlers/twiml_api/ff560773-3421-48a3-a241-c492c78dbcc4“我已经忽略了这条消息,并在rapidpro中建立了一个语音流。但是当我在rapidpro中启动流程时,我在twilreapi_1 / somleng方面看不到任何日志信息,但是当我使用rapidpro模拟器来测试流程时,我有这条消息“twilreapi_1 |开始发布“/2010-04-01/Accounts/8461e585-9d4f-4f6e-9847-dddc9594f190/Calls.json”为172.18.0.1 2017-12-28 14:13:03 +0000 twilreapi_1 | twilreapi_1 | ActionController :: RoutingError(没有路由匹配[POST]“/2010-04-01/Accounts/8461e585-9d4f-4f6e-9847-dddc9594f190/Calls.json”):twilreapi_1 | twilreapi_1 | actionpack(5.1.3)lib / action_dispatch / middleware / debug_exceptions.rb:63:在call' twilreapi_1 | actionpack (5.1.3) lib/action_dispatch/middleware/show_exceptions.rb:31:incall中'twilreapi_1 | railties(5.1.3)lib / rails / rack / logger.rb:36:在call_app' twilreapi_1 | railties (5.1.3) lib/rails/rack/logger.rb:24:inblock中调用'twilreapi_1 | activesupport(5.1.3)lib / active_support / tagged_logging.rb:69:in block in tagged' twilreapi_1 | activesupport (5.1.3) lib/active_support/tagged_logging.rb:26:intagged'twilreapi_1 | activesupport(5.1.3)lib / active_support / tagged_logging.rb:69:在tagged' twilreapi_1 | railties (5.1.3) lib/rails/rack/logger.rb:24:incall中'twilreapi_1 | actionpack(5.1.3)lib / action_dispatch / middleware / remote_ip.rb:79:in call' twilreapi_1 | actionpack (5.1.3) lib/action_dispatch/middleware/request_id.rb:25:incall'twilreapi_1 | rack(2.0.3)lib / rack / method_override.rb:22:在call' twilreapi_1 | rack (2.0.3) lib/rack/runtime.rb:22:incall中'twilreapi_1 | activesupport(5.1.3)lib / active_support / cache / strategy / local_cache_middleware.rb:27:in call' twilreapi_1 | actionpack (5.1.3) lib/action_dispatch/middleware/executor.rb:12:incall'twilreapi_1 | actionpack(5.1.3)lib / action_dispatch / middleware / static.rb:125:in call' twilreapi_1 | rack (2.0.3) lib/rack/sendfile.rb:111:incall'twilreapi_1 | railties(5.1.3)lib / rails / engine.rb:522:在call' twilreapi_1 | puma (3.9.1) lib/puma/configuration.rb:224:incall中'twilreapi_1 | puma(3.9.1)lib / puma / server.rb:602:in handle_request' twilreapi_1 | puma (3.9.1) lib/puma/server.rb:435:inprocess_client'twilreapi_1 | puma(3.9.1)lib / puma / server.rb:299:在spawn_thread中的block in run' twilreapi_1 | puma (3.9.1) lib/puma/thread_pool.rb:120:inblock'“

ruby twilio-api freeswitch ivr adhearsion
1个回答
0
投票

Somleng的GETTING STARTED guide描述了如何开始使用docker和docker-compose。 docker-compose configuration file包含5项服务,Twilreapi(Twilio的REST API的开源实现),Somleng-Adhearsion(为Somleng配置的Adhearsion应用程序),FreeSWITCH configuration(针对Somleng优化的FreeSWITCH的配置文件),Linphone(Linphone的docker图像 - 软电话)和CURL

GETTING STARTED guide中的说明向您展示如何通过REST API调出服务并进行测试调用。还有关于如何测试来电的说明。

使用Docker启动服务后,您应该能够设置RapidPro通道并将其指向REST API端点。

© www.soinside.com 2019 - 2024. All rights reserved.