---------- Mensagem encaminhada ---------- De: "Matthew Jordan" <[email protected]> Data: 12/02/2013 19:32 Assunto: [asterisk-dev] Asterisk 12 Update - Bridge Work Para: "Asterisk Developers Mailing List" <[email protected]> Cc:
Hello! Some folks have noticed that we've been doing a lot of work on the bridging functionality in Asterisk. The motivation for this came out of discussions at AstriDevCon, where many people noted the difficulties external applications have when attempting to maintain the state of who is talking to whom. These problems often start with Asterisk's masquerade operation, which itself is a symptom of problems in the way that Asterisk has historically bridged channels. Luckily, Asterisk already has a solution to this (and has since 1.6 days) - Joshua Colp's Bridging API. The API is already used by ConfBridge and Page, but hasn't been deployed outside of those applications. Since we have a good layer of abstraction for bridging already implemented, and since it provides a model of bridging that lends itself well to the needs of external APIs (and Asterisk users!), we started refactoring Asterisk to use the Bridging API for all of its bridging. Up until now, the work for this has been tracked under the API project [1], but the scope of the work being done really deserves its own page. Thus, there is now a project page for this up on the wiki [2]. This provides a dedicated place to document project planning, design, tests, and other useful information for people who want to participate and contribute to the project. So what's been done/being done? If we're going to tear into the guts of such a fundamental concept, we have to have some assurance that we can stitch it all back together! So for some time, we've been working on a large set of tests that cover the currently supported bridging features. You can find the current bridging tests in the Asterisk Test Suite [3], and the test plan that they are implementing on a sub page of the project page [4]. There's more to be done here, however, so expect additional tests to pop up (and more reviews on Review Board for the tests). In addition to testing, we've started the work on expanding usage of the Bridge API to the various consumers that initiate bridging, starting with the Bridge application. Richard has created an integration branch for this work [5], and is currently working through the various ways in which channels can be moved between bridges. That includes things like transfers, but also Local channel optimization, merging bridges, swapping between two party and multi-party bridge technologies, and a whole host of other cases. In parallel, Jonathan has been working on implementing timed features. Previously, the Bridging API provided initial implementations of DTMF triggered features, such as blind and attended transfers and hangup. However, the Bridge application (as well as Dial) allows for features that occur on a timed or periodic basis, such as hanging up a channel after n seconds. Luckily, Joshua had already started on this work as well, so Jonathan brought that up to trunk and has started to merge it into Richard's work [6]. Some of the next steps on the bridging work are going to entail: * Finish up the API cleanup and threading model changes * Get the other consumers of bridging moved over to the new Bridging API * Implement an API that allows external entities to initiate a transfer operation on channels in a bridge * Refactor the Park family of applications to use a new bridging technology As always, if you're interested in any aspect of this work, feel free to reply to this e-mail, start a new discussion, or talk about it in #asterisk-dev. We also accept message via pigeon, but given how fast things are moving, I'd recommend an electronic form of communication. [1] https://wiki.asterisk.org/wiki/display/AST/Asterisk+12+API+Improvements [2] https://wiki.asterisk.org/wiki/display/AST/Asterisk+12+Bridging+Project [3] http://svn.asterisk.org/svn/testsuite/asterisk/trunk/tests/bridge/ [4] https://wiki.asterisk.org/wiki/display/AST/Asterisk+12+Bridging+Test+Plan [5] http://svn.asterisk.org/svn/asterisk/team/group/bridge_construction/ [6] http://svn.asterisk.org/svn/asterisk/team/jrose/bridge_projects/ tl;dr: We're going to use the Bridging API for lots of stuff. Collaboration is always welcome :-) -- Matthew Jordan Digium, Inc. | Engineering Manager 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA Check us out at: http://digium.com & http://asterisk.org -- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
_______________________________________________ EBS MODULAR: 3 slots para combinação entre E1, GSM, FXS ou FXO; Linha de PORTEIROS IP, abrem até 2 dispositivos com acesso IP remoto; Conheça esses e outros LANÇAMENTOS KHOMP em www.Khomp.com _______________________________________________ DIGIVOICE Fabricante de Placas de Voz e Channel Bank 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM Centro Treinamento - Curso de PABX IP - Asterisk - Site www.digivoice.com.br _______________________________________________ ALIGERA Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7. Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express. Channel Bank Appliance Asterisk - Acesse www.aligera.com.br. _______________________________________________ Para remover seu email desta lista, basta enviar um email em branco para [email protected]

