chan_pjsip.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /*
  2. * Asterisk -- An open source telephony toolkit.
  3. *
  4. * Copyright (C) 2013, Digium, Inc.
  5. *
  6. * See http://www.asterisk.org for more information about
  7. * the Asterisk project. Please do not directly contact
  8. * any of the maintainers of this project for assistance;
  9. * the project provides a web site, mailing lists and IRC
  10. * channels for your use.
  11. *
  12. * This program is free software, distributed under the terms of
  13. * the GNU General Public License Version 2. See the LICENSE file
  14. * at the top of the source tree.
  15. */
  16. /*!
  17. * \file
  18. * \brief PJSIP Channel Driver shared data structures
  19. */
  20. #ifndef _CHAN_PJSIP_HEADER
  21. #define _CHAN_PJSIP_HEADER
  22. struct ast_sip_session_media;
  23. /*!
  24. * \brief Transport information stored in transport_info datastore
  25. */
  26. struct transport_info_data {
  27. /*! \brief The address that sent the request */
  28. pj_sockaddr remote_addr;
  29. /*! \brief Our address that received the request */
  30. pj_sockaddr local_addr;
  31. };
  32. /*!
  33. * \brief Positions of various media
  34. */
  35. enum sip_session_media_position {
  36. /*! \brief First is audio */
  37. SIP_MEDIA_AUDIO = 0,
  38. /*! \brief Second is video */
  39. SIP_MEDIA_VIDEO,
  40. /*! \brief Last is the size for media details */
  41. SIP_MEDIA_SIZE,
  42. };
  43. /*!
  44. * \brief The PJSIP channel driver pvt, stored in the \ref ast_sip_channel_pvt
  45. * data structure
  46. */
  47. struct chan_pjsip_pvt {
  48. /*! \brief The available media sessions */
  49. struct ast_sip_session_media *media[SIP_MEDIA_SIZE];
  50. };
  51. #endif /* _CHAN_PJSIP_HEADER */