Click here to Skip to main content
6,926,479 members and growing! (17,395 online)
Email Password   helpLost your password?
Multimedia » General Graphics » General     Intermediate License: The Code Project Open License (CPOL)

Creating a Managed Automated Information Agent (mBot)

By RTC-LCS-Developer

mBot manages multiple RTC Client objects and exposes interfaces to them via .NET Remoting and .NET Web Services so that they can be managed and used remotely by other .NET applications or by entirely different platforms such as a Java J2EE/SOAP application like Jabber IM running on Linux or Windows.
C#.NET1.1, WinXP, Win2003, Vista, COM, VS.NET2003, Dev
Revision:2 (See All)
Posted:12 Aug 2004
Views:55,056
Bookmarked:23 times
printPrint Friendly   add Share
      Discuss Discuss   Broken Article?Report  
7 votes for this article.
Popularity: 3.14 Rating: 3.71 out of 5
1 vote, 14.3%
1
1 vote, 14.3%
2

3
2 votes, 28.6%
4
3 votes, 42.9%
5
Sample Image - Managed_RTC_LCS_Bot.gif

Introduction

In his article “Implementing Automated Agents (Bots) using the RTC Client API[1],” Robert Osborne [Microsoft] provides a reasonable starting place for framing an automated information agent, or instant messaging (IM) bot. This article is also about bots, but takes a very different approach by utilizing Microsoft’s modern .NET technologies to enable a bot infrastructure with C#, .NET Remoting Services, and Web Services. Moreover, the significant limitations of the RTC Client 1.2 API’s STA threading model are treated, making the infrastructure code for the bot much cleaner and better prepared to adapt to forthcoming collaboration APIs, such as those found in Longhorn.

The figure above provides an aerial view of what this article sets out to do: Craft a facility, called mBot, that will manage multiple RTC Client objects and expose interfaces to them via .NET Remoting and .NET Web Services so that they can be managed remotely by other .NET applications or from entirely different instant messaging platforms such as a Java J2EE/SOAP application like Jabber running on Linux or Windows.

This article is more about framing a managed open infrastructure around the RTC Client COM object than it is about the RTC Client COM object itself. The RTC Client COM object is most certainly an essential central messaging component, but it is also one whose COM API we desire to abstract away with .NET Remoting and Web Service methods.

Documentation and Source Code Provided

The two zip files contain .NET C# code (source) and a 60 page PDF file (demo) that thoroughly documents the solution.

[1] "Implementing Automated Agents (Bots) using the RTC Client API"

http://msdn.microsoft.com/office/default.aspx?pull=/library/en-us/dnrtcclnt/html/rtc_informationagent.asp

History

  • 12th August, 2004: Initial post

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

RTC-LCS-Developer


Member
Michael J. Chase has been presenting communication technology courses for the past twenty years to companies such as AT&T Bell Labs, Avaya, Digital (now HP/Compaq), the Department of Energy ( Los Alamos and Livermore ), IBM, Lucent, StorageTek, Texas Instruments, et al.

Mr. Chase has served as the assistant director for the graduate program for Telecommunications at the University of Colorado Boulder where he has also taught telephone systems and computer systems architecture at the graduate level. He as worked at Bell Laboratories and IBM. He has the degrees BSEE (Columbia), MSCS (USC), and an MS Telecommunications (Colorado). Mr. Chase has published in the Microsoft Systems Journal.

His current contract work utilizes C#, C++ and Java in client/server applications, embedded telemetry systems, and real-time collaboration systems. Mr. Chase has participated as an inventor in multiple patent applications in the VoIP arena and has served as an expert witness in intellectual property disputes involving patent infringement and licensing issues surrounding telecommunications software. Mr. Chase has created training and education courseware for RTC and LCS 2003 platform developers in a managed .Net environment.

Occupation: Web Developer
Location: United States United States

Other popular General Graphics articles:

  • A flexible charting library for .NET
    Looking for a way to draw 2D line graphs with C#? Here's yet another charting class library with a high degree of configurability, that is also easy to use.
  • CxImage
    CxImage is a C++ class to load, save, display, transform BMP, JPEG, GIF, PNG, TIFF, MNG, ICO, PCX, TGA, WMF, WBMP, JBG, J2K images.
  • 3D Pie Chart
    A class library for drawing 3D pie charts.
  • Barcode Image Generation Library
    This library was designed to give an easy class for developers to use when they need to generate barcode images from a string of data.
  • ImageStone
    An article on a library for image manipulation.
Article Top
You must Sign In to use this message board.
FAQ FAQ 
 
Noise Tolerance  Layout  Per page   
 Msgs 1 to 17 of 17 (Total in Forum: 17) (Refresh)FirstPrevNext
GeneralMonitor line from RTC APIs PinmemberMyRitu15:23 7 Nov '07  
GeneralTCP vs TLS Pinmemberchileric12:03 9 May '07  
GeneralCan I use RTC 1.3? Pinmemberchileric12:53 30 Apr '07  
GeneralRe: Can I use RTC 1.3? PinmemberRTC-LCS-Developer9:10 2 May '07  
QuestionProblem on LCS Server [modified] PinmemberTom_Ky0:58 24 Oct '06  
QuestionRe: Problem on LCS Server PinmemberTom_Ky15:48 24 Oct '06  
GeneralProblems running the example PinmemberMARCO PICCC5:21 7 Jul '06  
GeneralRTC Conversation Pinmemberriccardobecker3:42 25 Jun '06  
QuestionRTC over mobile Pinmemberalon.heller23:09 13 May '06  
GeneralHow to set IM's font and color ? Pinmemberxz_king4:41 13 Mar '06  
I want set message's header , it's seam as a string .
how to set it ?Confused

╭︿︿★╮╭︿︿☆╮
{/ . .\}{/ . .\}
(  (oo) )( (oo) )
.︶︶︶︶  ︶︶︶︶
GeneralJabber Pinmemberarash_11:47 14 Dec '05  
GeneralIt's helpful to me . Pinmemberxz_king21:11 7 Nov '05  
GeneralRTC audio stream Pinmemberserup5:59 27 Oct '05  
GeneralSame Old error PinmemberAnandakumar Thangaraju1:19 29 Nov '04  
GeneralRe: Same Old error PinmemberRTC-LCS-Developer7:50 1 Dec '04  
GeneralRe: Same Old error PinmemberAnandakumar Thangaraju1:32 2 Dec '04  
GeneralRe: Jabber is not Java PinmemberRTC-LCS-Developer13:19 17 Aug '04  

General General    News News    Question Question    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+PgUp/PgDown to switch pages.

PermaLink | Privacy | Terms of Use
Last Updated: 12 Aug 2004
Editor: Deeksha Shenoy
Copyright 2004 by RTC-LCS-Developer
Everything else Copyright © CodeProject, 1999-2010
Web19 | Advertise on the Code Project