Files
asterisk/include/asterisk/jingle.h
Philippe Sultan 3a5f263bf0 Comply with latest XEP-0166, XEP-0167, XEP-0176.
No real Jingle implementation being available, testing was made using
two Asterisk servers relaying SIP calls over their Jingle channels:

SIP Phone 1 --- [chan_sip]Asterisk 1[chan_jingle] --- [chan_jingle]Asterisk 2[chan_sip] --- SIP Phone 2

Thus, it was possible to test the code in both ways, and make the
Jingle channel comply with the latest specifications. No sound available yet.

Main modifications include :
- modified the 'jingle_candidate' structure and the
  'jingle_create_candidates' function according to XEP-0176 ;
- modified the 'jingle_action' function in order to properly terminate
  a Jingle session, in conformance with XEP-0166 ;
- modified username format used in STUN requests ;
- actually make the bindaddr configuration field useable.

Todo :
- set audio paths up (no native bridging) ;
- make the CLI gtalk functions available to jingle ;
- clean up the storage space used in strings.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83743 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-25 09:07:30 +00:00

62 lines
1.6 KiB
C

/*
* Asterisk -- An open source telephony toolkit.
*
* Copyright (C) 1999 - 2005, Digium, Inc.
*
* Matt O'Gorman <mogorman@digium.com>
*
* See http://www.asterisk.org for more information about
* the Asterisk project. Please do not directly contact
* any of the maintainers of this project for assistance;
* the project provides a web site, mailing lists and IRC
* channels for your use.
*
* This program is free software, distributed under the terms of
* the GNU General Public License Version 2. See the LICENSE file
* at the top of the source tree.
*/
/*! \file
* \brief Jingle definitions for chan_jingle
*
* \ref chan_jingle.c
*
* \author Matt O'Gorman <mogorman@digium.com>
*/
#ifndef _ASTERISK_JINGLE_H
#define _ASTERISK_JINGLE_H
#include <iksemel.h>
#include "asterisk/astobj.h"
/* Jingle Constants */
#define JINGLE_NODE "jingle"
#define GOOGLE_NODE "session"
#define JINGLE_NS "http://www.xmpp.org/extensions/xep-0166.html#ns"
#define JINGLE_AUDIO_RTP_NS "http://www.xmpp.org/extensions/xep-0167.html#ns"
#define JINGLE_ICE_UDP_NS "http://www.xmpp.org/extensions/xep-0176.html#ns-udp"
#define JINGLE_DTMF_NS "http://www.xmpp.org/extensions/xep-0181.html#ns"
#define JINGLE_DTMF_NS_ERRORS "http://www.xmpp.org/extensions/xep-0181.html#ns-errors"
#define GOOGLE_NS "http://www.google.com/session"
#define JINGLE_SID "sid"
#define GOOGLE_SID "id"
#define JINGLE_INITIATE "session-initiate"
#define JINGLE_ACCEPT "session-accept"
#define GOOGLE_ACCEPT "accept"
#define JINGLE_NEGOTIATE "transport-info"
#define GOOGLE_NEGOTIATE "candidates"
#define JINGLE_INFO "session-info"
#define JINGLE_TERMINATE "session-terminate"
#endif