Gui progress

Version 349 (Adrian Georgescu, 08/03/2009 07:39 am)

1 1 Adrian Georgescu
[[TOC(gui_progress, depth=3)]]
2 1 Adrian Georgescu
3 289 Adrian Georgescu
= Audio =
4 1 Adrian Georgescu
5 345 Adrian Georgescu
 1. Always play the '''disconnect tone''' when a session ends (e.g. failure, cancel)
6 345 Adrian Georgescu
 1. New incoming sessions, '''alert window shrinks''' in size after a few remote cancels (still not solved)
7 281 Adrian Georgescu
 1. '''Mute''' microphone when pressing the mute button
8 345 Adrian Georgescu
 1. Add '''Audio menu''' with device selection and mute
9 345 Adrian Georgescu
 1. Do not open automatically the '''drawer when main interface is collapsed''' 
10 345 Adrian Georgescu
 1. View '''show drawer must expand''' also the main interface if collapsed
11 1 Adrian Georgescu
 1. Display '''Ringing...''' in audio session status when getting ring indication from the remote party
12 345 Adrian Georgescu
 1. Calls that '''do not resolve in DNS''' remain in the drawer, use bonjour and dial xyz to reproduce
13 345 Adrian Georgescu
 1. Closing many active sessions cause many tones to be played back, '''throttle tones''' playback
14 345 Adrian Georgescu
 1. Make the '''alert panel''' grey/white
15 345 Adrian Georgescu
 1. Rename menu item Session with '''Sessions'''
16 345 Adrian Georgescu
 1. Add Menu item Sessions-> '''Start audio session''' and pop up window to enter an address
17 345 Adrian Georgescu
 1. Add functionality to display the '''previous sessions''' in the session drawer, most recent on top
18 345 Adrian Georgescu
 1. Rename menu item View -> Sessions drawer with View -> '''Audio Sessions drawer'''
19 345 Adrian Georgescu
 1. Add menu View -> '''Audio Sessions History drawer'''
20 345 Adrian Georgescu
 1. When dial a second call while in another call, if the user '''clicks on the previous call''' before the new session is established the session info is broken
21 1 Adrian Georgescu
 1. Add  a '''record button''' left to Hold button. When pressed toggle recording the audio session using the '''general.audio.history''' folder
22 1 Adrian Georgescu
 1. [wiki:DesignConference Conference audio sessions]
23 333 Adrian Georgescu
 1. Add a '''triangle button''' to expand vertically the audio session frame with extra room for audio session information
24 1 Adrian Georgescu
25 322 Adrian Georgescu
= Chat =
26 1 Adrian Georgescu
27 345 Adrian Georgescu
 1. Not all printed timestamp are using the '''local timezone'''
28 345 Adrian Georgescu
 1. Print '''each message into''' its own time-stamped frame, do not append message to previous frames
29 1 Adrian Georgescu
 1. When connected print system message: '''MSRP chat session established''' (without username@domain)
30 1 Adrian Georgescu
 1. When disconnected by remote user print system message: '''MSRP chat session terminated by remote party'''
31 1 Adrian Georgescu
 1. When cancelling an outgoing session print system message: '''MSRP chat session cancelled'''
32 342 Adrian Georgescu
 1. When disconnected by local user print system message: '''MSRP chat session terminated'''
33 1 Adrian Georgescu
 1. When MSRP stream fails print system message: '''MSRP chat session failed: reason'''
34 1 Adrian Georgescu
 1. '''Auto-accept''' chat only sessions when the From header of the INVITE is in the contacts list
35 344 Adrian Georgescu
 1. Display the number of '''un-read messages''' in non-active tabs within a red circle over the tab name
36 1 Adrian Georgescu
 1. To close a chat tab add a '''x button''' to it
37 345 Adrian Georgescu
 1. Replace Connect/Close buttons with a '''single button''' that accurately displays the connection status
38 345 Adrian Georgescu
 1. Mark '''undelivered messages''' with a different background color
39 345 Adrian Georgescu
 1. Message '''message could not be delivered is repeated many times over'''
40 344 Adrian Georgescu
 1. When dragging a recipient tab on the contact list bring up the '''Add contact dialog'''
41 345 Adrian Georgescu
 1. Remove '''Add contact button'''
42 345 Adrian Georgescu
 1. '''Sent/received alert''' sounds are now played with a bit of delay
43 345 Adrian Georgescu
 1. When click on the Audio button, use '''add_stream''' to append an audio stream to existing chat session
44 322 Adrian Georgescu
 1. If an audio stream exists part of the session, add the audio control buttons '''Record|Hold|Terminate'''
45 1 Adrian Georgescu
 1. Display '''is-composing''' payload (not yet available in middleware)
46 1 Adrian Georgescu
 1. When dragging a recipient tab outside '''spawn a new chat window''' and move the session into it
47 296 Adrian Georgescu
 1. Add functionality to '''search history''' 
48 345 Adrian Georgescu
 1. Add Menu item Sessions-> '''Start chat session''' and pop up window to enter an address. The chat session dialog is different than the audio dialog, extra options will be added a latee time
49 345 Adrian Georgescu
 1. Add file transfer function, pop up a '''file selection dialog''' and establish a separate SIP session per file. On incoming be prepared to receive offer with multiple files per SIP session.
50 345 Adrian Georgescu
 1. Display the '''file transfer session outcome''' in the chat window like other system messages
51 345 Adrian Georgescu
 1. Display '''file transfer progress''' in a separate window (all file transfers in the same window) 
52 345 Adrian Georgescu
 1. When '''drag a file''' onto the Chat window or the Contact in main interface start a file transfer session
53 336 Adrian Georgescu
54 347 Adrian Georgescu
= Main =
55 1 Adrian Georgescu
56 345 Adrian Georgescu
 1. The pressed icon of the mute microfone is '''too red''', the microphone is not visible anymore 
57 345 Adrian Georgescu
 1. Add '''right click actions''' to the dock icon to start audio and chat sessions
58 345 Adrian Georgescu
 1. If '''dragging window size when collapsed''', it does not fall back into place correctly
59 345 Adrian Georgescu
 1. Show '''only error messages''' in the log drawer with a reddish font
60 345 Adrian Georgescu
 1. '''Auto withdraw''' the log drawer after 5 seconds
61 345 Adrian Georgescu
 1. Link the Menu item Help->'''Blick help''' to http://wiki.iCanBlink.com 
62 1 Adrian Georgescu
 1. Replace the C from the audio button with a '''phone handset'''  (iChat style)
63 348 Adrian Georgescu
64 348 Adrian Georgescu
= Presence =
65 348 Adrian Georgescu
66 347 Adrian Georgescu
 1. Show '''Display name''' next to the photo on top row. When edit the name save account.display_name setting
67 347 Adrian Georgescu
 1. Put '''own photo''' in a white rounded frame like Adium
68 347 Adrian Georgescu
 1. Show '''Presence activity''' next to name on top row. Activities:
69 347 Adrian Georgescu
   1. Available
70 347 Adrian Georgescu
   1. Away (automatically set it if keyboard/mouse idle)
71 347 Adrian Georgescu
   1. Appointment (automatically set it if keyboard/mouse is idle and the system calendar has an entry)
72 347 Adrian Georgescu
   1. On the phone (automatically set it when an audio session exists)
73 347 Adrian Georgescu
   1. Working
74 347 Adrian Georgescu
   1. Busy
75 347 Adrian Georgescu
   1. Meeting
76 347 Adrian Georgescu
   1. Presentation
77 349 Adrian Georgescu
   1. Breakfast
78 349 Adrian Georgescu
   1. Lunch
79 1 Adrian Georgescu
   1. Dinner
80 1 Adrian Georgescu
   1. Travel
81 349 Adrian Georgescu
   1. Driving the car
82 349 Adrian Georgescu
   1. Watch TV
83 349 Adrian Georgescu
   1. Vacation
84 349 Adrian Georgescu
   1. National holiday
85 349 Adrian Georgescu
   1. Permanent absence
86 347 Adrian Georgescu
 1. Show '''Presence activity note''' on the second row, editable text with white background and a blueish text color
87 347 Adrian Georgescu
 1. '''Acquire photo''' from webcam and save it
88 1 Adrian Georgescu
89 319 Adrian Georgescu
= Contacts =
90 1 Adrian Georgescu
91 346 Adrian Georgescu
 1. Rename menu item Contact with '''Contacts'''
92 346 Adrian Georgescu
 1. Add '''Edit Contact''' in the Contacts menu
93 346 Adrian Georgescu
 1. Add '''Edit Group''' in the Contacts menu
94 346 Adrian Georgescu
 1. Add '''Delete Group''' in the Contacts menu 
95 346 Adrian Georgescu
 1. Add '''right click menu''' to contacts:
96 1 Adrian Georgescu
    1. Start Audio session 
97 319 Adrian Georgescu
    1. Start Chat session
98 1 Adrian Georgescu
    1. Edit contact
99 346 Adrian Georgescu
 1. Add the following '''per contact settings''' in the '''Add/edit contact window''':
100 326 Adrian Georgescu
      * Double click starts: Radio buttons: Audio session, Chat session
101 326 Adrian Georgescu
      * Subscribe to Presence (boolean, default true)
102 326 Adrian Georgescu
 1. '''Delete the Contact''' when pressing delete
103 346 Adrian Georgescu
 1. When pressing delete on a Group, prompt the user to either delete all associated contacts or move them to '''another group'''
104 346 Adrian Georgescu
 1. When '''double click''' on a contact use the action saved with the contact (e.g. chat session instead of audio session)
105 346 Adrian Georgescu
 1. Append '''domain part if missing'''. E.g. when adding abcd@chatserver we must still append the domain name after chatserver
106 346 Adrian Georgescu
 1. Allow '''drag of Contacts''' between Groups
107 346 Adrian Georgescu
 1. If search when GUI is collapsed and then expand then the Add contact button '''overlaps with other text'''
108 331 Adrian Georgescu
109 200 Adrian Georgescu
= Preferences =
110 1 Adrian Georgescu
 
111 41 Adrian Georgescu
 1. Call '''set_audio_devices()''' when changing the audio device or tail_length in global Preferences
112 1 Adrian Georgescu
 1. '''Bonjour account''' does not show/hide when activate/deactivate in preferences
113 346 Adrian Georgescu
 1. Properly '''align''' horizontally the Advanced settings
114 1 Adrian Georgescu
 1. Audio device must also list 'Default system input ' and 'Default system output' (or is it a middleware setting?)
115 1 Adrian Georgescu
 1. '''bonjour account''' must have only Display name as main property
116 308 Adrian Georgescu
 1. No control available to set the '''volume level of the wav files'''
117 308 Adrian Georgescu
 1. Hide the '''minus button for Bonjour''', it cannot be deleted
118 308 Adrian Georgescu
 1. When the '''password is changed''', re-Register the account 
119 340 Adrian Georgescu
 1. When '''Register''' flag is toggled for account, (de)Register the account accordingly
120 1 Adrian Georgescu
 1. '''Codec lists''' must be an ordered list with at least one active codec
121 1 Adrian Georgescu
 1. '''Stun server''' addresses cannot be set, they seem to inherit the results found in DNS  
122 1 Adrian Georgescu
 1. '''general.rtp.local_ip''': Can't set option local_ip illegal local IP address value: auto
123 305 Adrian Georgescu
 1. '''general.rtp.port_range''': (AttributeError: 'PortRangeOption' object has no attribute 'save')
124 304 Adrian Georgescu
 1. '''general.sip.transports''' cannot be saved
125 305 Adrian Georgescu
 1. '''general.audio.codec_list''' cannot be saved and displays duplicate codecs
126 308 Adrian Georgescu
 1. '''account.audio.codec_list''' cannot be saved and displays duplicate codecs
127 305 Adrian Georgescu
 1. '''account.msrp.relay''' cannot be set: global name 'MSRPRelayAddres' is not defined
128 346 Adrian Georgescu
 1. For '''account.ringtone''' advanced setting, the default setting must be inherited from '''general.ringtone.inbound'''
129 1 Adrian Georgescu
130 1 Adrian Georgescu
= Debug =
131 295 Adrian Georgescu
132 346 Adrian Georgescu
 1. Delete the '''PJSIP and Notifications tabs'''
133 346 Adrian Georgescu
 1. '''Add colors''' to the SIP trace content
134 346 Adrian Georgescu
 1. Print '''DNS lookups and results''' in the SIP trace window formated like in sip_audio_session script
135 346 Adrian Georgescu
 1. '''Filter SIP trace''' by first line (add a checkbox called SIP Methods and Answers only)
136 1 Adrian Georgescu
 1. Rename  Enable MSRP Trace (Header Only) to '''MSRP headers'''
137 277 Adrian Georgescu
 1. Rename  Enable MSRP Trace Body to '''MSRP content'''
138 295 Adrian Georgescu
 1. Rename  Enable XCAP Trace (Header Only) to '''XCAP headers'''
139 1 Adrian Georgescu
 1. Rename  Enable XCAP Trace (Body) to '''XCAP content'''
140 272 Adrian Georgescu
141 289 Adrian Georgescu
= Other =
142 311 Adrian Georgescu
143 346 Adrian Georgescu
 1. When started '''CPU usage''' is 0.2%, after an audio call the CPU stays > 10%
144 346 Adrian Georgescu
 1. Show in General debug window '''other registered contacts''' from the response for Register
145 311 Adrian Georgescu
 1. Save position of '''contact groups''' - colapsed/expanded and their order
146 346 Adrian Georgescu
 1. Save position of '''Debug window''' and its checkbos settings
147 1 Adrian Georgescu
 1. Set SIP User Agent name to '''blink-<version>'''
148 346 Adrian Georgescu
 1. Check if the '''selected wav file''' is in the right format supported by PJSIP before saving the settings related to ringtones
149 346 Adrian Georgescu
 1. After keeping windows open for awhile the messages arrive '''very late''' on the other side
150 346 Adrian Georgescu
 1. Make a queue with maximum '''32 tones''' to prevent PJSIP from crashing (or better increase PJSIP itself to a more decent value?)