summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLubos Dolezel <lubos@dolezel.info>2015-06-15 14:46:12 +0200
committerLubos Dolezel <lubos@dolezel.info>2015-06-15 14:47:59 +0200
commite208bf7d5e5bb8b60db6540edcb575a3289aefb5 (patch)
tree43299281454bf4429827d7365c374ff5d136bd7b
parent541d947a9e41cb63ccc8e7c63c3aa1a63d4920b0 (diff)
downloadtwinkle-e208bf7d5e5bb8b60db6540edcb575a3289aefb5.tar
twinkle-e208bf7d5e5bb8b60db6540edcb575a3289aefb5.tar.gz
twinkle-e208bf7d5e5bb8b60db6540edcb575a3289aefb5.tar.lz
twinkle-e208bf7d5e5bb8b60db6540edcb575a3289aefb5.tar.xz
twinkle-e208bf7d5e5bb8b60db6540edcb575a3289aefb5.zip
Update the NEWS file with all the new stuff.
-rw-r--r--ChangeLog796
-rw-r--r--NEWS11
-rw-r--r--TODO11
3 files changed, 11 insertions, 807 deletions
diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index c8916bb..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,796 +0,0 @@
-25 february 2009 - 1.4.2
-========================
-- Integration with Diamondcard Worldwide Communication Service
- (worldwide calls to regular and cell phones and SMS).
-- Show number of calls and total call duration in call history.
-- Show message size while typing an instant message.
-- Show "referred by" party for an incoming transferred call in systray popup.
-- Option to allow call transfer while consultation call is still in progress.
-- Improved lock file checking. No more stale lock files.
-
-Bug fixes:
-----------
-- Opening an IM attachment did not work anymore.
-
-Build fixes:
-------------
-- Link with ncurses library
-
-
-31 january 2009 - 1.4.1
-=======================
-Bug fixes:
-----------
-- No sound when Twinkle is compiled without speex support.
-
-Build fixes:
-------------
-- Compiling without KDE sometimes failed (cannot find -lqt-mt).
-- Configure script did not correctly check for the readline-devel package.
-
-
-25 january 2009 - 1.4
-=====================
-- Service route discovery during registration.
-- Codec preprocessing: automatic gain control, voice activation detection,
- noise reduction, acoustic echo cancellation (experimental).
-- Support tel-URI as destination address for a call or instant message.
-- User profile option to expand a telephone number to a tel-URI instead
- of a sip-URI.
-- Add descending q-value to contacts in 3XX responses for the redirection
- services.
-- AKAv1-MD5 authentication.
-- Command line editing, history, auto-completion.
-- Ignore wrong formatted domain-parameter in digest challenge.
-- Match tel-URI in incoming call to address book.
-- Determine RTP IP address for SDP answer from RTP IP address in SDP offer.
-- Show context menu's when pressing the right mouse button instead of
- after clicking.
-- Swedish translation
-- Resampled ringback tone from 8287 Hz to 8000 Hz
-
-Bug fixes
----------
-- Text line edit in the message form looses focus after sending an IM.
-- Twinkle does not escape reserved symbols when dialing.
-- Deregister all function causes a crash.
-- Twinkle crashes at startup in CLI mode.
-- Twinkle may freeze when an ALSA error is detected when starting
- the ringback tone and the outgoing call gets answered very fast.
-- User profile editor did not allow spaces in a user name.
-
-New RFC's
----------
-RFC 3608 - Session Initiation Protocol (SIP) Extension Header Field
- for Service Route Discovery During Registration
-
-
-24 august 2008 - 1.3.2
-======================
-- Fix in non-KDE version for gcc 4.3
-
-23 august 2008 - 1.3.1
-======================
-- Disable file attachment button in message window when destination
- address is not filled in
-- Updated russian translation
-
-Build fixes
------------
-- Fixes for gcc 4.3 (missing includes)
-- non-KDE version failed to build
-
-
-18 august 2008 - 1.3
-====================
-- Send file attachment with instant message.
-- Show timestamp with instant messages.
-- Instant message composition indication (RFC 3994).
-- Persistent TCP connections with keep alive.
-- Do not try to send SIP messages larger than 64K via UDP.
-- Integration with libzrtcpp-1.3.0
-- Xsession support to restore Twinkle after system shutdown/startup.
-- Call snd_pcm_state to determine jitter buffer exhaustion (some ALSA
- implementations gave problems with the old method).
-- SDP parser allows SDP body without terminating CRLF.
-- Russian translation.
-
-Bug fixes
----------
-- SIP parser did not allow white space between header name and colon.
-- With "send in-dialog requests to proxy" enabled and transport
- mode set to "auto", in-dialog requests are wrongly sent via TCP.
-- Crash when a too large message is received.
-- Comparison of authentication parameters (e.g. algorithm) were case-sensitive.
- These comparisons must be case-insensitive.
-- SDP parser could not parse other media transports than RTP/AVP.
-- Twinkle sent 415 response instead of 200 OK on in-dialog INFO without body.
-- Twinkle responds with 513 Message too large on an incoming call.
-- ICMP error on STUN request causes Twinkle to crash.
-- Add received-parameter to Via header of an incoming request if it contains
- an empty rport parameter (RFC 3581)
-- Twinkle did not add Contact header and copy Record-Route header
- to 180 response.
-
-New RFC's
----------
-RFC 3994 - Indication of Message Composition for Instant Messaging
-
-
-8 march 2008 - 1.2
-==================
-- SIP over TCP
-- Automatic selection of IP address.
- * On a multi-homed machine you do not have to select an IP address/NIC
- anymore.
-- Support for sending a q-value in a registration contact.
-- Send DTMF on an early media stream.
-- Choose auth over auth-int qop when server supports both for authentication.
- This avoids problems with SIP ALGs.
-- Support tel-URI in From and To headers in incoming SIP messages.
-- Print a log rotation message at end of log when a log file is full.
-- Remove 20 character limit on profile names.
-- Reject an incoming MESSAGE with 603 if max. sessions == 0
-- Delivery notification when a 202 response is received on a MESSAGE.
-
-Bug fixes
----------
-- When you deactivate a profile that has MWI active, but MWI subscription failed,
- and subsequently activate this profile again, then Twinkle does not subscribe to
- MWI.
-- The max redirection value was always set to 1.
-- Leading space in the body of a SIP message causes a parse failure
-- Twinkle crashes with SIGABRT when it receives an INVITE with
- a CSeq header that contains an invalid method.
-- Latest release of lrelease corrupted translation files.
-- Twinkle crashes on 'twinkle --cmd line'
-- If an MWI NOTIFY does not contain a voice msg summary, twinkle
- shows a random number for the amount of messages waiting.
-- Depending on the locale Twinkle encoded a q-value with a comma
- instead of a dot as decimal point.
-
-Build changes
--------------
-- Modifications for gcc 4.3.
-- Remove fast sequence of open/close calls for ALSA to avoid
- problems with bluez.
-
-
-21 july 2007 - 1.1
-==================
-- French translation
-- Presence
-- Instant messaging
-- New CLI commands: presence, message
-
-Bug fixes
----------
-- If a session was on-hold and Twinkle received a re-INVITE without
- SDP, it would offer SDP on-hold in the 200 OK, instead of a brand
- new SDP offer.
-- Twinkle refused to change to another profile with the same user name
- as the current active profile.
-- ICMP processing did not work most times (uninitialized data).
-- Replace strerror by strerror_r (caused rare SIGSEGV crashes)
-- Fix deadlock in timekeeper (caused rare freezes)
-
-New RFC's
----------
-RFC 3428 - Session Initiation Protocol (SIP) Extension for Instant Messaging
-RFC 3856 - A Presence Event Package for the Session Initiation Protocol (SIP)
-RFC 3863 - Presence Information Data Format (PIDF)
-RFC 3903 - Session Initiation Protocol (SIP) Extension
- for Event State Publication
-
-
-19 may 2007 - 1.0.1
-===================
-- Czech translation
-- Check on user profiles having the same contact name at startup.
-- When comparing an incoming INVITE request-URI with the contact-name,
- ignore the host part to avoid NAT problems.
-- A call to voice mail will not be attached to the "redial" button.
-- Added voice mail entry to services and systray menu.
-- New command line options: --show, --hide
-- TWINKLE_LINE environment variable in scripts. This variable contains
- the line number (starting at 1) associated with a trigger.
-- Preload KAddressbook at startup.
-- Allow multiple occurrences of the display_msg parameter in the incoming call
- script to create multi-line messages.
-- Handle SIP forking and early media interaction
-
-Bug fixes
----------
-- Fix conference call
-- If lock file still exists when you start Twinkle, Twinkle asks
- if it should start anyway. When you click 'yes', Twinkle does not start.
-- Audio validation opened soundcard in stereo instead of mono
-- When quitting Twinkle while the call history window is open, a segfault occurs
-- When an incoming call is rejected when only unsupported codecs are offered,
- it does not show as a missed call in the call history.
-- Segfault when the remote party establishes an early media session without
- sending a to-tag in the 1XX response (some Cisco devices).
-- in_call_failed trigger was not called when the call failed before ringing.
-- Escape double quote with backslash in display name.
-- On some system Twinkle occasionally crashed at startup with the following
- error: Xlib: unexpected async reply
-
-Build Changes
--------------
-- Remove AC_CHECK_HEADERS([]) from configure.in
-- Configure checks for lrelease.
-
-Other
------
-- Very small part of the comments has been formatted now for automatic
- documentation generation with doxygen.
-
-
-22 jan 2007 - 1.0
-=================
-- Local address book
-- Message waiting indication (MWI)
- * Sollicted MWI as specified by RFC 3842
- * Unsollicited MWI as implemented by Asterisk
-- Voice mail speed dial
-- Call transfer with consultation
- * This is a combination of a consultation call on the other line
- followed by a blind transfer.
-- Attended call transfer
- * This is a combination of a consultation call on the other line
- followed by a replacement from B to C of the call on the first line.
- This is only possible if the C-party supports "replaces".
- If "replaces" is not supported, then twinkle automatically falls
- back to "transfer with consultation".
-- User identity hiding
-- Multi language support
- This version contains Dutch and German translations
-- Send BYE when a CANCEL/2XX INVITE glare occurs.
-- When call release was not immediate due to network problems or protocol errors,
- the line would be locked for some time. Now Twinkle releases a call in the
- background immediately freeing the line for new calls.
-- Escape reserved symbols in a URI by their hex-notation (%hex).
-- Changed key binding for Bye from F7 to ESC
-- When a lock file exists at startup, Twinkle asks if you want to override it
-- New command line options: --force, --sip-port, --rtp-port
-- Ring tone and speaker device list now also shows playback only devices
-- Microphone device list now also shows capture only devices
-- Validate audio device settings on startup, before making a call, before
- answering a call.
-- SIP_FROM_USER, SIP_FROM_HOST, SIP_TO_USER, SIP_TO_HOST variables for call scripts.
-- display_msg parameter added to incoming call script
-- User profile options to indicate which codec preference to follow
-- Twinkle now asks permission for an incoming REFER asynchronously. This
- prevents blocking of the transaction layer.
-- Highlight missed calls in call history
-- Support for G.726 ATM AAL2 codeword packing
-- replaces SIP extension (RFC 3891)
-- norefesub SIP extension (RFC 4488)
-- SIP parser supports IPv6 addresses in SIP URI's and Via headers
- (Note: Twinkle does not support transport over IPv6)
-- Support mid-call change of SSRC
-- Handling of SIGCHLD, SIGTERM and SIGINT on platforms implementing
- LinuxThreads instead of NPTL threading (e.g. sparc)
-
-Bug fixes
----------
-- Invalid speex payload when setting ptime=30 for G.711
-- When editing the active user profile via File -> Change User -> Edit
- QObject::connect: No such slot MphoneForm::displayUser(t_user*)
-- 32 s after call setup the DTMF button gets disabled.
-- 4XX response on INVITE does not get properly handled.
- From/To/Subject labels are not cleared. No call history record is made.
-- The dial combobox accepted a newline through copy/past. This corrupted
- the system settings.
-- When a far-end responds with no supported codecs, Twinkle automatically
- releases the call. If the far-end sends an invalid response on this
- release and the user pressed the BYE button, Twinkle crashed.
-- When using STUN the private port was put in the Via header instead of
- the public port.
-- Twinkle crashes once in a while, while it is just sitting idle.
-
-Build changes
--------------
-- If libbind exists then link with libbind, otherwise link with libresolv
- This solves GLIBC_PRIVATE errors on Fedora
-- Link with libboost_regex or libboost_regex-gcc
-
-New RFC's
----------
-RFC 3323 - A Privacy Mechanism for the Session Initiation Protocol (SIP)
-RFC 3325 - Private Extensions to the Session Initiation Protocol (SIP) for
- Asserted Identity within Trusted Networks
-RFC 3842 - A Message Summary and Message Waiting Indication Event Package
- for the Session Initiation Protocol (SIP)
-RFC 3891 - The Session Initiation Protocol (SIP) "Replaces" Header
-RFC 4488 - Suppression of Session Initiation Protocol (SIP)
- REFER Method Implicit Subscription
-
-
-01 oct 2006 - Release 0.9
-=========================
-- Supports Phil Zimmermann's ZRTP and SRTP for
- secure voice communication.
- ZRTP/SRTP is provided by the latest version (1.5.0) of the
- GNU ccRTP library.
- The implementation is interoperable with Zfone beta2
-- SIP INFO method (RFC 2976)
-- DTMF via SIP INFO
-- G.726 codec (16, 24, 32 and 48 kbps modes)
-- Option to hide display
-- CLI command "answerbye" to answer an incoming or hangup an established call
-- Switch lines from system tray menu
-- Answer or reject a call from the KDE systray popup on incoming call
-- Icons to indicate line status
-- Default NIC option in system settings
-- Accept SDP offer without m= lines (RFC 3264 section 5, RFC 3725 flow IV)
-
-Bug fixes
----------
-- t_audio::open did not return a value
-- segmentation fault when quitting Twinkle in transient call state
-- Twinkle did not accept message/sipfrag body with a single CRLF at the end
-- user profile could not be changed on service redirect dialog
-- Twinkle did not react to 401/407 authentication challenges for
- PRACK, REFER, SUBSCRIBE and NOTIFY
-
-Build changes
--------------
-- For ZRTP support you need to install libzrtpcpp first. This library
- comes as an extension library with ccRTP.
-
-
-09 jul 2006 - Release 0.8.1
-===========================
-- Removed iLBC source code from Twinkle. To use iLBC you can
- link Twinkle with the ilbc library (ilbc package). When you
- have the ilbc library installed on your system, then Twinkle's
- configure script will automatically setup the Makefiles to
- link with the library.
-
-Bug fixes
----------
-- Name and photo lookups in KAddressbook on incoming calls may
- freeze Twinkle.
-
-Build improvements
-------------------
-- Added missing includes to userprofile.ui and addressfinder.h
-- Configure has new --without-speex option
-
-
-01 jul 2006 - Release 0.8
-=========================
-- iLBC
-- Make supplementary service settings persistent
-- Lookup name in address book for incoming call
-- Display photo from address book of caller on incoming call
-- Number conversion rules
-- Always popup systray notification (KDE only) on incoming call
-- Add organization and subject to incoming call popup
-- New call script trigger points: incoming call answered, incoming call failed,
- outgoing call, outgoing call answered, outgoing call failed, local release,
- remote release.
-- Added 'end' parameter for the incoming call script
-- Option to provision ALSA and OSS devices that are not in the standard list
- of devices.
-- Option to auto show main window on incoming call
-- Resized the user profile window such that it fits on an 800x600 display
-- Popup the user profile selection window, when the SIP UDP port is occupied
- during startup of Twinkle, so the user can change to another port.
-- Skip unsupported codecs in user profile during startup
-
-Bug fixes
----------
-- Sometimes the NAT discovery window never closed
-- When RTP timestamps wrap around some RTP packets may be discarded
-- When the dial history contains an entry of insane length, the
- main window becomes insanely large on next startup
-- On rare occasions, Twinkle could respond to an incoming call for
- a deactivated user profile.
-- Credentials cache did not get erased when a failure response other
- than 401/407 was received on a REGISTER with credentials.
-- G.711 enocders amplified soft noise from the microphone.
-
-Newly supported RFC's
----------------------
-RFC 3951 - Internet Low Bit Rate Codec (iLBC)
-RFC 3952 - Real-time Transport Protocol (RTP) Payload Format
- for internet Low Bit Rate Codec (iLBC) Speech
-
-Build notes
------------
-- New dependency on libboost-regex (boost package)
-
-
-07 may 2006 - Release 0.7.1
-===========================
-- Check that --call and --cmd arguments are not empty
-- When DTMF transport is "inband", then do not signal RFC2833 support in SDP
-
-Bug fixes
----------
-- CLI and non-KDE version hang when stopping ring tone
-- The GUI allowed payload type 96-255 for DTMF and Speex, while
- maximum value is only 127
-- When a dynamic codec change takes place at the same time as a re-INVITE
- Twinkle sometimes freezes.
-- Sending RFC 2833 DTMF events fails when codec is speex-wb or speex-uwb
-
-
-29 apr 2006 - Release 0.7
-=========================
-- Speex support (narrow, wide and ultra wide band)
-- Support for dynamic payload numbers for audio codecs in SDP
-- Inband DTMF (option for DTMF transport in user profile)
-- UTF-8 support to properly display non-ASCII characters
-- --cmd command line option to remotely execute CLI commands
-- --immediate command line option to perform --call and --cmd without user
- confirmation.
-- --set-profile command line option to set the active profile.
-- Support "?subject=<subject>" as part of address for --call
-- The status icon are always displayed: gray -> inactive, full color -> active
-- Clicking the registration status icon fetches current registration status
-- Clicking the service icons enables/disables the service
-- Fancier popup from KDE system tray on incoming call.
-- Popup from system tray shows as long as the phone is ringing.
-- Reload button on address form
-- Remove special phone number symbols from dialed strings.
- This option can be enabled/disabled via the user profile.
-- Remove duplicate entries from the dial history drop down box
-- Specify in the user profile what symbols are special symbols to remove.
-- Changed default for "use domain to create unique contact header value" to
- "no"
-- New SIP protocol option: allow SDP change in INVITE responses
-- Do not ask username and password when authentication for an
- automatic re-regsitration fails. The user may not be at his desk, and
- the authentication dialog stalls Twinkle.
-- Ask authentication password when user profile contains authentication
- name, but no password.
-- Improved handling of socket errors when interface goes down temporarily.
-
-Bug fixes
----------
-- If the far end holds a call and then resumes a call while Twinkle has
- been put locally on-hold, then Twinkle will start recording sound from
- the mic and send it to the far-end while indicating that the call is
- still on-hold.
-- Crash on no-op SDP in re-INVITE
-- Twinkle exits when it receives SIGSTOP followed by SIGCONT
-- call release cause in history is incorrect for incoming calls.
-
-Build improvements
-------------------
-- Break dependency on X11/xpm.h
-
-
-26 feb 2006 - Release 0.6.2
-===========================
-- Graceful termination on reception of SIGINT and SIGTERM
-
-Bug fixes
----------
-- If the URI in a received To-header is not enclosed by '<' and '>', then
- the tag parameter is erronesouly parsed as a URI parameter instead of a
- header parameter. This causes failing call setup, tear down, when
- communicating with a far-end that does not enclose the URI in angle
- brackets in the To-header.
-- Function to flush OSS buffers flushed a random amount of samples that
- could cause sound clipping (at start of call and after call hold) when
- using OSS.
-- In some cases Twinkle added "user=phone" to a URI when the URI already
- had a user parameter.
-
-
-11 feb 2006 - Release 0.6.1
-===========================
-- action=autoanswer added to call script actions
-- Performance improvement of --call parameter
-- Synchronized dial history drop downs on main window and call dialog
-- Dial history drop down lists are stored persistently
-- Redial information is stored persistently
-
-Bug fixes
----------
-- When using STUN Twinkle freezes when making a call and the STUN
- server does not respond within 200 ms (since version 0.2)
-- Some malformed SIP messages triggered a memory leak in the
- parser code generated by bison (since version 0.1)
-- The lexical scanner jammed on rubbish input (since version 0.1)
-
-
-05 feb 2006 - Release 0.6
-=========================
-- Custom ring tones (package libsndfile is needed)
-- Twinkle can call a user defineable script for each incoming call.
- With this script the user can:
- * reject, redirect or accept a call
- * define a specific ring tone (distinctive ringing)
-- Missed call indication
-- Call directly from the main window
-- DTMF keys can by typed directly from the keyboard at the main window.
- Letters are converted to the corresponding digits.
-- Letters can be typed in the DTMF window. They are converted to digits.
-- Call duration in call history
-- Call duration timer while call is established
-- Added --call parameter to command line to instruct Twinkle to make
- a call
-- Increased expiry timer for outgoing RTP packets to 160 ms
- With this setting slow sound cards should give better sound quality
- for the mic.
-- System setting to disable call waiting.
-- System setting to modify hangup behaviour of 3-way call. Hang up both
- lines or only the active line.
-- Replace dots with underscores in contact value
-- Silently discard packets on the SIP port smaller than 10 bytes
-- User profile option to disable the usage of the domain name in the
- contact header.
-- Graceful release of calls when quitting Twinkle
-- Changed call hold default from RFC2543 to RFC3264
-
-Bug fixes
----------
-- An '=' in a value of a user profile or system settings parameter
- caused a syntax error
-- If a default startup profile was renamed, the default startup list
- was not updated
-- When call was put on-hold using RFC2543 method, the host in the
- SDP o= line was erroneously set to 0.0.0.0
-- When a response with wrong tags but correct branch was received, a
- line would hang forever (RFC 3261 did not specify this scenario).
-- If far end responds with 200 OK to CANCEL, but never sends 487 on
- INVITE as mandated by RFC 3261, then a line would hang forever
-- CPU load was sometimes excessive when using ALSA
-
-
-01 jan 2006 - Release 0.5
-=========================
-- Run multiple user profiles in parallel
-- Add/remove users while Twinkle is running
-- The SIP UDP port and RTP port settings have been moved from the user
- profile to system settings. Changes of the default values in the user
- profile will be lost.
-- DNS SRV support for SIP and STUN
-- ICMP processing
-- SIP failover on 503 response
-- SIP and STUN failover on ICMP error
-- When a call is originated from the call history, copy the subject to the
- call window (prefixed with "Re:" when replying to a call).
-- Remove '/' from a phone number taken from KAddressbook. / is used in
- Germany to separate the area code from the local number.
-- Queue incoming in-dialog request if ACK has not been received yet.
-- Clear credentials cache when user changes realm, username or password
-- Added micro seconds to timestamps in log
-- Detecting a soundcard playing out at slightly less than 8000 samples per
- second is now done on the RTP queue status. This seems to be more reliable
- than checking the ALSA sound buffer filling.
-- OSS fragment size and ALSA period size are now changeable via the system
- settings. Some soundcard problems may be solved by changing these values.
-- Default ALSA period size for capturing lowered from 128 to 32. This seems
- to give better performance on some sound cards.
-
-Bug fixes
----------
-- With certain ALSA settings (eg. mic=default, speaker=plughw), the ALSA
- device got locked up after 1 call.
-- The ports used for NAT discovery via STUN stayed open.
-- When a STUN transaction for a media port failed, the GUI did not clear
- the line information fields.
-- Sending DTMF events took many unnecessary CPU cycles
-- Parse failure when Server or User-Agent header contained comment only
-
-Newly supported RFC's
----------------------
-RFC 2782 - A DNS RR for specifying the location of services (DNS SRV)
-RFC 3263 - Session Initiation Protocol (SIP): Locating SIP Servers
-
-
-28 nov 2005 - Release 0.4.2
-===========================
-- Microphone noise reduction (can be disabled in system settings)
-- System tray icon shows status of active line and enabled services
-- Call history option added to system tray menu
-
-Bug fixes
----------
-- Twinkle crashes at startup when the systray icon is disabled in the system settings.
-- Line stays forever in dialing state when pressing ESC in the call window
-
-
-19 nov 2005 - Release 0.4.1
-===========================
-- Fixed build problems with gcc-4.0.2 and qt3-3.4.4
-
-18 nov 2005 - Release 0.4
-=========================
-- Interface to KAddressbook
-- History of incoming and outgoing calls (successful and missed calls)
-- History of 10 last calls on call dialog window for redialling
-- Call and service menu options added to KDE sys tray icon
-- Allow a missing mandatory Expires header in a 2XX response on SUBSCRIBE
-- Big Endian support for sound playing (eg. PPC platforms)
-- System setting to start Twinkle hidden in system tray
-- System setting to start with a default profile
-- System setting to start on a default IP address
-- Command line option (-i) for IP address
-
-Bug fixes
----------
-- send a 500 failure response on a request that is received out of order
- instead of discarding the request.
-- 64bit fix in events.cpp
-- race condition on starting/stopping audio threads could cause a crash
-- segmentation fault when RTP port could not be opened.
-- CLI looped forever on reaching EOF
-- 64bit fix in events.cpp
-- ALSA lib pcm_hw.c:590:(snd_pcm_hw_pause) SNDRV_PCM_IOCTL_PAUSE failed
-- sometimes when quitting Twinkle a segmentation fault occurred
-
-Build improvements
-------------------
-- Removed platform dependent code from stunRand() in stun.cxx
-- It should be possible to build Twinkle without the KDE addons on a
- non-KDE system
-- new option --without-kde added to configure to build a non-KDE version
- of Twinkle
-
-
-22 oct 2005 - Release 0.3.2
-===========================
-- Fixed several build problams with KDE include files and
- libraries.
-
-If you already succesfully installed release 0.3.1 then there is
-no need to upgrade to 0.3.2 as there is no new functionality.
-
-16 oct 2005 - Release 0.3.1
-===========================
-This is a minor bug fix release.
-
-Bug fixes:
-----------
-- Command line options -f and -share were broken in release 0.3
- This release fixes the command line options.
-
-
-09 oct 2005 - Release 0.3
-=========================
-
-New functionality:
-------------------
-- ALSA support
-- System tray icon
-- Send NAT keep alive packets when Twinkle sits behind a symmetric firewall
- (discovered via STUN)
-- Allow missing or wrong Contact header in a 200 OK response on a REGISTER
-
-Bug fixes:
-----------
-- Hostnames in Via and Warning headers were erroneously converted to lower case.
-- t_ts_non_invite::timeout assert( t==TIMER_J ) when ACK is received
- for a non-INVITE request that had INVITE as method in the CSeq header.
-- The SIP/SDP parser accepted a port number > 65535. This caused an assert
-- Segmentation fault on some syntax errors in SIP headers
-- Line got stuck when CSeq sequence nr 0 was received. RFC 3261 allows 0.
-- With 100rel required, every 1XX after the first 1XX response were discarded.
-- Fixed build problems on 64-bit architectures.
-- Dead lock due to logging in UDP sender.
-- Segmentation fault when packet loss occurred while the sequence
- number in the RTP packets wrapped around.
-- Route set was not recomputed on reception of a 2XX response, when a 1XX
- repsonse before already contained a Record-Route header.
-
-
-30 jul 2005 - Release 0.2.1
-===========================
-
-New functionality:
-------------------
-- Clear button on log view window.
-
-Bug fixes:
-----------
-- The system settings window confused the speaker and mic settings.
-- Log view window sometimes opened behind other windows.
-- Segmentation fault when SUBSCRIBE with expires=0 was received to end
- a refer subscription.
-- When a call transfer fails, the original call is received. If the line
- for this call is not the active call however, the call should stay
- on-hold.
-- On rare occasions a segmentation fault occurred when the ring tone
- was stopped.
-- Log view window sometimes caused deadlock.
-
-
-24 jul 2005 - Release 0.2
-=========================
-
-New functionality:
-------------------
-- STUN support for NAT traversal
-- Blind call transfer service
-- Reject call transfer request
-- Auto answer service
-- REFER, NOTIFY and SUBSCRIBE support for call transfer scenario's
- * REFER is sent for blind call transfer. Twinkle accpets incoming
- NOTIFY messages about the transfer progress.
- Twinkle can send SUBSCRIBE to extend refer event subscription
- * Incoming REFER within dialog is handled by Twinkle
- Twinkle sends NOTIFY messages during transfer.
- Incoming SUBSCRIBE to extend refer event subscription is granted.
-- Retry re-INVITE after a glare (491 response, RFC 3261 14.1)
-- Respond with 416 if a request with a non-sip URI is received
-- Multiple sound card support for playing ring tone to a different
- device than speech
-- The To-tag in a 200 OK on a CANCEL was different than the To-tag in a provisional
- response on the INVITE. RFC 3261 recommends that these To-tags are the same.
- Twinkle now uses the same To-tag.
-- Show error messages to user when trying to submit invalid values on the
- user profile
-- DTMF volume configurable via user profile
-- Log viewer
-- User profile wizard
-- Help texts for many input fields (e.g. in user profile). Help can be accessed
- by pressing Ctrl+F1 or using the question mark from the title bar.
-
-Bug fixes:
-----------
-- A retransmission of an incoming INVITE after a 2XX has been sent
- was seen as a new INVITE.
-- If an OPTIONS request timed out then the GUI did not release its
- lock causing a deadlock.
-- If the URI in a To, From, Contact or Reply-To header is not
- enclosed by < and >, then the parameters (separated by a semi-colon)
- belong to the header, NOT to the URI.
- They were parsed as parameters of the URI. This could cause the
- loss of a tag-parameter causing call setup failures.
-- Do not resize window when setting a long string in to, from or subject
-
-Newly supported RFC's
----------------------
-RFC 3265 - Session Initiation Protocol (SIP)-Specific Event Notification
-RFC 3420 - Internet Media Type message/sipfrag
-RFC 3489 - Simple Traversal of User Datagram Protocol (UDP)
- Through Network Address Translators (NATs)
-RFC 3515 - The Session Initiation Protocol (SIP) Refer Method
-RFC 3892 - The Session Initiation Protocol (SIP) Referred-By Mechanism
-
-
-27 apr 2005 - Release 0.1
-=========================
-
-First release of Twinkle, a SIP VoIP client.
-
-- Basic calls
-- 2 call appearances (lines)
-- Call Waiting
-- Call Hold
-- 3-way conference calling
-- Mute
-- Call redirection on demand
-- Call redirection unconditional
-- Call redirection when busy
-- Call redirection no answer
-- Reject call redirection request
-- Call reject
-- Do not disturb
-- Send DTMF digits to navigate IVR systems
-- NAT traversal through static provisioning
-- Audio codecs: G.711 A-law, G.711 u-law, GSM
-
-Supported RFC's
----------------
-- RFC 2327 - SDP: Session Description Protocol
-- RFC 2833 - RTP Payload for DTMF Digits
-- RFC 3261 - SIP: Session Initiation Protocol
-- RFC 3262 - Reliability of Provisional Responses in SIP
-- RFC 3264 - An Offer/Answer Model with the Session Description Protocol (SDP)
-- RFC 3581 - An extension to SIP for Symmetric Response Routing
-- RFC 3550 - RTP: A Transport Protocol for Real-Time Applications
-
-RFC 3261 is not fully implemented yet.
-
-- No TCP transport support, only UDP
-- No DNS SRV support, only DNS A-record lookup
-- Only plain SDP bodies are supported, no multi-part MIME or S/MIME
-- Only sip: URI support, no sips: URI support
diff --git a/NEWS b/NEWS
index c8916bb..2d9f9ef 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,14 @@
+Git version - 1.9.0
+=======================
+- Ported to Qt4 and Qt5.
+- Added in-call OSD.
+- Added a new incoming call notification screen/dialog.
+- Support the G.729A codec.
+- Made Diamondcard support optional.
+- Save window geometry and state.
+- Visual feedback (button presses) in DTMF window when pushing keyboard buttons.
+- Support clipboard paste in DTMF window.
+
25 february 2009 - 1.4.2
========================
- Integration with Diamondcard Worldwide Communication Service
diff --git a/TODO b/TODO
index 530fa22..e7a6dca 100644
--- a/TODO
+++ b/TODO
@@ -1,14 +1,3 @@
-* finish conversion to native Qt4 classes
-
- Most forms still use classes from Qt3Support module which has been
- dropped in Qt5. Most of the time the migration is simple but still
- tedious enough. The ultimate goal is allow twinkle to be built against
- either of Qt4 and Qt5.
-
- Remaining .ui/cpp/h files:
- * mphoneform
- * gui
-
* make KDE support work again
After cleaning up the autotools config, twinkle only builds with