asterisk/channels/h323
Paul Cadach 6c273d37cc Merged revisions 44034,44042-44043 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44034 | pcadach | 2006-09-30 02:43:13 +0600 (Сбт, 30 Сен 2006) | 1 line

Fake display name by called number on incoming calls (until passing connected number/connected name is not implemented)
........
r44042 | pcadach | 2006-09-30 03:05:43 +0600 (Сбт, 30 Сен 2006) | 1 line

Set TON/PRESENTATION information more carefully when no CallingNumber IE available
........
r44043 | pcadach | 2006-09-30 03:09:10 +0600 (Сбт, 30 Сен 2006) | 1 line

Compile first, please
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44044 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-29 21:13:46 +00:00
..
ChangeLog remove extraneous svn:executable properties 2005-11-29 18:24:39 +00:00
INSTALL.openh323 remove extraneous svn:executable properties 2005-11-29 18:24:39 +00:00
Makefile.in Split capability definitions into own source file 2006-09-20 19:21:15 +00:00
README Mergeing in Paul Cadach's chan_h323 changes *holds breath* 2006-09-19 17:07:22 +00:00
TODO Mergeing in Paul Cadach's chan_h323 changes *holds breath* 2006-09-19 17:07:22 +00:00
ast_h323.cxx Merged revisions 44034,44042-44043 via svnmerge from 2006-09-29 21:13:46 +00:00
ast_h323.h Merged revisions 44022 via svnmerge from 2006-09-29 19:13:26 +00:00
caps_h323.cxx Support for negotiation and receiption of Cisco's RTP DTMF 2006-09-25 09:03:14 +00:00
caps_h323.h Define Cisco RTP capability 2006-09-24 18:19:56 +00:00
chan_h323.h Merged revisions 44009 via svnmerge from 2006-09-29 18:35:44 +00:00
cisco-h225.asn Merged revisions 43635,43843-43844,43846 via svnmerge from 2006-09-28 11:12:58 +00:00
cisco-h225.cxx Merged revisions 43635,43843-43844,43846 via svnmerge from 2006-09-28 11:12:58 +00:00
cisco-h225.h Merged revisions 43635,43843-43844,43846 via svnmerge from 2006-09-28 11:12:58 +00:00
compat_h323.cxx Change file naming to be conform OpenH323 rules 2006-09-20 17:45:25 +00:00
compat_h323.h Use own factory for our OpalMediaFormats too 2006-09-22 19:56:07 +00:00
noexport.map Work!!! 2006-09-19 19:04:13 +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 (based on OpenH323/PWLib ones):
						openssl-0.9.6b+
						openssl-devel-0.9.6b+
						expat-1.95+
						expat-dev-1.95+

Tested with Open H.323 version v1.18.0, PWLib v1.10.0 and GCC v3.2.2. Usage of any
other (especially prior OpenH323 v1.17.3 and PWLib v1.9.2) versions is not
supported.

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 did not install them for you without your knowledge.


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 with
argument used to build PWLib and OpenH323 (for example, make opt), then go
back to the Asterisk source top level directory and issue a make install.


The 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 opt
cd /path/to/asterisk
make install 


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. Make sure to logout and log back in, so your
envrionment can pick up the new variables.


Upgrading Asterisk
-----------------
After you cvs update (or make update) Asterisk you have to go into
asterisk/channels/h323 and issue a make clean all, before compiling the
rest of asterisk. Doing this process every time you upgrade Asterisk
will ensure a sane build.


Dialing an H.323 channel
------------------------
Without a gatekeeper:
exten => _1NXXNXXXXXX,1,Dial,H323/${EXTEN}@peer
or
exten => _1NXXNXXXXXX,1,Dial,H323/${EXTEN}@ip.or.hostname

'peer' is defined in h323.conf as:

[peer]
type=peer
host=1.2.3.4
disallow=all
allow=ulaw

Using a gatekeeper:
exten => _1NXXNXXXXXX,1,Dial,H323/${EXTEN}

When using a gatekeeper you cannot utilize the type=peer features,
since the H.323 spec states that when a Gatekeeper is part of an H.323 network, 
the Gatekeeper shall be used for all communication. 


Developer Contact
----------------
If you have trouble contact 'JerJer' in #Asterisk on 
irc.freenode.net and/or send reasonable debug information to support@nufone.net.

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

a simple 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'. A nice way to capture debug info is with 
script (man script). 

If you are motivated to update/fix this code please submit a 
disclaimer along with the patch to the Asterisk bug 
tracker: http://bugs.digium.com/


Jeremy McNamara
The NuFone Network