<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>RE: New Message from Shannon McCoy in Computer Telephony Integration Object</title>
  <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_thread?p_l_id=&amp;threadId=11330544" />
  <subtitle>RE: New Message from Shannon McCoy in Computer Telephony Integration Object</subtitle>
  <id>http://developer.cisco.com/c/message_boards/find_thread?p_l_id=&amp;threadId=11330544</id>
  <updated>2013-05-25T21:26:45Z</updated>
  <dc:date>2013-05-25T21:26:45Z</dc:date>
  <entry>
    <title>RE: New Message from Arun Kumar in Computer Telephony Integration Object Se</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11371768" />
    <author>
      <name>David Lender</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11371768</id>
    <updated>2013-01-31T19:41:29Z</updated>
    <published>2013-01-31T19:41:29Z</published>
    <summary type="html">Good.  Reason codes are configured on the CTIOS Server registry.  See the CTIOS System Manager’s Guide here.  (section on CTIOS Configuration)
http://www.cisco.com/en/US/partner/docs/voice_ip_comm/cust_contact/contact_center/ctios/ctios9_0/installation/guide/UCCE_BK_C3D5EC47_00_cti-os-system-manager-guide.html</summary>
    <dc:creator>David Lender</dc:creator>
    <dc:date>2013-01-31T19:41:29Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11368832" />
    <author>
      <name>Arun Kumar</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11368832</id>
    <updated>2013-01-31T18:59:59Z</updated>
    <published>2013-01-31T18:59:59Z</published>
    <summary type="html">Oops had a wrong PG address. Cool, it works now. I was able to get a call and succesfully launch the popup.
Now  any issue with the reason/wrap up code or it should automatically populate as long as I have it set in my PFG right. I am not able to see the not ready codes right now.   I just see 4 lines 'Insert not ready reason code here 1..2..3.4.. etc,
Do you consider this VB version stable for production?  I mean are there any kinks or bugs associated that ones to be concerned about ?
Also I assume the supersvisor desktop can be compiled the same way.  Your help has been great. I have a version up and running with the web pop up. 
Instead of producing 3 or 4 different flavors of exe, I might add code to read from registry key the line of business and set the URL accordingly based on line of BU.
 
 </summary>
    <dc:creator>Arun Kumar</dc:creator>
    <dc:date>2013-01-31T18:59:59Z</dc:date>
  </entry>
  <entry>
    <title>RE: New Message from Arun Kumar in Computer Telephony Integration Object Se</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11367496" />
    <author>
      <name>David Lender</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11367496</id>
    <updated>2013-01-31T18:35:29Z</updated>
    <published>2013-01-31T18:35:29Z</published>
    <summary type="html">To have the CTIOS Desktop connect, set the CtiOsA and CtiOsB registry settings to the IP address or hostname of your CTIOS Server.

For windows 7 the registry settings are in:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Cisco Systems, Inc.\CTI Desktop\CtiOs

For earlier versions of windows remove the Wow6232Node it should be something like

HKEY_LOCAL_MACHINE\SOFTWARE\ Cisco Systems, Inc.\CTI Desktop\CtiOs</summary>
    <dc:creator>David Lender</dc:creator>
    <dc:date>2013-01-31T18:35:29Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11364590" />
    <author>
      <name>Arun Kumar</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11364590</id>
    <updated>2013-01-31T17:51:37Z</updated>
    <published>2013-01-31T17:51:37Z</published>
    <summary type="html">Sorry message posted twice.  Now I was able to create the exe and the browser opens up when I launch. I need to now test when the call comes in.  Thanks for the same.
My desktop exe has the login button grayed out as it is offline and not able to connec to the PG's.  How can I make it a installable version, where the user can select the PG ip or I could change the PG ip in registry settings</summary>
    <dc:creator>Arun Kumar</dc:creator>
    <dc:date>2013-01-31T17:51:37Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11364473" />
    <author>
      <name>Arun Kumar</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11364473</id>
    <updated>2013-01-31T17:48:17Z</updated>
    <published>2013-01-31T17:48:17Z</published>
    <summary type="html">David/Shannon,
        Based onn VB code, can you suggest as to which file/method  i need to change to do the following
1. Invoke a web url when the softphone is launched
2. Invove a web url by passing call variables when a call comes in from IVR.
 
 You guys have been really helpful.</summary>
    <dc:creator>Arun Kumar</dc:creator>
    <dc:date>2013-01-31T17:48:17Z</dc:date>
  </entry>
  <entry>
    <title>RE: New Message from Arun Kumar in Computer Telephony Integration Object Se</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11361319" />
    <author>
      <name>David Lender</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11361319</id>
    <updated>2013-01-31T17:19:29Z</updated>
    <published>2013-01-31T17:19:29Z</published>
    <summary type="html">1.       You need to add your web url code to the frmCTIOSSoftphone_Load handler

2.       You will need to add your web url code to the m_Session_OnCallEstablished event handler.  Previous post indicates how to obtain the callvariables associated with the call.</summary>
    <dc:creator>David Lender</dc:creator>
    <dc:date>2013-01-31T17:19:29Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11362210" />
    <author>
      <name>Arun Kumar</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11362210</id>
    <updated>2013-01-31T16:53:55Z</updated>
    <published>2013-01-31T16:53:55Z</published>
    <summary type="html">David/Shannon,
        Based onn VB code, can you suggest as to which file/method  i need to change to do the following
1. Invoke a web url when the softphone is launched
2. Invove a web url by passing call variables when a call comes in from IVR.
 
 You guys have been really helpful.</summary>
    <dc:creator>Arun Kumar</dc:creator>
    <dc:date>2013-01-31T16:53:55Z</dc:date>
  </entry>
  <entry>
    <title>RE: New Message from Shannon McCoy in Computer Telephony Integration Object</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11362127" />
    <author>
      <name>Shannon McCoy</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11362127</id>
    <updated>2013-01-31T16:52:33Z</updated>
    <published>2013-01-31T16:52:33Z</published>
    <summary type="html">[quote=David Lender]Arun/Shannon

VS 2008 is not officially supported. Cisco CTI OS Toolkit 8.5(2) introduces support for application development using Microsoft Visual
Studio .NET 2010 and .NET 3.5 framework

David[/quote]
Thanks David, I knew I could depend on your guruness :)</summary>
    <dc:creator>Shannon McCoy</dc:creator>
    <dc:date>2013-01-31T16:52:33Z</dc:date>
  </entry>
  <entry>
    <title>RE: New Message from Arun Kumar in Computer Telephony Integration Object Se</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11360606" />
    <author>
      <name>David Lender</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11360606</id>
    <updated>2013-01-31T16:49:29Z</updated>
    <published>2013-01-31T16:49:29Z</published>
    <summary type="html">The VB one is the code from the out of box CTIOS Agent desktop and since it uses ActiveX controls the code is much simpler.
Considering what you are trying to do, I suggest using the VB.NET sample.</summary>
    <dc:creator>David Lender</dc:creator>
    <dc:date>2013-01-31T16:49:29Z</dc:date>
  </entry>
  <entry>
    <title>RE: New Message from Shannon McCoy in Computer Telephony Integration Object</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11360524" />
    <author>
      <name>David Lender</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11360524</id>
    <updated>2013-01-31T16:46:29Z</updated>
    <published>2013-01-31T16:46:29Z</published>
    <summary type="html">Arun/Shannon

VS 2008 is not officially supported.  Cisco CTI OS Toolkit 8.5(2) introduces support for application development using Microsoft Visual
Studio .NET 2010 and .NET 3.5 framework

David</summary>
    <dc:creator>David Lender</dc:creator>
    <dc:date>2013-01-31T16:46:29Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359959" />
    <author>
      <name>Shannon McCoy</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359959</id>
    <updated>2013-01-31T16:44:24Z</updated>
    <published>2013-01-31T16:44:24Z</published>
    <summary type="html">[quote=Arun Kumar]Thanks again. One last thing.  Can you shed some light on:
 
I am using the code that came with 8.0(1) version. As I said I do not need anything other than web url coming up.
So when you say C# code is buggy, what kind of issues can I expect.  How about the VB one ? Is that better ?
What files should I change there. 
 
I prefer java, however I see only 3 files under Java Phone. Is that code complete ? Can I use that.  You guidance is very much appreciated[/quote]
This again is a more complicated question that it might seem to be. The Java code is weak and frankly I just skip it as an option. There are constant rumors that Java support may be dropped altogether but every version is it still there. I don't know how much active development is being done with it internally. The VB sample is complete but it uses the ActiveX( welcome back to 2002 )  controls for 80% of the code so it is very limited in regards to customization but it is very short and is the only .NET version that supports silent monitoring because it is using ActiveX. You can probably accomplish what you want with it though. The C# example is by FAR the most complete example and the most powerful. I have rewritten it multiple times on multiple versions and I use power tools such as Resharper that allow me to find addition coding flaws that don't show with normal Visual Studio. The app runs for the most part very well, and the bugs vary from version to version. An example I found repeatedly is that the list of reason codes for logging of and going not ready does not repopulate properly when changing from one to the other so you can end up in a state where you click on not ready but you have logout reasons or vice versa. Its a little hard so remember all the issues as I simply corrected them when I rewrote it. I have converted the VB sample to C# and did a lot of customization but it is not for the faint of heart. So depending on whom you are developing for and how picky they are the C# code offers the most flexibility and the more modern(2003) interaction. So your choices are C#, total control, VB more stable but almost no control. Hope this helps. Cheers </summary>
    <dc:creator>Shannon McCoy</dc:creator>
    <dc:date>2013-01-31T16:44:24Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359525" />
    <author>
      <name>Arun Kumar</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359525</id>
    <updated>2013-01-31T16:22:46Z</updated>
    <published>2013-01-31T16:22:46Z</published>
    <summary type="html">Thanks again. One last thing.  Can you shed some light on:
 
I am using the code that came with 8.0(1) version. As I said I do not need anything other than web url coming up.
So when you say C# code is buggy, what kind of issues can I expect.  How about the VB one ? Is that better ?
What files should I change there. 
 
I prefer java, however I see only 3 files under Java Phone. Is that code complete ? Can I use that.  You guidance is very much appreciated</summary>
    <dc:creator>Arun Kumar</dc:creator>
    <dc:date>2013-01-31T16:22:46Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359450" />
    <author>
      <name>Shannon McCoy</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359450</id>
    <updated>2013-01-31T16:25:46Z</updated>
    <published>2013-01-31T16:19:06Z</published>
    <summary type="html">[quote=Arun Kumar]Also should I compile .NEt code with Visual studio 2005 0r 2008 ?[/quote] This is an age old question that has been debated many times on this board. You can see mine and Davids posts on it with a search. Basically Cisco has an official supported config with Visual Studio matching the version of .NET with the version of Visual Studio. So I believe 8.0 uses .NET 2.0 so you can use 2005 (official), and perphaps 2008(David?) I personally use any version I want and have had no problems but I am outside the official bounds. Technically .NET 1.1 was the last version of .NET that had any platform specific issues. As of 2.0 every .NET version is fully reverse compatible. So even if you use 2010 or 2012 you should still be able to compile and work properly. I even use later versions of .NET such as 3.5, 4.0 and even 4.5 to get the more advanced features and still successfully use the .NET Cil as it is basically just a wrapper around tcp/ip messages anyway and doesn't tend to have anything that breaks. If you don't have much experience in .NET and don't need to make any major changes to the sample code I would paint within the lines and stay "official". I think 2008 is ok to use for that but David can confirm. He is the authority on such matters.  Also you can check the 8.0 Developers Guide and it should say which is supported.</summary>
    <dc:creator>Shannon McCoy</dc:creator>
    <dc:date>2013-01-31T16:19:06Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359175" />
    <author>
      <name>Arun Kumar</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359175</id>
    <updated>2013-01-31T16:00:30Z</updated>
    <published>2013-01-31T16:00:30Z</published>
    <summary type="html">Also should I compile .NEt code with Visual studio 2005 0r 2008 ?</summary>
    <dc:creator>Arun Kumar</dc:creator>
    <dc:date>2013-01-31T16:00:30Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359158" />
    <author>
      <name>Arun Kumar</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11359158</id>
    <updated>2013-01-31T15:58:46Z</updated>
    <published>2013-01-31T15:58:46Z</published>
    <summary type="html">I am using the code that came with 8.0(1) version. As I said I do not need anything other than web url coming up.
So when you say C# code is buggy, what kind of issues can I expect.  How about the VB one ? Is that better ?
What files should I change there. 
 
I prefer java, however I see only 3 files under Java Phone. Is that code complete ? Can I use that.  You guidance is very much appreciated.  </summary>
    <dc:creator>Arun Kumar</dc:creator>
    <dc:date>2013-01-31T15:58:46Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11358603" />
    <author>
      <name>Shannon McCoy</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11358603</id>
    <updated>2013-01-31T15:36:15Z</updated>
    <published>2013-01-31T15:34:33Z</published>
    <summary type="html">Yes the code is C# just ignore the
&lt;pre&gt; tag stuff that is from cutting and pasting in the reply its not part of the code. I assume you have or are reading the CTIOS Developer's guide because you mention VB and unforturnately the guide does not use C# but instead uses VB, Java, and COM. I program in Java as well and C# is so close to Java that you can use the Java doc for almost all of the things you need. You just need to convert certain things like in your head (e.g. import = using). Unfortunately you have chosen a big mountain to climb for your introduction to .NET :) The CTIOS C# Desktop is a 8 out of 10 in difficulty to understand and also contains quite a few bugs and very little adherence to proper design patterns. I suggest you try Pluralsight to bring yourself up to speed faster. Also safari.informit.com is a very helpful resource they are both pay services but are affordable and invaluable. You should also tell us what version of CTIOS you are using because some of these answers differ a little base on version. Also what version of Visual Studio you are using

 &lt;/pre&gt;</summary>
    <dc:creator>Shannon McCoy</dc:creator>
    <dc:date>2013-01-31T15:34:33Z</dc:date>
  </entry>
  <entry>
    <title>RE: Invoking a web URL from CTIOS desktop</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11352083" />
    <author>
      <name>Arun Kumar</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11352083</id>
    <updated>2013-01-31T13:14:54Z</updated>
    <published>2013-01-31T13:14:54Z</published>
    <summary type="html">Thank you so much Shannon.  I appreciate your feedback.  Now the code you have referred to is the C sharp code right ? I see C sharp code in my folder: under  CTI Toolkit Combo Desktop.NET
I did not see the VB code. </summary>
    <dc:creator>Arun Kumar</dc:creator>
    <dc:date>2013-01-31T13:14:54Z</dc:date>
  </entry>
  <entry>
    <title>RE: New Message from Shannon McCoy in Computer Telephony Integration Object</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11341605" />
    <author>
      <name>Shannon McCoy</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11341605</id>
    <updated>2013-01-31T07:13:05Z</updated>
    <published>2013-01-31T07:11:06Z</published>
    <summary type="html">OP I forgot to mention that for case number one you mentioned it depends on what you mean by when the app starts. You can put it in softphoneform.cs in the Form Load Event handler on line 1355 ( on mine ) and just add something like like this
&lt;pre style="background: white; color: black; font-family: Consolas;"&gt;[color=blue]private[/color] [color=blue]void[/color] SoftphoneForm_Load( [color=blue]object[/color] sender, System.[color=#2b91af]EventArgs[/color] e )
    {
    System.Diagnostics.[color=#2b91af]Process[/color].Start( [color=#a31515]@"www.whatever.com"[/color] ); 
    ...
[color=green]    [/color]// existing Cisco code
    ...
    }

This will launch when the window loads or you can put it in some other place like after the user logs in. That is up to you. &lt;/pre&gt;</summary>
    <dc:creator>Shannon McCoy</dc:creator>
    <dc:date>2013-01-31T07:11:06Z</dc:date>
  </entry>
  <entry>
    <title>RE: New Message from Shannon McCoy in Computer Telephony Integration Object</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11341334" />
    <author>
      <name>Shannon McCoy</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11341334</id>
    <updated>2013-01-31T06:41:33Z</updated>
    <published>2013-01-31T06:41:33Z</published>
    <summary type="html">Thanks Geoff, I assumed null checking was implied as I ommitted them for brevity and clarity but it is always a good point to make a note of that. Good catch.
 </summary>
    <dc:creator>Shannon McCoy</dc:creator>
    <dc:date>2013-01-31T06:41:33Z</dc:date>
  </entry>
  <entry>
    <title>RE: New Message from Shannon McCoy in Computer Telephony Integration Object</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11341241" />
    <author>
      <name>GEOFFREY THOMPSON</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=11341241</id>
    <updated>2013-01-31T06:35:49Z</updated>
    <published>2013-01-31T06:35:49Z</published>
    <summary type="html">Great post, Shannon.

To the original poster, make sure you surround these method calls with checks on the retrieved objects not being null – you can look at the code for the Blended Agent softphone to see how Cisco suggest you should do this.

Regards,
Geoff</summary>
    <dc:creator>GEOFFREY THOMPSON</dc:creator>
    <dc:date>2013-01-31T06:35:49Z</dc:date>
  </entry>
</feed>

