Help For Blink Pro » History » Revision 132
Revision 131 (Tijmen de Mes, 12/24/2012 12:04 PM) → Revision 132/162 (Adrian Georgescu, 07/03/2013 12:27 PM)
h1. Help for Blink Pro and Blink Lite on MacOSX [[KnownIssues|Known issues and critical bug fixes]] [[MostEncounteredProblems| Most Encountered Problems]] Blink allows you to communicate in real time over the Internet. To use Blink you need a SIP account from a SIP service provider. Like using an email program, you must configure Blink with the account you have obtained from your service provider. If things do not work they way you expect, the reasons can be caused mainly by two things, one is Blink software itself and the another one is the communication with the SIP Service Provider. While For help about Blink-Qt see {{wiki(blinkqt, "Help for Blink-QT":help)}} h2. Blink may not be bug free, most of Pro and Blink Lite differences Both versions support the problems you encounter when using same media types. Compared to Blink are related to Lite, Blink Pro has the network communication with the SIP Service Provider. It is not the end-user who should understand the mechanics about how things work, so the main responsibility of making sure that things work correct falls into the hands of the SIP service provider who must properly setup its SIP infrastructure following extra usability features: * iCloud synchronization for accounts * Pause/resume iTunes, Spotify and support its user base. VLC (version 2.0.1) * History menu for outgoing and incoming calls * History browser for all supported media * System AddressBook "plugin":http://download.ag-projects.com/BlinkABPlugins/ * Answering machine * Call transfers (both blind and attended) * Call recording * LDAP directory services * Incoming call web page integration * Phone number translations h2. Requesting Support h3. Public Forum Discussions Refund Policy Go Mac App Store does not provide refunds. If you purchased an application from Mac App Store and you do not like it, you are stuck with it. We have no information about paying customers, credit card transactions, payments or refunds from Apple and we cannot provide any refunds even you provide proof of payment to "Blink Support Forum":http://support.icanblink.com h3. Support from Developers Apple. If you need support for a particular problem are not happy with this policy it is Apple you can mail us directly to support@ag-projects.com h3. Placing Calls must complain to, not us. h2. Connectivity Problems To eliminate possible causes related to local network or service provider, please check if the problem can be reproduce by using the Free SIP Accounts provided with Blink. h3. Cannot establish sessions If you are unable encounter connectivity problems like inability to receive incoming calls or place outgoing calls do the following: * Make sure failure to make outbound calls, you run can easily find the last version available in the Mac App Store. * Go reason by going to _Menu Window -> Logs -> SIP_ * Make sure SIP_. You should contact your SIP Service Provider and provide it with the box *Everything* is checked and information obtained from Blink logs. !http://icanblink.com/images/BlinkScreenshot-SIPTRace.jpg! h3. No media Sometimes sessions are established but no media can be established. The fault can be caused by equipment or software in the drop down box is selected *Sessions* * Restart media path, like Blink * Attempt software itself, the computer it runs on, its audio hardware, the firewall software installed, the router used for the Internet access or the provider offering the SIP service. To remove the SIP service provider uncertainty in order to make isolate the cause, first register a *Free SIP account* with Blink. There is a test SIP address *4444* that you can call * Paste all logs to see if audio media works both ways through your network. If it does, it means that network and equipment works fine, but your SIP service provider might have difficulties. In such case you must request support from both your SIP service provider. If Blink does not work using the free SIP and account, you may contact our support address, we will help you find out the Activity Logs windows into cause for calls with no media. h2. Software Problems To report a problem, send an email to support@ag-projects.com "support@ag-projects.com":mailto:support@ag-projects.com. Please paste the relevant logs as explained below. You can also check the history of the public "Blink Support Forum":http://support.icanblink.com. h3. Non-critical Exceptions and Errors Blink Programming errors are logged in the OSX system log file _/var/log/system.log_. You can find them by opening _Applications -> Utilities -> Console_, selecting _LOG FILES -> system.log_ and typing Blink in the search bar. Please provide us with this information when you report the problem you encountered. h3. Software Complete Crashes If you experience a software crash, please send the complete crash report available in the crash reporter window (just copy and paste from it). Crash reports are saved in _~/Library/Logs/DiagnosticReports/_. _~/Library/Logs/DiagnosticReports/_ and can be viewed with the Console application. h3. Configuration File Blink accounts and settings are stored in a flat-text configuration file. _~/Library/Containers/com.agprojects.Blink/Data/Library/Application Support/Blink The passwords are not stored in the configuration file, they are stored the system keychain. The location of the configuration files: * _~/Library/Containers/com.agprojects.Blink/Data/Library/Application\ Support/Blink\ Pro/config_ and _~/Library/Containers/com.agprojects.BlinkLite/Data/Library/Application Support/Blink * _~/Library/Containers/com.agprojects.BlinkLite/Data/Library/Application\ Support/Blink\ Lite/config_ Do not edit this file manually. If you did and Blink does not start you must delete the file and start all over again. Please report your OS name If file gets corrupted a new file is generated and version and Blink version. You can find Blink version in menu _Blink -> About_. Passwords are not stored in the configuration old file but in is preserved with a suffix. In case of such occurrence, you may send the system keychain. h2. Differences between Pro and Lite versions Compared file to Blink Lite, Blink Pro has our support in order to find a fix for the following extra features: * Unlimited number of accounts * History browser for all media * Phone number translations * Call transfer * Call recording * LDAP server support * Incoming call web page integration * More granular settings cause. h2. Refund Policy Accounts Mac App Store does not provide refunds. If you purchased an application that do not like you are stuck with it. If you are not happy with this policy it is Apple you must complain to, not us. !http://icanblink.com/images/BlinkScreenshot-Enrollment.jpg! h2. SIP Accounts To use Blink, you need a SIP Account. At first start, Blink shows the _Add Account_ "window":http://icanblink.com/screenshots.phtml#enrollment that helps you configure the initial SIP Account. You may configure Blink to use multiple SIP Accounts. To add a new SIP Account, go to menu _Preferences->Accounts_ and click the + button. The _Add Account_ window shows up and you can repeat the steps described above. After you have configured a SIP Account, you can see the status of the registration in the account list of _Main Window_ window. Solid color means that the account has successfully registered, gray color means that the registration has failed or is in progress. You can also see the status of the registration in the account list of _Preferences_ window. Green color means that the account has successfully registered, Red color the registration has failed and Yellow means that he registration process is in progress. A successful registration means that you are able to receive incoming calls with Blink. h3. iCloud sync The default option is to sync the new account across all computers configured for the the same iCloud account. This means that any changes to any account will be synchronised across all your computers running Blink. h3. Add an Existing SIP Account If you already have a SIP account from a SIP service provider, select this option then enter the SIP address in the form of _user@domain_ and the _password_. If the SIP service provider has set his infrastructure correctly, all server address settings will be automatically discovered from DNS by Blink. Some SIP service providers are incapable of setting up correctly their infrastructure like the DNS records used for discovering the address of the SIP server. Such providers typically provide separate login/username/phone number and a server address instead of a SIP address. In such case, use the username@server format for the SIP address field. Additional manual settings for the server location can be made in Advanced Account Settings explained below. h3. Create a Free SIP Account Use this option if If you do not have a SIP Account, Blink can create one for you using the free service provided by SIP2SIP. All Blink features are supported by this service. For more information about the features of the SIP service go to "http://sip2sip.info":http://wiki.sip2sip.info It is recommended that you always create such account to benefit of the features beyond VoIP provided by Blink. Using a sip2sip.info account you can sync the address book between multiple instances of Blink, bridge to XMPP domains and create multi party conferences. h3. Advanced Account Settings h4. Outbound Proxy If the SIP provider does not have proper DNS records set for his domain to point to its SIP server address and port numbers as defined by RFC3263, Blink will not be able to auto-discover its location. In such case you must set the Outbound Proxy setting in _Preferences -> SIP Account -> Advanced -> SIP Signaling_. Also you can use this setting to force a specific transport or port different than the ones discovered from DNS. The outbound proxy format is _host.example.com:5060;transport=udp_. h2. Main Interface !http://icanblink.com/images/BlinkScreenshot-Contacts.jpg! Blink presents a _Contacts driven_ "interface":http://icanblink.com/screenshots.phtml#main_interface as the main window. The design allows to locate a Contact then to start an action for it, for example to start an _Audio Call_. You can toggle to and from a dial-pad interface in the _Contacts_ menu. The main interface can be collapsed into a "compact mode":http://icanblink.com/screenshots.phtml#collapsed_gui that hides the Contact List or dialpad. Click on the *+* Green button of the window to collapse and expand the main interface. Hover the mouse over the GUI elements to see a short description of their function. h3. SIP Active Account You can select the SIP Account used for outbound sessions in the _Accounts drop down box_ presented on the top of the main interface. h4. Bonjour Account _Bonjour Account_ is a special type of account that is designed to announce itself and discover other neighbours on the local area network. This account does not require a server or SIP service in order to operate. h3. Search Bar The Search bar is used for finding an existing contact or for entering a SIP address or telephone number. To search for a contact in Blink's _Contacts List_, system _Address Book_ and optionally configured LDAP directory of the active account, fill in the name in the _Search Bar_. You may select a Contact that matched the typed text or use the typed text as the Contact for the next action. Use the buttons presented at the bottom of the main window to start a session to the current selected Contact or press on _Add Contact_ to add the typed address to the _Contacts List_. Pressing enter or return after entering text in the search bar will start an audio call to that address. h3. Contacts List Contacts can be organized in Groups. The Groups support ordering and can be collapsed or expanded when clicking on their left-side triangle. Groups can be dragged in different order. Contacts can be dragged from one group to another, they are sorted by name. * another. Right click on a Contact to see all possible actions for each of them. * Right click on a Group to see all possible actions for each of them. h4. Address Book Group The group named _Address Book_ cannot be deleted, it is dynamically populated with entries from the system _Address Book_. To reload changes made in the _Address Book_ collapse and expand the group again. For Address Book entries, to have a SIP Address recognized by Blink you must have entries in either Email or URL sections that start with the _sip:_ prefix. One can initiate an audio call using Blink Pro directly from the AddressBook application by clicking on the Phone, Email or URL fields of an AddressBook contact. For this you must install the AddressBook plugins available at: "http://download.ag-projects .com/BlinkABPlugins/":http://download.ag-projects.com/BlinkABPlugins/ The plugins work with Blink Pro version 1.8.2 or newer. h4. Bonjour Neighbours Group _Bonjour Neighbours_ appear in the _Contacts List_ as a separate Group. When selecting _Bonjour_ as the default account, _Bonjour Neighbours_ group is expanded and moved on top of the Contacts list. When changing back to a regular SIP Account, the groups in the Contacts list reshuffle to their previous positions. Chat sessions are automatically accepted from Bonjour Neighbours. Audio sessions can be automatically accepted based on the correspondent setting from Account menu. h4. History Groups Special groups can be enabled to display Incoming, Missed and Outgoing Calls. Entries can be individually hidden and the period of the calls can be selected h4. Online Group This special group displays contacts that have published availability information. h4. Edit Contact You can edit a Contact by right clicking on it and select Edit menu option. _Edit Contact_ "window":http://icanblink.com/screenshots.phtml#add_contact appears. To set the _Icon for the Contact_, click on the Icon area, a file selection dialog appears. h4. Add Contact You can add a Contact to the _Contacts List_ by clicking on the groups icon + button presented on the bottom left of the main interface. _Add Contact_ "window":http://icanblink.com/screenshots.phtml#add_contact appears. h4. Server Storage If a contact is associated with an account and the SIP service that provides the account has XCAP storage capabilities, the contact is then also stored on the XCAP server. Multiple Blink instances can be synchronized in real time by using this feature. If your particular SIP service does not support XCAP storage, just add a SIP account from within Blink. h4. Special Groups In Preferences Contact section, special groups like Favorites or Missed Calls can be enabled. h3. Start Session Use the buttons presented at the bottom of the main window to start a session to the current selected Contact. Clicking on _Return key_ or double-clicking a Contact will start the default session type depending on the preferred media configured for each Contact. The default action is to start an _Audio Call_. h2. Incoming Session Alerts h3. Alert Panel !http://icanblink.com/images/BlinkScreenshot-AlertPanel-DS.jpg! Incoming session requests bring up the "Alert Panel":http://icanblink.com/screenshots.phtml#alert_panel</em>. Panel":http://icanblink.com/screenshots.phtml#alert_panel Click on the _Accept Button_ to accept a session request. There are two options for rejecting an incoming session request: * Click on the _Reject button_. The session is rejected with SIP response code 603 and all other SIP devices registered for the same account stop ringing. Forwarding to voicemail or other destinations, when available in the SIP server is also cancelled. You must use this option to terminate all call processing associated with the request. * Click on the _Busy button_. Blink sends a 486 code back to the caller and stops ringing, other SIP devices keep ringing and forwarding to other destinations remains active as set in the SIP server. You must use this option when you want to pick up the call at a different location or allow the Server to perform other pre-configured routing decisions. When the _Answering Machine_ is enabled, a countdown appears in the Alert Panel. While the countdown counts you can still disable the _Answering Machine_ from the Account menu. The currently selected input and output audio devices are showed for incoming Audio Call requests. h3. HTTP Alert URL You can configure Blink Pro to automatically open a HTTP URL for an incoming session request either before or after accepting the session. For this set the _Alert Web Page_ in Advanced -> Web Alert section of each SIP account. The URL is opened in a web view controlled by Blink. Alternatively, you can configure Blink to launch the system default web browser in the Preferences -> Advanced -> GUI settings. The URL may contain the following variables that will be replaced with the actual information from the incoming session: * $caller_party - the SIP address of the caller party * $called_party - the SIP address of the account being called * $caller_username - the username part of the SIP address of the caller party Example: http://www.example.com?caller=$caller_party&called=$called_party h3. Voice Assistance In Tools menu one can instruct Blink to speak the name of the caller or/and accept or reject calls using speech recognition. h2. Audio Calls !http://icanblink.com/images/BlinkScreenshot-AudioSessions.jpg! _Audio Calls_ are displayed in the lateral "drawer":http://icanblink.com/screenshots.phtml#audio_sessions attached to the main interface. To start an _Audio Call_, select an existing contact or enter a SIP address or telephone number in the search bar. Once text is entered in the search bar just press enter to start an audio call to that address. Alternatively, you can turn on the dialpad in the Contacts menu and press its keys. When a Contact is selected, you may click on the _Green Handset_ located at the bottom of the main interface or right click on thr Contact and select _Start Audio Session_ from the contextual menu. For each new call an entry is added to the _Audio Calls_ drawer. To switch between multiple calls just click on another call in the audio sessions drawer. When switching to a particular session, the audio stream is connected to the input and output device and all other Audio Calls are put on hold. To add _Chat_ to an existing _Audio Call_, right click on the session displayed in the Audio Drawer and select an _Add Chat_ To mute your microphone click on the bottom right microphone icon. To un-mute click it again. h3. Audio Codecs Audio codecs can be set in _Preferences -> Advanced -> RTP Media_ section and can be overwritten per account in _Advanced -> RTP Media section_. By default, the audio codecs are prioritized to allow for highest quality and second, compatibility with SIP services. If you have changed the defaults or want to set the codecs manually, for high quality conversations is recommended to use OPUS, Speex, G.722 codec order as first choice and leave PCMA and PCMU enabled for compatibility reasons. Some details about the codecs used by Blink: * OPUS is PCMA (G711A) and PCMU (G711U) are the best codec choice covering full human audible spectrum and requires between 20 and 60kbit/s network bandwidth. This codec is available in Blink Pro 3.0. * Speex is a high quality codec most interoperable codecs narrowband that is often built in softphones covering up to 16kHz audio spectrum and requires about 50kbit/s network bandwidth work with any device * G.722 is the most compatible wideband codec supported by both software and hardware phones covering 11kHz audio spectrum and requires about 100kbit/s network bandwidth * PCMA (G711A) and PCMU (G711U) are the most interoperable codecs narrowband Speex is another high quality codec that work with any device covering up to 4kHz audio spectrum (telephone quality) and requires about 100kbit/s network bandwidth is built in softphones * GSM and iLBC use less bandwidth than the other codecs but they have less support in other devices and cover up to 4kHz audio spectrum and requires up to 40kbit/s network bandwidth h3. Best Speech Quality To obtain best audio quality for speech you must: * Use a wideband codec like Speex, G.722 or OPUS * Have Acoustic Echo Cancellation enabled in Blink Audio Preferences, this will set the internal sampling rate to 32kHz covering up to 16kHz audio spectrum * Enable Ambient Noise Reduction in System Sound Preferences, this will remove the fan and other low frequency noises * If available bandwidth is an issue, use OPUS, Speex, G722 codecs order in Advanced RTP media preferences You may use any headset or no headset (speakerphone mode). h3. Best Studio Quality To obtain best possible audio quality and remove all delays and distortions of the original signals introduced by the computer software and hardware you must do the following: * Use an analogue headset (any digital headset will likely down-sample or filter out the microphone signals) * Disable Acoustic Echo Cancellation (AEC) in Blink Audio Preferences. This will disable the built-in noise reduction and echo cancellation algorithms as well as increasing the internal sampling rate to 48kHz * Disable Ambient Noise Reduction in System Sound Preferences * Use OPUS codec, with the AEC disabled, it will cover up to 20kHz audio spectrum h3. DTMF Dial tones are used to interact with PBX and IVR systems or legacy PSTN gateways. To send DTMF tones, focus the Audio Call by clicking on it. The current call is already focused if you just started it. What you then type on the keyboard is automatically translated into DTMF tones. Alpha-numeric keys are translated into numeric DTMF keys as they are on a numeric telephone keypad. Also you may use the dialpad for this purpose. If a telephone number with a # sign is dialed, what comes after the # sign will be automatically entered as DTMF codes once the call is connected. Supported DTMF codes are 0-9*#. You can use the comma sign ',' to insert a one second pause (version >=1.5.1). You can use other delimiter by setting it in Phone Numbers advanced section of the SIP Account. You can paste a string containing 0 to 9 digits, # and * from the Clipboard in the active audio call. These are then sent out as DTMF codes. h3. Hangup To hangup click on the _Red handset_ displayed for each Audio Session in the right hand side of the drawer or press the Escape key. h3. Hold/Unhold The shortcut key for hold and unhold of the selected session is Space. h3. Record To record click on the _Black circle_. While recording, the circle will toggle between red and black. Recorded sessions can be found in menu _Audio -> Recordings_. h3. Transfer To blindly transfer a call, just drag it to a contact in the Contacts list. You can also enter a number or address in the search bar, to transfer a call to an arbitrary address. To perform an assisted call transfer, first establish a call to each party. Then, click on the T button for completing the transfer, a contextual menu is presented. h3. Call History History of previous sessions is available in the _History_ menu. If you have registered a SIP Account with Blink, you can review the missed calls while Blink was off-line in _Account-> Settings on SIP Server -> History_ menu. h3. Redial To redial the last session type Command-R, to redial a previous session select it in the History menu. h3. iTunes Integration iTunes automatically pauses playing before any _Audio Call_ pauses and resumes playing after all _Audio Calls_ have finished. This functionality does not work when Blink runs in Sandbox mode (starting with Pro version 1.9.0 and Lite version 1.7.0) due to Apple imposed restrictions. h3. Audio Information !http://icanblink.com/images/BlinkScreenshot-ICE.jpg! Audio Calls have status indication about the progress of establishment of the RTP stream and ICE negotiation, the negotiated codec and the presence of encryption for signaling and media. The RTP end-points and negotiated ICE candidates (when ICE negotiation succeeded) are displayed when hovering the mouse over the Audio codec information area. h3. Phone Numbers To dial a phone number, just enter the number in the _Search Box_ followed by Enter or Return key. When dialing numbers by selecting entries from the Address Book it is recommended that you store your numbers in international E.164 format (that is + sign followed by the country code then the subscriber number). You can set in the account _Advanced -> Phone Numbers_ preferences section how to replace the + sign with another prefix recognized by your SIP service provider or PBX. For example if you set _Replace Starting +_ with 001, when you dial +44XXX the number will be dialed as 00144XXX. Optionally, phone numbers can be also prefixed before dialing out, for example if a 9 is required by your PBX by setting the _External Line Prefix_ option. If you have created a SIP Account with Blink, you can call to PSTN numbers if you must have a positive credit. You can use a Credit Card to add _Credit_ to your SIP Account in menu _Tools -> Call To Phone Numbers..._. You may request the assignment of a PSTN Caller Id by opeing a ticket in the server support interface. Recognized number formats are + or _00_ followed by the _Country Code_ and then _Subscriber Number_. If you use another SIP Account than the one provided by Blink, access to the PSTN is subject to the support provided by your SIP service provider. The number format depends as well on the conventions imposed by the SIP service provider in question. h3. Voicemail Voicemail is a feature provided for SIP accounts created by Blink. It is provided by the network while Blink is offline, when the call forwarding to Voicemail is activated. To change the settings of your SIP2SIP voicemail box dial _1233_. You can record your unavailable message and listen to your messages stored on the server. The voicemail delivered method (by email attachement or by dialing into the server) is set in menu _Tools -> Settings on SIP server_ in the Voicemail section. h3. Answering Machine When the _Answering Machine_ is enabled, Audio Call requests will be automatically answered with either the standard or the custom recorded message after the delay configured set in _Preferences -> Answering Machine_ settings. You can enable the _Answering Machine_ using the menu item _Tools -> Enable Answering Machine_. The incoming Audio Calls are then recorded and can be listened to later in _Tools -> Recordings_ menu. While the _Answering Machine_ is handling an Audio Call, you can hear what the remote party is speaking while your microphone is muted. If you wish you can take over by clicking on the _Green Handset_ icon in the Audio drawer. The recording stops and the session is connected to the microphone. h3. Audio Conference !http://icanblink.com/images/BlinkScreenshot-AudioConference.jpg! Drag and drop _Audio Calls_ on top of each other to create a "Conference":http://icanblink.com/screenshots.phtml#audio_conference or use the button presented at the botton at the _Audio Drawer_ to start a _Conference_ with all active _Audio Calls_. Add new participants to a Conference by dragging Contacts from the _Contacts list_ onto an _Audio Call_. Each participant can be muted individually by pressing on the microphone symbol that appears on each conferenced session. To end an _Audio Conference_ drag the session out of the conference area or press the _Conference_ button again. There can be only one active _Audio Conference_ at any given time. h2. Chat Sessions Chat sessions work like Audio Calls in the sense that a session is established after the called party explicitly accepts the invitation and for each message there is a delivery report available. This is different to Send Message, which is a fire and forget action with no guarantees of the delivery. !http://icanblink.com/images/BlinkScreenshot-ServerConference.jpg! _Chat Sessions_ are displayed into the "Chat window":http://icanblink.com/screenshots.phtml#chat_sessions. For each recipient there is a new Tab created at the bottom of the window. The Tabs are matched based on the SIP Address of the recipient and the _Chat Aliases_ configured for the Contacts. The lateral drawer display the active participants present in the chat session or multi-party conference. _Chat Sessions_ are encrypted using TLS and handled like the _Audio Sessions_, a _Chat Session_ is established only to the device where the user accepts the session. _Chat sessions_ can carry arbitrarily large amounts of text information. You can start a _Chat Session_ by right-clicking on a _Contact_ and chose _Start Chat Session_. Messages typed before the session is accepted by the remote party are queued and delivered once the session has been established. If the session fails to establish, the undelivered messages will be resent at the next successful attempt. Message marked with a red color background have failed to be delivered. To an established _Chat Session_ you can add _Audio_ or start a _Screen Sharing_ session by clicking on the buttons presented on the toolbar. To review previous chat conversations go to menu _History -> Chat Conversations_. To insert an empty line use Shift-Enter combination. The rendering of Emoticons can be disabled in each chat window, this can be useful to transfer programming code snippets without interpreting the special characters as emoticons. h2. Presence Presence is a complex topic as it requires specialized infrastructure not all SIP providers posses. See http://projects.ag-projects.com/news/15 h2. Short Messages _Short Messages_ is the way to interact with legacy SIP IM clients that do not support session based _Chat Sessions_ using MSRP protocol. _Short Messages_ are stand-alone entities that operates in a fire and forget fashion. There is no guarantee for delivery or alerting of the final recipient. _Short Messages_ end-up on all SIP devices registered for the remote SIP Account, including hardware phones that accept such messages but do not display them, the recipient has no control where to receive them. _Short Messages_ have no end-to-end delivery report and cannot be encrypted the way Chat Sessions are. For guaranteed message delivery and encryption you must use Chat Sessions. A _Short Message_ cannot exceed 1300 characters on IP networks and 160 on PSTN mobile networks. You can send a _Short Message_ by right-clicking on a _Contact_ and chose _Send SMS_. Previous exchanged messages can be reviewed in the menu _Window -> Chat History_. h2. File Transfers !http://icanblink.com/images/BlinkScreenshot-FileTransfer.jpg! To send a file you can use drag and drop from Finder or other application like iPhoto onto a Contact, to a Chat Window or by right clicking on a Contact and then selecting _Send File..._ option. _File Transfers_ are displayed in a "separate window":http://icanblink.com/screenshots.phtml#file_transfers. Each file has a progress bar attached with estimated transfer speed and remaining time. h2. Screen Sharing Screen Sharing is implemented by using standard VNC protocol over an MSRP connection. The minimum bandwidth required for a reasonable experience us 1 Mbit/s. Make sure that all debugging is disabled during Screen Sharing as it can overload the CPU. The party sharing the Screen must have enabled _Screen Sharing_ in _System Preferences_ and set the option _Anyone may request permission to control screen_ in Computer Settings section of the _Share Screen_ panel. !http://icanblink.com/images/BlinkScreenshot-ScreenSharingServerSetup.jpg! h3. Screen Sharing Party First Blink alerts the user about an incoming request for Screen Sharing. If accepted, MacOSX VNC server will asks to confirm the Screen Sharing request. The request originates from the localhost (127.0.0.1) as the connection runs through Blink. !http://icanblink.com/images/BlinkScreenshot-ScreenSharingServerConfirmation.jpg! h3. Screen Viewer Party The party asking for Screen Sharing must select the option 'Connect by Asking for Permission' when prompted by the VNC viewer. !http://icanblink.com/images/BlinkScreenshot-ScreenSharingClientRequest.jpg! h2. NAT Traversal For NAT traversal you must rely on your SIP service provider. In general, every SIP service provides relaying for both signaling and media, which takes care of the NAT issue. This means that no special settings are necessary in the client. h3. Audio For _Audio Calls_ you can enable the use of ICE negotiation in _Advanced -> NAT Traversal -> Use ICE_. ICE requires the presence of STUN servers, they must be provided by the SIP service provider. The ICE negotiation details are displayed in "RTP Logs window":http://icanblink.com/screenshots.phtml#logs_ice. While the ICE negotiation progresses, its status is also displayed in the Audio Call information, for example the gathering of ICE the candidates and the probing of the remote candidates. Once the audio stream is established, the audio information area is updated with the negotiated codec type and the sample rate. The active RTP end-points and the ICE candidates types are displayed while "hovering the mouse":http://icanblink.com/screenshots.phtml#rtp_endpoints over the audio status information area. h3. IM and File Transfers To traverse the NAT for MSRP related sessions (Instant Messaging, File Transfer) a "MSRP relay":http://msrprelay.org configured for the called party domain is needed. The SIP service provider that provides the SIP Account must support this feature (e.g. http://sip2sip.info). h3. Screen Sharing To traverse the NAT for Screen Sharing sessions a "MSRP relay":http://msrprelay.org configured for the called party domain is needed. The SIP service provider that provides the SIP Account must support this feature (e.g. http://sip2sip.info). h2. Growl Notifications Growl notifications are raised for missed sessions and the Dock Icon badge is updated with the number of missed sessions. When sessions are accepted elsewhere and the SIP server supports the Reason header, the sessions will be logged in the incoming section rather than the missed section. h2. Logs "Logs Window":http://icanblink.com/screenshots.phtml#logs helps troubleshoot network traffic for various protocols used by Blink. For example, one can follow in the self scrolling interface the time sequence of all DNS lookups and SIP messages exchanged with the other end-points. To see what Blink is doing under the hood go to the menu _Window -> Logs_. It is advisable not to leave MSRP Trace and Notifications Logs turned on unless you really need them for debugging purposes, they are very demanding in terms of CPU load during File Transfer and Screen Sharing sessions. h2. Server Settings !http://icanblink.com/images/BlinkScreenshot-DND.jpg! Blink is integrated with the SIP2SIP server functionality. One can change settings directly on the SIP server like Call Forwarding, Do Not Disturb, list of last missed sessions and other settings. The settings are displayed in "Server Settings window":http://icanblink.com/screenshots.phtml#server_settings. The window is actually a web interface that loads the URL configured in the _Advanced -> Server -> Settings URL_ for each SIP Account. The remote web server can support digest authentication, Blink sends the SIP Account credentials when prompted by the server. h2. Audio Devices Blink auto-detects audio devices there are plugged in and out on the fly and prompts the user to switch to a new added device. You can switch automatically by setting this option in Preferences -> Audio section. To selected a particular audio device use the menu _Audio_. h2. Preferences !http://icanblink.com/images/BlinkScreenshot-Preferences.jpg! To change Blink configuration go to menu _Preferences_. The Preferences "window":http://icanblink.com/screenshots.phtml#preferences appears. Find out more information about a particular setting by hovering the mouse over it. Each SIP Account has advanced options available, to reveal them click on the small triangle presented under the SIP Address. Blink preferences are stored in _~/Library/Application Support/Blink Pro_ folder. You can reset Blink by deleting this folder. Blink SIP accounts and settings are stored in _~/Library/Application Support/Blink Pro/config_ file. GUI preferences are stored in _~/Library/Preferences/com.agprojects.Blink.plist_ file. (e.g. size, location of the windows and other MacOSX related settings). If you ever want to move your Blink configuration to another login account you must edit the content of your _config_ file and replace the absolute file paths accordingly. You can edit this file with any text editor as long as you do not break the return lines and formatting of the file. h3. Codecs Blink supports _G722_ and _Speex_ wide-band codecs. The order of the codecs can be configured in menu _Preferences -> Advanced -> RTP Media_ and for each SIP Account in _Preferences -> Accounts -> Advanced -> RTP Media_. h3. Open Browser on Incoming Call You can configure Blink Pro to automatically open a web browser on an incoming call event. For this set the _Alert URL_ in _Preferences -> Accounts -> Selected Account -> Advanced -> Web Alert_ section. The URL may contain the following variables that will be replaced with the actual information from the incoming session: * $caller_party - the SIP address of the caller party * $caller_username - the username part of the SIP address of the caller party * $called_party - the SIP address of the account being called Example: http://www.example.com?caller=$caller_party&called=$called_party The web page can be opened when call comes in or after it was answered. The web page can be opened in a Blink window or in the default web browser (check option in _Preferences -> Advanced -> GUI Settings_) h2. History Database Blink stores the history of sessions and chat messages in a Sqlite database. The location of the database is: <pre> ~/Library/Application Support/Blink Pro/history/history.sqlite </pre> If for any reason the database becomes corrupted, which may manifest itself by errors reported graphically by Blink itself or in the Console application you may work around the problems in several ways. First, backup your database in case you need the uncorrupted data in the future. You can do this by copying the history.sqlite file to another location. The file can be opened in *Terminal* application using *sqlite3* program. You can dump the old data in the corrupted database as follows: <pre> #:~/Library/Application Support/Blink Pro/history$sqlite3 history.sqlite SQLite version 3.7.7 2011-06-25 16:35:41 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> select * from sessions; sqlite> select * from chat_messages; </pre> h3. Restore Procedure Try the following in this order to solve a data corruption problem: * Clear the session history table, go to menu _History-> Clear History_. The session table will be emptied and the chat messages are not affected. Restart Blink. * Stop Blink. Remove history.sqlite file, the history database will be recreated at start time. Use the backup file for reading the old data using the sqlite3 command line utility.