paulc
13547a1ff3
Added settings to allow matching inbound calls from broken registrars.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5606 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-05 20:45:29 +00:00
marian
acafd80e98
Reset connect retry counter when received data not when connect succeeds. Fixes forever connect retry when connection is closed after accepted without receiving any data. Improved debug.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5604 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-02 14:28:44 +00:00
marian
c367c116fb
Check ssl availability. Don't bind a tls listener if the context is not valid. Don't try to connect a tls transport if ssl is not available.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5601 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-02 11:56:53 +00:00
marian
9a13938320
Fixed bug: start transport worker thread after init to make sure data is initialized. Fixes incoming tcp transport race condition.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5600 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-02 11:11:38 +00:00
marian
a0b11fc63d
Propagate non-retryable send errors to transaction. Terminate outgoing transactions in Trying state if first send attempt failed. Reset failed message party otherwise.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5599 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-02 10:01:39 +00:00
paulc
78201aa0be
Added unHexify version that automatically detects separator presence.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5596 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-01 14:52:52 +00:00
marian
cfa0be7eb2
Incoming registration NAT detection: don't check port for non udp parties.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5588 acf43c95-373e-0410-b603-e72c3f656dc1
2013-07-23 14:39:46 +00:00
paulc
d8b1569efd
Copy a SIP remote party change to the "address" parameter.
...
Add change information for address and contact in the call.update message.
Delay updating channel parameters until the reINVITE is accepted.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5583 acf43c95-373e-0410-b603-e72c3f656dc1
2013-07-16 13:15:40 +00:00
paulc
3cf42e2828
Use Alarm() in places that could prevent normal operation.
...
This allows sending SNMP traps when parts of the service become non-operational.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5569 acf43c95-373e-0410-b603-e72c3f656dc1
2013-07-08 12:21:26 +00:00
paulc
a5bac6672b
Added settings for the SIP T1 and T4 timers.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5533 acf43c95-373e-0410-b603-e72c3f656dc1
2013-06-07 15:18:42 +00:00
paulc
55f287abd5
Copy SIP authentication headers to Yate messages when foreign auth is enabled.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5532 acf43c95-373e-0410-b603-e72c3f656dc1
2013-06-07 15:17:19 +00:00
paulc
5cbae1781a
Populate user.register with custom SIP headers.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5526 acf43c95-373e-0410-b603-e72c3f656dc1
2013-06-04 14:47:06 +00:00
paulc
2b12d13fa7
Allow returning a message body from a generic SIP handler.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5525 acf43c95-373e-0410-b603-e72c3f656dc1
2013-06-04 14:46:03 +00:00
paulc
5139fb89c5
Added possibility to set credentials in generic UAC transactions.
...
SIP headers and body can be returned from generic UAC transactions.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5524 acf43c95-373e-0410-b603-e72c3f656dc1
2013-06-04 14:45:35 +00:00
paulc
d0aba1a525
Apply NAT detection only when registering a SIP or SIPS URI.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5523 acf43c95-373e-0410-b603-e72c3f656dc1
2013-06-04 14:44:23 +00:00
paulc
7f4b7821f2
Don't warn if no Contact is received in a 387 SIP answer, that's used for something else.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5509 acf43c95-373e-0410-b603-e72c3f656dc1
2013-05-28 16:59:13 +00:00
paulc
b8d4a515d2
Reply to SIP OPTIONS with 503 is engine is exiting, congested or rejecting calls.
...
Allow the OPTIONS method to be handled generically.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5502 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-29 11:16:02 +00:00
paulc
11b90dae77
Added support (default enabled) to run generic SIP messages in their own thread.
...
Fixed the raw text body encoding.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5453 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 13:34:50 +00:00
paulc
3b49b78ecb
Added a shared static list of Atom strings and an YATOM macro.
...
This speeds up signifficantly the Yate RTTI on compilers that HAVE_BLOCK_RETURN.
Made the String comparison operator inline to shave off a few cycles.
Fast handle the comparison in identity case.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5449 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 13:19:14 +00:00
paulc
e08e529ecf
Allow specifying the encoding for binary MIME bodies in SIP.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5442 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 12:51:38 +00:00
paulc
cabeade94e
Made the SIP "expires" parameter available in user.auth message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5440 acf43c95-373e-0410-b603-e72c3f656dc1
2013-04-12 12:48:52 +00:00
paulc
b19a205aa1
Added configuration to disable the preventive BYE when CANCELing an early dialog.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5420 acf43c95-373e-0410-b603-e72c3f656dc1
2013-03-15 16:24:14 +00:00
paulc
d27a157208
Send UDP keepalive even for SIP accounts without registration.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5328 acf43c95-373e-0410-b603-e72c3f656dc1
2012-11-20 15:29:23 +00:00
marian
3f794a2f53
Create general listener from 'listener general' section if the section is present in config to mantain compatibility broken in rev. 8084.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5325 acf43c95-373e-0410-b603-e72c3f656dc1
2012-11-19 08:50:10 +00:00
paulc
7a3445a4ee
Use a smarter SIP registration adjustment interval to avoid trouble with some providers.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5320 acf43c95-373e-0410-b603-e72c3f656dc1
2012-11-09 13:08:30 +00:00
paulc
62bbf17bfc
Fixed handling of automatic REGISTER local address broken by a previous revision.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5317 acf43c95-373e-0410-b603-e72c3f656dc1
2012-11-01 15:00:32 +00:00
marian
451cf8fa69
Moved listener general config in 'general' section. Allow it to be an udp/tcp/tls listener. Removed 'listener general' section from config.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5310 acf43c95-373e-0410-b603-e72c3f656dc1
2012-10-29 15:41:51 +00:00
paulc
adcdd500a9
Allow setting custom headers in SIP (de)registration answers.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5288 acf43c95-373e-0410-b603-e72c3f656dc1
2012-10-02 13:41:31 +00:00
marian
94b6e06060
Make sure the user data pointer carried by handled message is a CallEndpoint one.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5287 acf43c95-373e-0410-b603-e72c3f656dc1
2012-10-01 11:00:30 +00:00
paulc
a779f83eb0
Changed the handling of the "timeout" parameter so it (re)starts when call is answered.
...
Added "maxcall" and "timeout" setting and handling to channels that lacked it.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5282 acf43c95-373e-0410-b603-e72c3f656dc1
2012-09-25 09:39:49 +00:00
marian
ec97de2487
Honor detected method when sending DTMFs.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5277 acf43c95-373e-0410-b603-e72c3f656dc1
2012-09-20 09:29:28 +00:00
marian
08654d5b53
Override channel dtmf methods in chan.dtmf only if explicitly requested.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5276 acf43c95-373e-0410-b603-e72c3f656dc1
2012-09-19 14:11:11 +00:00
marian
0583b5cdc5
Changed info allowed debug message level. Show it when compiled with xdebug.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5266 acf43c95-373e-0410-b603-e72c3f656dc1
2012-09-18 11:14:58 +00:00
marian
2030126a5f
Allow send dtmf method(s) to be configurable. Detect remote party INFO support from 'Allow' header.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5264 acf43c95-373e-0410-b603-e72c3f656dc1
2012-09-18 08:40:29 +00:00
marian
c8466bc285
Fixed bug: don't change party when processing inactive events to avoid overriding it with a wrong one. Moved party changed debug message to DebugInfo level.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5251 acf43c95-373e-0410-b603-e72c3f656dc1
2012-09-05 10:19:37 +00:00
marian
a77586a7a9
Added configurable option (defaults to disable) used to change remote party's ip/port when a channel receives a response or a new transaction from a different address.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5250 acf43c95-373e-0410-b603-e72c3f656dc1
2012-09-03 09:41:46 +00:00
oana
4b096a8081
Added separate setting for activating the SIP flood protection mechanism.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5234 acf43c95-373e-0410-b603-e72c3f656dc1
2012-08-20 11:06:06 +00:00
oana
ca3528c6e2
Set allowed number of simultaneous calls from configuration files. If not set, default to the maxchans setting in yate.conf.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5227 acf43c95-373e-0410-b603-e72c3f656dc1
2012-08-17 13:29:31 +00:00
oana
9ad504a992
Added mechanism to drop INVITE/REGISTER/SUBSCRIBE/OPTIONS messages when detecting a flood.
...
Other messages, as well as reINVITEs are still allowed.
Note: the meaning of the floodevents setting from ysipchan.conf has changed: now it sets the threshold for dropping messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5226 acf43c95-373e-0410-b603-e72c3f656dc1
2012-08-17 12:31:07 +00:00
oana
3c8f472bb9
Fix bug: first check if a message is a re-INVITE and handle it if required, otherwise check if the INVITE can be accepted.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5223 acf43c95-373e-0410-b603-e72c3f656dc1
2012-08-15 12:44:53 +00:00
paulc
063adacfce
Added support for updating remote dialog and party on reINVITE.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5216 acf43c95-373e-0410-b603-e72c3f656dc1
2012-08-03 21:20:10 +00:00
paulc
bd9ac32a86
Use setMedia(0) instead of clearEndpoint() so chan.rtp with terminate=true is emitted when changing media in SIP.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5189 acf43c95-373e-0410-b603-e72c3f656dc1
2012-07-09 13:41:14 +00:00
paulc
63981eda80
Don't copy the "handlers" parameter from user.auth
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5118 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-14 17:58:58 +00:00
paulc
bf57830c7f
Added possibility to track message progress through handlers.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5107 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-12 23:47:01 +00:00
paulc
257d20c738
Protect the generic methods list with the global mutex.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5106 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-12 08:45:39 +00:00
paulc
87b5b84721
Properly map privacy=full back to SIP Remote-Party-ID and Privacy headers.
...
Got rid of a few useless String allocations.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5090 acf43c95-373e-0410-b603-e72c3f656dc1
2012-06-04 12:06:33 +00:00
paulc
e7c7b6ceba
Allow setting the external address of a NAT in the SDP sent by SIP.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@5058 acf43c95-373e-0410-b603-e72c3f656dc1
2012-05-11 21:33:21 +00:00
paulc
3e24933763
Add SIP call parameters before performing authentication.
...
This allows user.auth to overwrite rather than duplicate parameters.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5055 acf43c95-373e-0410-b603-e72c3f656dc1
2012-05-11 12:57:16 +00:00
paulc
dcfa4cc8e3
Execute a hangup immediately if received a CANCEL message.
...
This fixes the total duration of a cancelled call in slow routing scenarios.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5017 acf43c95-373e-0410-b603-e72c3f656dc1
2012-04-21 11:12:35 +00:00
paulc
b682d50334
Make sure we disconnect a SIP call on all branches of hangup.
...
Fixes BYE without CANCEL not being propagated.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4994 acf43c95-373e-0410-b603-e72c3f656dc1
2012-04-04 17:36:34 +00:00
paulc
85b209df57
Map received disconnect cause "noanswer" to 480 Temporarily Unavailable.
...
Code 487 should be used only when a transaction is CANCELed.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4984 acf43c95-373e-0410-b603-e72c3f656dc1
2012-03-29 16:34:32 +00:00
paulc
f93fe6bc0d
Allow the "number" parameter to be processed in the user.auth message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4983 acf43c95-373e-0410-b603-e72c3f656dc1
2012-03-27 15:16:42 +00:00
paulc
ab2222ef67
Changed the way SIP authentication is performed by UAS.
...
This allows implementing custom authentication schemes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4975 acf43c95-373e-0410-b603-e72c3f656dc1
2012-03-26 00:25:00 +00:00
paulc
455960a715
Added possibility to return custom SIP failure from user.auth message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4971 acf43c95-373e-0410-b603-e72c3f656dc1
2012-03-19 17:37:21 +00:00
paulc
2c049bfbd1
Added the SIP user agent as "device" parameter of the user.auth message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4970 acf43c95-373e-0410-b603-e72c3f656dc1
2012-03-18 16:57:28 +00:00
paulc
e1aada00d3
Clear any local SIP media channels before populating the 200 answer to BYE.
...
This allows returning P-RTP-Stat when the other party initiates the hangup.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4860 acf43c95-373e-0410-b603-e72c3f656dc1
2012-02-08 15:56:00 +00:00
paulc
2256598929
Set the custom 3xx redirect code in the channel's reason too, not only in SIP message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4762 acf43c95-373e-0410-b603-e72c3f656dc1
2011-12-15 10:06:40 +00:00
paulc
a61fcc1723
Forward the SIP audio change information to the peer channel.
...
Change SIP media format if the peer changed.
This allows switching to T.38 when RTP is proxied.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4712 acf43c95-373e-0410-b603-e72c3f656dc1
2011-11-18 13:01:34 +00:00
marian
2c3127876c
Add login/logout failure error to user.notify message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4677 acf43c95-373e-0410-b603-e72c3f656dc1
2011-11-04 15:30:55 +00:00
paulc
cd83ba0fce
Added new static mutex to protect channel disconnect parameters during access.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4662 acf43c95-373e-0410-b603-e72c3f656dc1
2011-10-28 18:23:26 +00:00
paulc
702c82ede6
Fixed SIP status command broken by SVN commit 3776.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4661 acf43c95-373e-0410-b603-e72c3f656dc1
2011-10-28 17:30:45 +00:00
paulc
65ee32cc00
Added hack to preserve the RTP session when just the address has changed.
...
Can be used together with the hack for ignoring port change.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4639 acf43c95-373e-0410-b603-e72c3f656dc1
2011-10-05 20:43:25 +00:00
paulc
42772c000d
Allow global calls limits to be reloaded.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4636 acf43c95-373e-0410-b603-e72c3f656dc1
2011-09-26 14:55:42 +00:00
paulc
8c230e1d21
Fixed a few errors exposed by -Wunused-but-set-variable.
...
Removed some leftover variables exposed by same new compiler check.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4589 acf43c95-373e-0410-b603-e72c3f656dc1
2011-09-08 10:36:32 +00:00
paulc
ca1b7c21d8
At end of routing check if the INVITE transaction still exists.
...
This allows proper processing of an early CANCEL while routing is in progress.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4573 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-29 09:42:30 +00:00
marian
eb783b04e6
Added extra check to avoid building a sip party with invalid remote address.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4566 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-24 15:03:23 +00:00
marian
57bff41ad4
String to integer conversion can now check the result against allowed min/max values. Use it in sip module.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4562 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-23 15:14:28 +00:00
marian
5845857da0
Double the timeout period before using it. Decreased retransmission counters default values to keep the same overall timeout.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4559 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-22 15:16:26 +00:00
marian
df8ec5d64d
Made configurable the number of times to transmit a request or a final response when retransmission is required.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4556 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-22 14:11:51 +00:00
marian
fe2891e3cc
Fixed bug: return proxy address when a line's domain is requested and there is no domain or registrar configured. This bug was introduced in SVN Rev. 4493.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4546 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-18 11:29:54 +00:00
marian
e6b65c4014
Added configurable certificate file to present on outgoing TLS connections.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4545 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-18 10:49:27 +00:00
marian
161554d22d
Always reset a line's party when logout is required in user.login message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4541 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-11 14:52:32 +00:00
marian
fe5e9943fd
Properly handle host and port in sip generate message handler. Use default when missing.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4540 acf43c95-373e-0410-b603-e72c3f656dc1
2011-08-10 11:22:18 +00:00
marian
d8b503eb25
Listener type now defaults to udp if invalid. Handle listener type change in config.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4531 acf43c95-373e-0410-b603-e72c3f656dc1
2011-07-29 11:03:19 +00:00
marian
c90d715654
Build the tls listener even if context is empty. Added debug.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4526 acf43c95-373e-0410-b603-e72c3f656dc1
2011-07-27 09:27:01 +00:00
marian
3e40ef43a6
Return line's resolved party address/port to match it for incoming requests.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4523 acf43c95-373e-0410-b603-e72c3f656dc1
2011-07-25 13:45:43 +00:00
paulc
7afc6c6532
Added missing ISUP content to disconnection SIP messages (BYE, CANCEL, 4xx/5xx).
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4521 acf43c95-373e-0410-b603-e72c3f656dc1
2011-07-21 17:27:29 +00:00
marian
25a1c95224
Made virtual base class destructor.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4496 acf43c95-373e-0410-b603-e72c3f656dc1
2011-07-12 15:21:39 +00:00
marian
34924962aa
Added support for tcp/tls sip transport. The sip module can now use (bind on) more then one address for udp.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4493 acf43c95-373e-0410-b603-e72c3f656dc1
2011-07-12 14:55:02 +00:00
paulc
31b8230290
Emit new message "user.authfail" for paswword mismatch for existing users.
...
Use that message in the ban script.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4451 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-10 13:39:24 +00:00
paulc
9ddec50e94
Optimized const String usage in the SIP module.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4431 acf43c95-373e-0410-b603-e72c3f656dc1
2011-06-03 15:14:38 +00:00
paulc
e2dac8d2a2
Pick up any new formats (even if not negotiated before) in RTP forward mode.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4417 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-28 12:43:15 +00:00
paulc
db9d880bc1
Add the billid parameter to SIP generated user.auth messages.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4396 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-19 11:21:30 +00:00
paulc
d0d8c101ad
Added support for altering the reason and error code of SIP Registrar answers.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4382 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-17 11:12:37 +00:00
paulc
f214a2b733
Copy UAS SIP headers between user.register and REGISTER messages and answers.
...
In UAC mode copy returned headers from REGISTER answer to user.notify message.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4380 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-17 10:20:16 +00:00
paulc
34c79e5cd6
Use the proxy address if domain is not set for outbound calls.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4372 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-12 20:55:26 +00:00
paulc
09a9c34518
Allow setting arbitrary SIP headers in rejected calls.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4371 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-12 20:29:27 +00:00
paulc
bba5f88ac9
Allow copying parameters starting with authfail_ from failed user.auth messages.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4370 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-12 19:26:15 +00:00
paulc
28eeb05ffe
Added more mappings for SIP responses to improve mapping to ISUP and ISDN.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4360 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-05 12:43:40 +00:00
paulc
bcc3792cfc
Base64 decode and encode binary bodies in generic SIP messages.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4356 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-04 11:07:05 +00:00
marian
5eb536aaa4
Changed the name of the functions encoding and decoding isup bodies to fix scope related compile errors in VC++.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4355 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-04 10:47:17 +00:00
paulc
afc6130d71
Renamed SIP parameter "transport" to "ip_transport" because of collision with audio media transport.
...
Fixed lack of media bug introduced by Rev 4349.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4353 acf43c95-373e-0410-b603-e72c3f656dc1
2011-05-04 09:01:43 +00:00
paulc
5aa046f6bb
Detect generic SIP messages coming from registered accounts, set in_line and skip authentication if so.
...
Decode more info from the incoming generic messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4349 acf43c95-373e-0410-b603-e72c3f656dc1
2011-04-28 10:36:48 +00:00
paulc
9006eefd04
Fix the hangup of incoming SIP calls that didn't had the dialog tag updated.
...
This could happen if a call was dropped immediately after being answered.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4333 acf43c95-373e-0410-b603-e72c3f656dc1
2011-04-20 18:41:14 +00:00
paulc
3e6e71a2e3
Fixed a number of concurrency issues regarding reINVITE processing.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4332 acf43c95-373e-0410-b603-e72c3f656dc1
2011-04-20 18:38:30 +00:00
paulc
26e0e1021b
Terminate a SIP call for which we had a timeout on a reINVITE as media state becomes uncertain.
...
Bug report and patch provided by Matthew.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4310 acf43c95-373e-0410-b603-e72c3f656dc1
2011-04-18 11:17:50 +00:00
paulc
c4627996d9
Clear the initiated reINVITE transaction on completion, allow further reINVITEs.
...
Bug report and patch provided by Matthew.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4309 acf43c95-373e-0410-b603-e72c3f656dc1
2011-04-18 11:03:23 +00:00
paulc
3c4e6a01b6
The default RFC 2833 payload can be configured and overriden per call.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4287 acf43c95-373e-0410-b603-e72c3f656dc1
2011-04-12 15:41:49 +00:00
paulc
84f04adaa9
Decode MIME type message/sipfrag as lines of text.
...
Allow generic processing of SIP INFO messages that are not used for DTMFs.
Properly add lines of text bodies to generic SIP messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4273 acf43c95-373e-0410-b603-e72c3f656dc1
2011-04-07 12:16:12 +00:00
paulc
f9469cb68f
Honor an earlymedia=false parameter even when using RTP forwarding.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4267 acf43c95-373e-0410-b603-e72c3f656dc1
2011-04-06 09:13:16 +00:00
oana
5a1837a521
Fixed checking if a engine.status module is indeed intended for that module. Fixed bug: don't print for a second time the status message for IAX module.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4221 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-28 12:40:44 +00:00
paulc
edf28bc0c7
Sanitize the custom SIP cause codes, must be >= 300.
...
Allow altering the SIP code in the chan.disconnected message.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4195 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-18 14:03:42 +00:00
paulc
5278f71b7f
Leave the tel: URIs untouched when sent on an outbound SIP call.
...
Also don't add sip: in front of sip:number URIs (we turned to sip:sip:number).
git-svn-id: http://yate.null.ro/svn/yate/trunk@4194 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-18 13:14:36 +00:00
paulc
c9a2c40f32
Moved the post-disconnect hooking code from ysigchan to the Channel class.
...
Added capability of sending arbitrary SIP headers on call disconnect.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4193 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-17 20:57:34 +00:00
paulc
6a09c86bad
Added flags that control how SIP message components are automatically completed.
...
These flags can be configured per engine and can be overridden in some messages by setting an "xsip_flags" parameter.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4161 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-07 13:50:59 +00:00
paulc
11e1b27e83
Added capability to set response code and additional parameters when redirecting a SIP call as UAS.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4149 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-02 16:58:22 +00:00
paulc
3c724527a4
Copy SIP headers and decode ISUP (SIP-T/SIP-I) body to disconnect parameters.
...
Parameters are put in local chan.hangup and peer's chan.disconnected messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4142 acf43c95-373e-0410-b603-e72c3f656dc1
2011-03-01 16:08:52 +00:00
paulc
0ff37e944c
Translate between SIP Remote-Party-ID fields "party" and "id-type" and Yate parameters "remote_party" and "remote_id_type".
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@4083 acf43c95-373e-0410-b603-e72c3f656dc1
2011-01-28 13:53:30 +00:00
paulc
7c4801873f
Automatically copy disconnect parameters to the chan.hangup message.
...
Provide those parameters to the peer call endpoint when disconnecting it.
Add numeric cause_q931 to disconnect params of h323chan.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4052 acf43c95-373e-0410-b603-e72c3f656dc1
2011-01-21 10:21:01 +00:00
oana
8fc205bb13
Changed the format of the accounts, links and interfaces status reported through engine.status. Added accountUsername OID. Modified the monitoring module to deal with the status change and the need to handle the accountUsername OID information.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3938 acf43c95-373e-0410-b603-e72c3f656dc1
2010-12-09 14:30:47 +00:00
oana
cda9ed670f
Added SNMP support.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3776 acf43c95-373e-0410-b603-e72c3f656dc1
2010-11-03 16:27:30 +00:00
paulc
7b3500fa58
Added thread priority setting for the SIP module.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3753 acf43c95-373e-0410-b603-e72c3f656dc1
2010-10-25 13:13:35 +00:00
paulc
b36f9c8848
Made several Regexps static const so they are compiled only once, speeds up processing.
...
One instance spotted by Allan Sandfeld Jensen, others by grep.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3389 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-17 11:08:00 +00:00
paulc
f84dfdba95
Check the line before using it to alter the domain.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3245 acf43c95-373e-0410-b603-e72c3f656dc1
2010-04-26 21:30:28 +00:00
paulc
8ccfc1641c
Added support for detecting the domain of incoming SIP requests, gets copied to the generic "domain" parameter.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3242 acf43c95-373e-0410-b603-e72c3f656dc1
2010-04-26 13:38:03 +00:00
paulc
551731cd33
Allow setting the outbound SIP proxy as host:port
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3209 acf43c95-373e-0410-b603-e72c3f656dc1
2010-04-19 13:25:08 +00:00
paulc
aaeed9c8be
Emit a BYE only if we have a SIP dialog - either early or established.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3175 acf43c95-373e-0410-b603-e72c3f656dc1
2010-04-08 22:49:58 +00:00
paulc
8145b0fe96
Store initially guessed local address, re-register only if it changed.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3172 acf43c95-373e-0410-b603-e72c3f656dc1
2010-04-07 11:27:30 +00:00
paulc
ebaec41257
Lock the module while accessing or changing SIP dialog information.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3125 acf43c95-373e-0410-b603-e72c3f656dc1
2010-03-12 16:25:37 +00:00
paulc
6e3c0407d0
Copy RTP stats in SIP to the CDR and to BYE or 200 message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3106 acf43c95-373e-0410-b603-e72c3f656dc1
2010-03-03 19:05:01 +00:00
paulc
ccdfe0c691
Preserve the Call-ID across REGISTER messages in a single login session.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3096 acf43c95-373e-0410-b603-e72c3f656dc1
2010-02-23 18:22:59 +00:00
paulc
b6885511ef
Add the REGISTER request URI and Call-ID to the user.(un)register messages.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3063 acf43c95-373e-0410-b603-e72c3f656dc1
2010-02-02 23:59:54 +00:00
paulc
6eeb68bb1a
Added Channel::initChan() method to add the channel to the driver explicitely, after the object is fully constructed.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@3033 acf43c95-373e-0410-b603-e72c3f656dc1
2010-01-26 10:31:32 +00:00
paulc
5cde9ef2be
Automatically reset the maxcall timer when entering "answered" status.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2991 acf43c95-373e-0410-b603-e72c3f656dc1
2009-12-18 19:08:41 +00:00
paulc
05fa7aca7c
Copy by default some parameters from call.execute to chan.startup of outgoing calls.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2964 acf43c95-373e-0410-b603-e72c3f656dc1
2009-11-25 18:34:54 +00:00
paulc
b0c8da2dc0
Emit call.update only when the SIP dialog tags have changed.
...
Avoids flooding the system with useless call.update and call.cdr messages.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2874 acf43c95-373e-0410-b603-e72c3f656dc1
2009-10-21 14:10:47 +00:00
paulc
75b98358a7
Added an extra parameter to SDPSession::updateFormats() allowing it to add or remove media.
...
Use the SDPSession::updateFormats() method in SIP instead of reimplementing it.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2873 acf43c95-373e-0410-b603-e72c3f656dc1
2009-10-20 22:54:56 +00:00
paulc
ea0b4867a7
Chain the debugging of the SIP engine to the SIP channels plugin.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2867 acf43c95-373e-0410-b603-e72c3f656dc1
2009-10-16 12:04:32 +00:00
paulc
aa143b4e34
Fixed the way the SIP transaction answer code is returned to xsip.generate, it wasn't dealing well with timeouts.
...
While waiting for the arbitrary transaction to finish call Thread::idle() instead of yield().
git-svn-id: http://yate.null.ro/svn/yate/trunk@2845 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-18 11:17:50 +00:00
paulc
d2418f656d
Dispatch a chan.rtp with terminate=true when a SIP media is removed or replaced.
...
Added several channel parameters to the chan.rtp message.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2839 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-14 18:52:53 +00:00
paulc
381bb557b6
Provide the entire SDPMedia to the mediaChanged() mthod, not only the name of the media.
...
Add the "rtpid" parameter to the chan.rtp message if the media id() is available.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2832 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-14 09:06:16 +00:00
paulc
4f0c854312
Use the newly added SIPDialog methods.
...
Identify the dialogs RFC 3261 style (only by Call-ID, From-tag, To-tag) ignoring the From-URI and To-URI.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2824 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-06 15:00:22 +00:00
paulc
22cf311a50
Fixed a few bugs introduced by Rev. 2805: Clear the data endpoints when the transport info changes, use the proper default audio formats when none specified.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2818 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-01 15:18:21 +00:00
paulc
063f155ef1
Use the new SDP library in SIP and MGCP.
...
The PSTN channel can negotiate RTP forwarding if the circuits are terminated on a MGCP gateway.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2805 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-24 12:09:34 +00:00
paulc
88543f0ef0
Process a 2xx answer to a forked SIP call after changing the disalog tag to match.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2792 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-14 12:52:40 +00:00
paulc
8020ea08ab
In the outbound SIP call legs put the generated Call-ID in chan.startup to be available for CDR building.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2788 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-13 11:39:44 +00:00
paulc
e9aafe7511
Added code and setting to prevent rebuilding the RTP when only the remote port has changed in the SDP offer.
...
This can prevent a neverending sequence of reINVITEs, each end trying to adjust to the changes of the other.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2786 acf43c95-373e-0410-b603-e72c3f656dc1
2009-08-12 15:18:36 +00:00
paulc
ebd41dfaec
Use the platform idle time in various sleeps in SIP and Jabber.
...
Fixed a compiler warning about the copy constructor of Mutex and
Semaphore.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2763 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-22 15:41:28 +00:00
paulc
aae55c9a65
Obey expires interval enforced by the SIP registrar.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2749 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-07 10:29:32 +00:00
paulc
70445d56b6
New parameter "rtp_localip" overrides configured local RTP address for outbound SIP call legs.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2740 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-26 15:33:22 +00:00
paulc
5499650213
Changed thread names to be uniform and easily readable.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2733 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-22 14:48:26 +00:00
paulc
65fa4adbd4
Fixed warnings and a few minor bugs when compiling on a different architecture.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2724 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-19 11:19:20 +00:00
paulc
6c62be3718
Fixed filtering of SDP parameters in case of using RTP forward.
...
The local RTP case was fixed in Rev. 2606.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2654 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-27 14:34:35 +00:00
paulc
a5ba174c12
Add the sip: protocol on outgoing calls if none is specified.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2648 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-22 18:15:48 +00:00
paulc
207ce16736
Deal better with SIP transaction timeouts, map 408 to "noconn" but add raw cause code to disconnect() and chan.hangup message.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2621 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-10 11:50:00 +00:00
paulc
419bbb3123
Fixed parsing of non-RTP transports in SDP as those don't use payload codes or format maps.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2606 acf43c95-373e-0410-b603-e72c3f656dc1
2009-04-30 12:32:39 +00:00
paulc
ff612b95d4
If an early RTP start is requested but media list is unknown build a best guess.
...
Patch by Peter Olsson - support for 3Com NBX PBX.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2604 acf43c95-373e-0410-b603-e72c3f656dc1
2009-04-29 22:07:44 +00:00
paulc
c9cdebef36
Support for RFC 4568 (SRTP security descriptors in SIP/SDP).
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2557 acf43c95-373e-0410-b603-e72c3f656dc1
2009-04-01 20:16:36 +00:00
paulc
5d0ad3e90b
Support for RFC 3323 SIP Privacy header in addition to Remote-Party-ID.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2555 acf43c95-373e-0410-b603-e72c3f656dc1
2009-03-31 20:23:46 +00:00
paulc
57ca222b94
Made generation of outgoing INVITE Diversion header more flexible.
...
git-svn-id: http://yate.null.ro/svn/yate/trunk@2553 acf43c95-373e-0410-b603-e72c3f656dc1
2009-03-30 10:29:29 +00:00