It’s all about the bug fixes… Due to many a late evening coding, and some switches in my development environment – this release fixes some of the major show stopping bugs that had made its way into v0.0.3.0
So here’s a breakdown of whats new:
Resolved handler issues for all check boxes and radio buttons
Many more improvements in serial number handling/storage
All of the other features still stand:
Features
Custom Status – This application eases the pain of creating 4 custom status options for the Microsoft Lync Client. Rather then just telling your contacts you are away or busy, you can now give them more insight into what you are on with.
Linked Personal Notes – Now when you switch to a status, a predefined personal note will also apply
Linked Locations – Now when you switch to a status, a predefined location will also apply
Automated(Canned) Responses – Upon selecting a custom status, the application is capable of intercepting conversation requests and replying (automatically) with your predefined response.
Exception Lists – Sometimes you don’t want your automated responses going to every contact in your list, the application works with a list of predefined addresses which it won’t respond to.
Frequency of response – Much like Microsoft Outlook, you can prevent (if you want) the recipient receiving multiple copies of your ‘canned’ response in a 24 hour period. Alternatively, you can set the app to reply every time.
Call handling – Upon selecting a custom status, the application is capable of intercepting voice call requests and handling them (automatically) with your predefined response.
Reject Call – The app is now capable of automatically rejecting calls, sending them to voice mail if set up.
Call Forward – The app is now capable of automatically forwarding incoming calls to your defined recipient.
On both counts it’s still possible to honour the exception list, allowing calls from your predefined contacts from bypassing the rules and passing through.
Tools – The application also contains a tool set for some often required ‘tweaks’/file manipulations to resolve some of the niggles we come across in our Lync environment.
Lync Cache Cleaning – Lync caches information locally to aid with performance, this can often cause delays when information is updated on other clients or centrally.
Photo Cache Cleaning – The application enables the end-user to ‘point and click’ clear down the Lync Client photo cache. Very useful when diagnosing photo synchronisation issues.
Contact Cache Cleaning – The application enables the end-user to ‘point and click’ clear down the Lync Client Contact cache cleaning. This saves having to remove all the users login information, but often helps clear spurious contact list issues. Such as people’s status’ being listed incorrectly.
Appear Offline – The application gives the end-user the ability to enable a hidden Lync feature, the ability to appear offline.. This is especially useful if you are out of the office and need to make calls, but do not want to receive calls/IM’s
Force GAL Download – The application enables the end-user to override the delay of download for the GAL, very handy during a rebuild of an end users machine.
Backup GAL – The application makes backing up the local copy of the GAL a point and click process. This comes in handy when migrating a user from one machine to another.
As always, please let me know if you discover any bugs – or have suggestions for features. If you already have a key for the app you can download the MSI here, use the built in ‘Check for updates’ functionality or If you don’t yet have a key please use this link:
I have just uploaded the latest revision of the LCS 2014 software. In this release I have been focusing on call handling features. The app is now capable of rejecting or forwarding calls. I have also switched the form design to be tab based.. This makes things a lot less complicated and ‘busy’.
Features
Custom Status – This application eases the pain of creating 4 custom status options for the Microsoft Lync Client. Rather then just telling your contacts you are away or busy, you can now give them more insight into what you are on with.
Linked Personal Notes – Now when you switch to a status, a predefined personal note will also apply
Linked Locations – Now when you switch to a status, a predefined location will also apply
Automated(Canned) Responses – Upon selecting a custom status, the application is capable of intercepting conversation requests and replying (automatically) with your predefined response.
Exception Lists – Sometimes you don’t want your automated responses going to every contact in your list, the application works with a list of predefined addresses which it won’t respond to.
Frequency of response – Much like Microsoft Outlook, you can prevent (if you want) the recipient receiving multiple copies of your ‘canned’ response in a 24 hour period. Alternatively, you can set the app to reply every time.
Call handling – Upon selecting a custom status, the application is capable of intercepting voice call requests and handling them (automatically) with your predefined response.
Reject Call – The app is now capable of automatically rejecting calls, sending them to voice mail if set up.
Call Forward – The app is now capable of automatically forwarding incoming calls to your defined recipient.
On both counts it’s still possible to honour the exception list, allowing calls from your predefined contacts from bypassing the rules and passing through.
Tools – The application also contains a tool set for some often required ‘tweaks’/file manipulations to resolve some of the niggles we come across in our Lync environment.
Lync Cache Cleaning – Lync caches information locally to aid with performance, this can often cause delays when information is updated on other clients or centrally.
Photo Cache Cleaning – The application enables the end-user to ‘point and click’ clear down the Lync Client photo cache. Very useful when diagnosing photo synchronisation issues.
Contact Cache Cleaning – The application enables the end-user to ‘point and click’ clear down the Lync Client Contact cache cleaning. This saves having to remove all the users login information, but often helps clear spurious contact list issues. Such as people’s status’ being listed incorrectly.
Appear Offline – The application gives the end-user the ability to enable a hidden Lync feature, the ability to appear offline.. This is especially useful if you are out of the office and need to make calls, but do not want to receive calls/IM’s
Force GAL Download – The application enables the end-user to override the delay of download for the GAL, very handy during a rebuild of an end users machine.
Backup GAL – The application makes backing up the local copy of the GAL a point and click process. This comes in handy when migrating a user from one machine to another.
As always, please let me know if you discover any bugs – or have suggestions for features. If you already have a key for the app you can download the MSI here .. If you don’t yet have a key please use this link:
Hello, firstly please let me thank you all for downloaded the previous releases of LCS. It really has come on leaps and bounds with your help. I am now pleased to announce that version 0.0.0.5 is now available to download!
However – you will first need to remove the old versions (0.0.0.4 or less) before you install the new version.. The previous setup packaging app I was using caused far too much pain, so I have abandoned it for an MSI build.
Going forward any future updates should be a lot less painless to install. This also gives better ability for roll out via GPO.
0.0.0.5 fixes a hand full of bugs in the file handling methods, and also backs up the license key used to save constant re-entry.
0.0.0.5 also brings with it a collection of new and exciting features, including a status specific personal note and location settings!
Features
Custom Status – This application eases the pain of creating 4 custom status options for the Microsoft Lync Client. Rather then just telling your contacts you are away or busy, you can now give them more insight into what you are on with.
Linked Personal Notes – Now when you switch to a status, a predefined personal note will also apply
Linked Locations – Now when you switch to a status, a predefined location will also apply
Automated(Canned) Responses – Upon selecting a custom status, the application is capable of intercepting conversation requests and replying (automatically) with your predefined response.
Exception Lists – Sometimes you don’t want your automated responses going to every contact in your list, the application works with a list of predefined addresses which it won’t respond to.
Frequency of response – Much like Microsoft Outlook, you can prevent (if you want) the recipient receiving multiple copies of your ‘canned’ response in a 24 hour period. Alternatively, you can set the app to reply every time.
Tools – The application also contains a tool set for some often required ‘tweaks’/file manipulations to resolve some of the niggles we come across in our Lync environment.
Lync Cache Cleaning – Lync caches information locally to aid with performance, this can often cause delays when information is updated on other clients or centrally.
Photo Cache Cleaning – The application enables the end-user to ‘point and click’ clear down the Lync Client photo cache. Very useful when diagnosing photo synchronisation issues.
Contact Cache Cleaning – The application enables the end-user to ‘point and click’ clear down the Lync Client Contact cache cleaning. This saves having to remove all the users login information, but often helps clear spurious contact list issues. Such as people’s status’ being listed incorrectly.
Appear Offline – The application gives the end-user the ability to enable a hidden Lync feature, the ability to appear offline.. This is especially useful if you are out of the office and need to make calls, but do not want to receive calls/IM’s
Force GAL Download – The application enables the end-user to override the delay of download for the GAL, very handy during a rebuild of an end users machine.
Backup GAL – The application makes backing up the local copy of the GAL a point and click process. This comes in handy when migrating a user from one machine to another.
As always, please let me know if you discover any bugs – or have suggestions for features. If you already have a keyfor the app you can download the MSI here .. If you don’t yet have a key please use this link:
Microsoft Lync is Microsoft’s latest offering of a unified communications system. Sporting features you’d expect to find in a SIP/Unified Comms client, Lync is a pretty powerful piece of kit.
What’s more, Microsoft offer an SDK to enable easy development of tools and add-ons using Lync technologies. Most of the tutorials and blog posts seem to focus on either C# or Silverlight, which is fine – however, as I am primarily a VB.Net developer I decided to publish my own guide on how to intercept and respond to received Lync messages.
Firstly, I need to point out that I have only had access to Lync for a couple of months now and only downloaded the SDK earlier this month.. So although the code below is functional, I am constantly learning and may find a better way of doing things as my learning continues. To make things easier, make sure you subscribe to the post and you’ll get an update each time I adjust the code.
You will need to download and install the Microsoft Lync SDK then fire up your copy of Visual Studio, create a new windows form project. Obviously you could use any type of project here, however I have plans for a GUI in the future so I am using a windows form project.
Now, open the code view of your new form and import the following:
1
2
Imports Microsoft.Lync.Model
Imports Microsoft.Lync.Model.Conversation
Now, under your “Public Class Form1” but before your “Private Sub Form1_Load()” enter the following lines of code:
That’s all there is to it for the declarations, as you can see I have used ‘WithEvents’ to expose the ‘methods’ in the GUI and make things a little easier developing with them.
Next in the “Form_Load()” event, paste in the following code:
This essentially ties your code to the Lync client running on your machine, then using ‘automation’ it confirms the client is signed in, if not it signs in for you.
Now, your app is hooked into the Lync client, you will need to ‘capture’ the message received event and handle it appropriately.
As you can see from the post above, I am using the built in replace functionality of the string. This is because the Lync client passes line feeds after its message, which makes handling the received message quite complicated.
So, from the code above – each time an instant message is received by your Lync client the variable strRec will contain the received message.
Now, upon receipt of a message you may want to send a response – which is where my next code snippet comes in. The following Sub send’s an instant message to the participants of the conversation:
1
2
3
4
5
6
7
8
PublicSub SendIM(ByVal strMessage AsString)
Dim modal=DirectCast(LycConversation.Modalities(Lyc.ModalityTypes.InstantMessage),InstantMessageModality)
From the code above, you should see the sub requires a string to be passed to it. This is what will be relayed to the client who sent the original message.
So there you have it, a fairly simple way of receiving and sending back a Lync ‘IM’.
Obviously, you may want to improve this slightly by trimming the received message and handling it depending on the users request. So, for example – you may want to ‘serve’ a simple weather forecast based on the users request. To do this all you need to do is enhance the ‘_LocalIMModality_InstantMessageReceived’ sub to include code something like this:
29:SendIM("The weather forecast for "&locationId&" is: "&node.GetAttribute("text",ns.DefaultNamespace).ToString()&", with a temperature of "&node.GetAttribute("temp",ns.DefaultNamespace).ToString()&"°C")
30:EndWhile
Exit Sub
ErrHand:
SendIM("I can't seem to fetch the weather forecast right now "&Err.Description&" - "&Err.Number&" - "&Erl())
EndSub
As you can see from the code above, I have also built in the functionality for the Lync user to request weather for a couple of locations around the UK. This could be increased to as many as you want, or removed to only send details of one particular place.
Some other things you might want to consider would be for your ‘Bot’ to query a SQL table and pass back the results, or perhaps perform other functionality such as PING a device and send the reply details in an IM.
In a future blog post I will show you how to connect your new ‘BOT’ into a AI handler to provide an AI Bot capable of holding a ‘conversation’ of sorts.
As per my opening paragraph, I am very much in the early days of my Lync development – so if you have any suggestions on how I could improve the code above, please get in touch.