stasis_bridge.h 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /*
  2. * Asterisk -- An open source telephony toolkit.
  3. *
  4. * Copyright (C) 2014, Digium, Inc.
  5. *
  6. * Richard Mudgett <rmudgett@digium.com>
  7. *
  8. * See http://www.asterisk.org for more information about
  9. * the Asterisk project. Please do not directly contact
  10. * any of the maintainers of this project for assistance;
  11. * the project provides a web site, mailing lists and IRC
  12. * channels for your use.
  13. *
  14. * This program is free software, distributed under the terms of
  15. * the GNU General Public License Version 2. See the LICENSE file
  16. * at the top of the source tree.
  17. */
  18. /*!
  19. * \file
  20. * \brief Internal API for the Stasis bridge subclass.
  21. *
  22. * \author Richard Mudgett <rmudgett@digium.com>
  23. *
  24. * See Also:
  25. * \arg \ref AstCREDITS
  26. */
  27. #ifndef _ASTERISK_STASIS_BRIDGE_H
  28. #define _ASTERISK_STASIS_BRIDGE_H
  29. #if defined(__cplusplus) || defined(c_plusplus)
  30. extern "C" {
  31. #endif
  32. /* ------------------------------------------------------------------- */
  33. /*! Normal capabilities of mixing bridges */
  34. #define STASIS_BRIDGE_MIXING_CAPABILITIES \
  35. (AST_BRIDGE_CAPABILITY_NATIVE \
  36. | AST_BRIDGE_CAPABILITY_1TO1MIX \
  37. | AST_BRIDGE_CAPABILITY_MULTIMIX)
  38. /*!
  39. * \internal
  40. * \brief Create a new Stasis bridge.
  41. * \since 12.5.0
  42. *
  43. * \param capabilities The capabilities that we require to be used on the bridge
  44. * \param flags Flags that will alter the behavior of the bridge
  45. * \param name Name given to the bridge by Stasis (optional)
  46. * \param id Unique ID given to the bridge by Stasis (optional)
  47. *
  48. * \retval a pointer to a new bridge on success
  49. * \retval NULL on failure
  50. */
  51. struct ast_bridge *bridge_stasis_new(uint32_t capabilities, unsigned int flags, const char *name, const char *id);
  52. /*!
  53. * \internal
  54. * \brief Initialize the Stasis bridge subclass.
  55. * \since 12.5.0
  56. *
  57. * \return Nothing
  58. */
  59. void bridge_stasis_init(void);
  60. /* ------------------------------------------------------------------- */
  61. #if defined(__cplusplus) || defined(c_plusplus)
  62. }
  63. #endif
  64. #endif /* _ASTERISK_STASIS_BRIDGE_H */