2014-06-22 20 views
5

Tôi đang viết một ứng dụng web với Flask và tích hợp Twilio để cho phép tôi gọi điện từ trình duyệt. Tất cả tốt và tốt, nó chủ yếu là làm việc, nhưng tôi có một số thông tin trạng thái tôi muốn cập nhật khi cuộc gọi được trả lời.Khi thực hiện cuộc gọi từ trình duyệt, làm cách nào tôi có thể biết được khi nào cuộc gọi đã được trả lời?

Phương thức connection.status() dường như không hữu ích, vì "mở" có vẻ như cuộc gọi đang cố gắng đi qua và trạng thái vẫn mở cho đến khi tôi nhận được "đóng" khi cuộc gọi kết thúc.

Có cách nào tốt (hoặc thông qua trình duyệt hoặc đăng ký gọi lại từ mã python trên máy chủ) để nhận cập nhật trạng thái khi chuyển đổi cuộc gọi từ "đổ chuông" sang "trực tiếp" không?

Trả lời

7

Đối với các cuộc gọi đi

Các twilio.js bang thư viện:

Twilio.Device is your main entry point for creating outbound connections, accepting incoming connections, and setting up your connection event handlers. 

Trong tài liệu hướng dẫn thiết bị, nó đi vào để nói rằng các .status) phương pháp (:

Returns the status of the device. 

Chìa khóa ở đây là trong đoạn mã:

Twilio.Device.incoming(function(conn) { 
    console.log(conn.parameters.From); 
    conn.status // => "pending" 
    conn.accept(); 
    conn.status // => "connecting" 
}); 

Bây giờ chìa khóa ở đây là hãy nhớ rằng Device.incoming được sử dụng khi một cuộc gọi đi đã được thực hiện từ trình duyệt của bạn theo quy định ở đây:

The Device.incoming handler function is called when an incoming event is fired. 
This is triggered whenever an incoming connection from an outbound REST call or a TwiML <Dial> to this device is made. 

Với đoạn mã trên, tôi đã có thể kiểm tra

conn.status 

để "kết nối" khi kết nối đang chuyển sang trạng thái mở và "mở" khi cuộc gọi được nhận từ cuộc gọi đi. Kết quả là tôi đã có thể đặt cờ và nhật ký khi cuộc gọi đi đã được chọn. Đây là TwiML sử dụng:

<Response> 
    <Dial callerId="+1888XXXXXXX"> 
    {{INSERT PHONE NUMBER HERE}} 
    </Dial> 
</Response> 

Đây là tài liệu cho các thông số kỹ thuật thiết bị và thư viện twilio.js chung:

http://www.twilio.com/docs/client/device

http://www.twilio.com/docs/client/twilio-js

Xin vui lòng cho tôi biết nếu bạn có bất kỳ câu hỏi nào khác!

Cảm ơn bạn đã dành thời gian,

+0

Hey Devarsh, tôi sẽ thử điều này nhưng nó không nhìn đầu tiên đỏ mặt như giải pháp đúng. Có vẻ như tôi là ví dụ cho các cuộc gọi đến và tôi quan tâm đến các cuộc gọi đi. – MahatmaManic

+0

Hey MahatmaManic, ahh, tôi thấy vấn đề với các cuộc gọi đi, làm việc thông qua một giải pháp ngay bây giờ, sẽ đăng ASAP sau khi được xác nhận (sau tối nay/sáng mai!) –

+1

Hey @MahatmaManic, tôi đã có thể nhận được một điện thoại mềm twilio để làm cho các cuộc gọi đi và đăng nhập khi các kết nối đã được chọn. Tôi đã chỉnh sửa bài đăng ở trên để mô tả các bước cần thiết. Xin vui lòng cho tôi biết nếu bạn có bất kỳ câu hỏi hoặc muốn bất kỳ làm rõ !!Cảm ơn bạn đã dành thời gian, –

Các vấn đề liên quan