Skip to content
This repository has been archived by the owner on May 8, 2020. It is now read-only.

Commit

Permalink
Added support for Data Channels
Browse files Browse the repository at this point in the history
Added a first integration of Data Channels (strings only for now)
Modified Echo Test and Video Call demos to include Data Channels
Updated documentation and FAQ
General bug fixing here and there
  • Loading branch information
meetecho committed Jun 4, 2014
1 parent 3d7320c commit a3d13e2
Show file tree
Hide file tree
Showing 39 changed files with 2,565 additions and 232 deletions.
13 changes: 8 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
CC = gcc
STUFF = $(shell pkg-config --cflags glib-2.0 nice libmicrohttpd jansson libssl libcrypto sofia-sip-ua ini_config) -ldl -D_GNU_SOURCE $(HAVE_PORTRANGE)
LIBS = $(shell pkg-config --libs glib-2.0 nice libmicrohttpd jansson libssl libcrypto sofia-sip-ua ini_config) -ldl -lsrtp -D_GNU_SOURCE $(HAVE_PORTRANGE)
LIBS = $(shell pkg-config --libs glib-2.0 nice libmicrohttpd jansson libssl libcrypto sofia-sip-ua ini_config) -ldl -lsrtp -lusrsctp -D_GNU_SOURCE $(HAVE_PORTRANGE)
OPTS = -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wunused -Wno-format-security #-Werror #-O2
GDB = -g -ggdb -rdynamic #-gstabs
OBJS=janus.o cmdline.o config.o apierror.o rtcp.o dtls.o ice.o sdp.o utils.o
GDB = -fstack-protector-all -g -ggdb -rdynamic #-gstabs
OBJS=janus.o cmdline.o config.o apierror.o rtcp.o dtls.o sctp.o ice.o sdp.o utils.o

all: cmdline janus plugins

.PHONY: plugins docs
.PHONY: plugins docs sctptest

plugins:
ifndef INSTALLSH
Expand All @@ -19,7 +19,10 @@ docs:
$(MAKE) -C docs

cmdline:
gengetopt --set-package="janus" --set-version="0.0.2" < janus.ggo
gengetopt --set-package="janus" --set-version="0.0.3" < janus.ggo

sctptest:
$(MAKE) -C sctptest

%.o: %.c
$(CC) $(STUFF) -fPIC $(GDB) -c $< -o $@ $(OPTS)
Expand Down
21 changes: 19 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ To install it, you'll need to satisfy the following dependencies:
* [OpenSSL](https://www.openssl.org/) (at least v1.0.1e)
* [libsrtp](https://srtp.sourceforge.net/srtp.html)
* [Sofia-SIP](https://sofia-sip.sourceforge.net/)
* [usrsctp](https://code.google.com/p/sctp-refimpl/)

A couple of plugins depend on a few more libraries:

Expand Down Expand Up @@ -55,6 +56,19 @@ On Ubuntu or Debian, it would require something like this:
on Ubuntu or Debian, unless you're using a recent version (e.g., Ubuntu
14.04 LTS). In that case, you'll have to [install it manually](https://www.opus-codec.org).

For what concerns usrsctp, which is needed for Data Channels support, it
is usually not available in repositories, so you'll have to install it
manually. It is a pretty easy and standard process:

svn co https://sctp-refimpl.googlecode.com/svn/trunk/KERN/usrsctp usrsctp
cd usrsctp
./bootstrap
./configure --prefix=/usr && make && sudo make install
echo

* *Note:* you may need to pass --libdir=/usr/lib64 to the configure
script if you're installing on a x86_64 distribution.

Should you be interested in building the gateway documentation as well,
you'll need an additional component installed too:

Expand All @@ -79,7 +93,10 @@ to start the whole compilation process. The script will try to check
whether you have all the dependencies installed, and then issue a 'make'
for you to start compiling. If Doxygen and graphviz are available, it
will also build the documentation for you as well in the docs/html
subfolder.
subfolder. If you prefer not to build the documentation (or not to
build it again and again every time you compile!) use the 'nodocs' option:

sh install.sh nodocs


##Configure and start
Expand All @@ -92,7 +109,7 @@ or on the command line:

./janus --help

janus 0.0.2
janus 0.0.3

Usage: janus [OPTIONS]...

Expand Down
2 changes: 1 addition & 1 deletion docs/janus-doxygen.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ PROJECT_NAME = "Janus"
# This could be handy for archiving the generated documentation or
# if some version control system is used.

PROJECT_NUMBER = 0.0.2
PROJECT_NUMBER = 0.0.3

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer
Expand Down
Loading

0 comments on commit a3d13e2

Please sign in to comment.