dect
/
asterisk
Archived
13
0
Fork 0
This repository has been archived on 2022-02-17. You can view files and clone it, but cannot push or open issues or pull requests.
asterisk/channels/h323
jeremy 8fda188d26 backout code optimization, add more explict error reporting
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3030 f38db490-d61c-443f-a65b-d21fe96a405b
2004-05-20 21:56:12 +00:00
..
ChangeLog update changelog 2003-05-12 02:26:47 +00:00
INSTALL.openh323 add more instructions 2003-04-03 09:05:53 +00:00
Makefile OpenBSD portability to H323 2004-04-28 21:06:29 +00:00
README Don't advertise Janus, its still broken 2004-05-18 15:20:37 +00:00
TODO Update 2003-06-25 08:51:22 +00:00
ast_h323.cpp backout code optimization, add more explict error reporting 2004-05-20 21:56:12 +00:00
ast_h323.h cleanup code and debug 2004-05-20 09:00:04 +00:00
chan_h323.h properly send call progress and alerting PDUs, re-fix one-way audio on call manager, and hopefully add call progress (N+101) support (not tested) 2004-05-20 07:07:18 +00:00
h323.conf.sample try to work around CCM interop, UNTESTED! Someone with a CCM needs to test this 2004-03-20 14:14:00 +00:00

README

		Open H.323 Channel Driver for Asterisk
	  	        By Jeremy McNamara  
		        For The NuFone Network

	     First public release on November 10th, 2002


		Dependancies:	openssl-0.9.6b
				openssl-devel-0.9.6b
	       			expat-1.95
	       			expat-dev-1.95

This code runs on Open H.323 v1.12.2 and PWLib v1.5.2. If you use different 
versions, you are on your own. See the Makefile for more details.

chan_h323 has been implemented using Asterisk's RTP stack insted of trying
to implement a pseudo sound card driver. I feel this is more effiecent,
due to the Asterisk.

NOTICE: Whatever you do, DO NOT USE distrubution specific installs
of Open H.323 and PWLib. In fact you should check to make sure 
your distro didn't install them for you without your knowledge.
Check everything out of CVS. If you dont know how to deal with cvs, learn. 
Also, if you are not using the listed versions of Open H.323 or PWlib 
you are on your own, sorry. 


To compile this code:
Once PWLib and Open H.323 have been compiled per their specific build instructions, issue 
a make in the asterisk/channels/h323 directory, then go back to the Asterisk source 
top level directory and issue a make install.


Most common compile error:  

If you receive ANYTHING that says 'undefined symbol' you are experiencing
typical version skew.  For example:

libh323_linux_x86_r.so.1: undefined symbol: GetNumberValueAt__C14PAbstractArrayi

You need to search and destroy every version of libh323 and libpt then 
completely recompile everything

Example commands to make sure everything gets cleaned and then
rebult in proper order:

cd /path/to/pwlib
./configure
make clean opt
cd /path/to/openh323
./configure
make clean opt 
cd /path/to/asterisk/channels/h323
make  
cd /path/to/asterisk
make install 

(Note: Open H.323 or PWLib never get a 'make install' so don't do it)
 

Most common run-time error:

libpt_linux_x86_r.so.1: cannot open shared object file: No such 
file or directory

You have not set the LD_LIBRARY_PATH environment variable.

Example environment for sh/bash:

PWLIBDIR=$HOME/pwlib
export PWLIBDIR
OPENH323DIR=$HOME/openh323
export OPENH323DIR
LD_LIBRARY_PATH=$PWLIBDIR/lib:$OPENH323DIR/lib
export LD_LIBRARY_PATH

We recomend puting the above directives into your /etc/profile so 
you do not have to remember to export those values every time you 
want to recompile.

If you still have trouble please contact 'JerJer' in #Asterisk on 
irc.freenode.net or send and email to jj@nufone.net

If you happen to be lucky enough to segfault this code please run a 
backtrace  and send me the gory details. Segmentation faults are not
tolerated, no matter what Distro you run!

bt example:

# /usr/sbin/asterisk -vvvgc
...
[chan_h323.so]
Segmentation Fault (core dumped)

# ls core.*
core.1976

# gdb /usr/sbin/asterisk core.1976
...lots of useless garbage here..
(gdb) bt

Send whatever shows up right after the 'bt'

Also, a full debug screen output is almost needed. Make sure you are 
in the full console mode (-c) and turn on 'h.323 debug' or worst case
senerio 'h.323 trace 4'. 

If you are motivated to make debug show up on a remote (-r) console, 
please submit a patch to the Asterisk bug tracker: http://bugs.digium.com/

A nice way to capture debug is with script (man script) 

Jeremy McNamara
The NuFone Network