UniMRCP  1.7.0
mrcp_sofiasip_server_agent.h
Go to the documentation of this file.
1 /*
2  * Copyright 2008-2015 Arsen Chaloyan
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef MRCP_SOFIASIP_SERVER_AGENT_H
18 #define MRCP_SOFIASIP_SERVER_AGENT_H
19 
20 /**
21  * @file mrcp_sofiasip_server_agent.h
22  * @brief Implementation of MRCP Signaling Interface using Sofia-SIP
23  */
24 
25 #include <apr_network_io.h>
26 #include "mrcp_sig_agent.h"
27 
29 
30 /** Sofia-SIP config declaration */
32 
33 /** Sofia-SIP config */
35  /** Local IP address to bind to */
36  char *local_ip;
37  /** External (NAT) IP address */
38  char *ext_ip;
39  /** Local port to bind to */
40  apr_port_t local_port;
41  /** SIP user name */
42  char *user_name;
43  /** User agent name */
45  /** SDP origin */
46  char *origin;
47  /** SIP transport */
48  char *transport;
49  /** Force destination IP address. Should be used only in case
50  SDP contains incorrect connection address (local IP address behind NAT) */
52  /** Disable the Sofia SIP SDP Offer/Answer Engine Module (soa). Should
53  only be used if dynamic payload type negotiation is needed AND you know
54  that your clients will only use the 'Basic Call' SDP Offer/Answer
55  scenario. */
57  /** Extract feature tags (Accept-Contact) */
59  /** Extract call id */
61  /** Extract user name */
63  /** SIP T1 timer */
64  apr_size_t sip_t1;
65  /** SIP T2 timer */
66  apr_size_t sip_t2;
67  /** SIP T4 timer */
68  apr_size_t sip_t4;
69  /** SIP T1x64 timer */
70  apr_size_t sip_t1x64;
71  /** SIP Sessione-Expires */
72  apr_size_t session_expires;
73  /** SIP Min-SE */
74  apr_size_t min_session_expires;
75  /** Print out SIP messages to the console */
77  /** Dump SIP messages to the specified file */
79 };
80 
81 /**
82  * Create Sofia-SIP signaling agent.
83  */
85 
86 /**
87  * Allocate Sofia-SIP config.
88  */
90 
92 
93 #endif /* MRCP_SOFIASIP_SERVER_AGENT_H */
#define MRCP_DECLARE(type)
Definition: mrcp.h:40
char * user_agent_name
Definition: mrcp_sofiasip_server_agent.h:44
apt_bool_t tport_log
Definition: mrcp_sofiasip_server_agent.h:76
char * origin
Definition: mrcp_sofiasip_server_agent.h:46
char * transport
Definition: mrcp_sofiasip_server_agent.h:48
Abstract MRCP Signaling Agent.
apt_bool_t force_destination
Definition: mrcp_sofiasip_server_agent.h:51
#define APT_END_EXTERN_C
Definition: apt.h:38
char * ext_ip
Definition: mrcp_sofiasip_server_agent.h:38
apr_size_t min_session_expires
Definition: mrcp_sofiasip_server_agent.h:74
int apt_bool_t
Definition: apt.h:57
mrcp_sofia_server_config_t * mrcp_sofiasip_server_config_alloc(apr_pool_t *pool)
mrcp_sig_agent_t * mrcp_sofiasip_server_agent_create(const char *id, mrcp_sofia_server_config_t *config, apr_pool_t *pool)
apr_port_t local_port
Definition: mrcp_sofiasip_server_agent.h:40
#define APT_BEGIN_EXTERN_C
Definition: apt.h:36
apr_size_t session_expires
Definition: mrcp_sofiasip_server_agent.h:72
apr_size_t sip_t1x64
Definition: mrcp_sofiasip_server_agent.h:70
Definition: mrcp_sig_agent.h:52
apt_bool_t extract_feature_tags
Definition: mrcp_sofiasip_server_agent.h:58
apr_size_t sip_t4
Definition: mrcp_sofiasip_server_agent.h:68
apr_size_t sip_t1
Definition: mrcp_sofiasip_server_agent.h:64
apt_bool_t extract_user_name
Definition: mrcp_sofiasip_server_agent.h:62
char * local_ip
Definition: mrcp_sofiasip_server_agent.h:36
char * user_name
Definition: mrcp_sofiasip_server_agent.h:42
apt_bool_t extract_call_id
Definition: mrcp_sofiasip_server_agent.h:60
apr_size_t sip_t2
Definition: mrcp_sofiasip_server_agent.h:66
apt_bool_t disable_soa
Definition: mrcp_sofiasip_server_agent.h:56
Definition: mrcp_sofiasip_server_agent.h:34
char * tport_dump_file
Definition: mrcp_sofiasip_server_agent.h:78