README 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. Open H.323 Channel Driver for Asterisk
  2. By Jeremy McNamara
  3. For The NuFone Network
  4. First public release on November 10th, 2002
  5. Dependancies (based on OpenH323/PWLib ones):
  6. openssl-0.9.6b+
  7. openssl-devel-0.9.6b+
  8. expat-1.95+
  9. expat-dev-1.95+
  10. Tested with Open H.323 version v1.18.0, PWLib v1.10.0 and GCC v3.2.2. Usage of any
  11. other (especially prior OpenH323 v1.17.3 and PWLib v1.9.2) versions is not
  12. supported.
  13. NOTICE: Whatever you do, DO NOT USE distrubution specific installs
  14. of Open H.323 and PWLib. In fact, you should check to make sure
  15. your distro did not install them for you without your knowledge.
  16. To compile this code
  17. --------------------
  18. Once PWLib and Open H.323 have been compiled per their specific build
  19. instructions, issue a make in the asterisk/channels/h323 directory with
  20. argument used to build PWLib and OpenH323 (for example, make opt), then go
  21. back to the Asterisk source top level directory and issue a make install.
  22. The most common compile error
  23. ----------------------------
  24. If you receive ANYTHING that says 'undefined symbol' you are experiencing
  25. typical version skew. For example:
  26. libh323_linux_x86_r.so.1: undefined symbol: GetNumberValueAt__C14PAbstractArrayi
  27. You need to search and destroy every version of libh323 and libpt then
  28. completely recompile everything
  29. Example commands to make sure everything gets cleaned and then
  30. rebult in proper order:
  31. cd /path/to/pwlib
  32. ./configure
  33. make clean opt
  34. cd /path/to/openh323
  35. ./configure
  36. make clean opt
  37. cd /path/to/asterisk/channels/h323
  38. make opt
  39. cd /path/to/asterisk
  40. make install
  41. Most common run-time error
  42. -------------------------
  43. libpt_linux_x86_r.so.1: cannot open shared object file: No such
  44. file or directory
  45. You have not set the LD_LIBRARY_PATH environment variable.
  46. Example environment for sh/bash:
  47. PWLIBDIR=$HOME/pwlib
  48. export PWLIBDIR
  49. OPENH323DIR=$HOME/openh323
  50. export OPENH323DIR
  51. LD_LIBRARY_PATH=$PWLIBDIR/lib:$OPENH323DIR/lib
  52. export LD_LIBRARY_PATH
  53. We recomend puting the above directives into your /etc/profile so
  54. you do not have to remember to export those values every time you
  55. want to recompile. Make sure to logout and log back in, so your
  56. envrionment can pick up the new variables.
  57. Upgrading Asterisk
  58. -----------------
  59. After you cvs update (or make update) Asterisk you have to go into
  60. asterisk/channels/h323 and issue a make clean all, before compiling the
  61. rest of asterisk. Doing this process every time you upgrade Asterisk
  62. will ensure a sane build.
  63. Dialing an H.323 channel
  64. ------------------------
  65. Without a gatekeeper:
  66. exten => _1NXXNXXXXXX,1,Dial,H323/${EXTEN}@peer
  67. or
  68. exten => _1NXXNXXXXXX,1,Dial,H323/${EXTEN}@ip.or.hostname
  69. 'peer' is defined in h323.conf as:
  70. [peer]
  71. type=peer
  72. host=1.2.3.4
  73. disallow=all
  74. allow=ulaw
  75. Using a gatekeeper:
  76. exten => _1NXXNXXXXXX,1,Dial,H323/${EXTEN}
  77. When using a gatekeeper you cannot utilize the type=peer features,
  78. since the H.323 spec states that when a Gatekeeper is part of an H.323 network,
  79. the Gatekeeper shall be used for all communication.
  80. Developer Contact
  81. ----------------
  82. If you have trouble contact 'JerJer' in #Asterisk on
  83. irc.freenode.net and/or send reasonable debug information to support@nufone.net.
  84. If are lucky enough to segfault this code please run a
  85. backtrace and send the gory details. Segmentation faults are not
  86. tolerated, no matter what Distro you run (even debian)!
  87. a simple bt example:
  88. # /usr/sbin/asterisk -vvvgc
  89. ...
  90. [chan_h323.so]
  91. Segmentation Fault (core dumped)
  92. # ls core.*
  93. core.1976
  94. # gdb /usr/sbin/asterisk core.1976
  95. ...lots of useless garbage here...
  96. (gdb) bt
  97. Send whatever shows up right after the 'bt'
  98. Also, a full debug screen output is almost needed. Make sure you are
  99. in the full console mode (-c) and turn on 'h.323 debug' or worst case
  100. senerio 'h.323 trace 4'. A nice way to capture debug info is with
  101. script (man script).
  102. If you are motivated to update/fix this code please submit a
  103. disclaimer along with the patch to the Asterisk bug
  104. tracker: http://bugs.digium.com/
  105. Jeremy McNamara
  106. The NuFone Network