locked
Can we use MSRS to have remotely distributed service communicate with each other ? RRS feed

  • Question

  • Hi Guys,

     

    My doubt is can we use MSRS to have remotely distributed service communicate with each other ?

     

    What I mean by this is, for example, suppose we have a robot supporting bumper service and I need notification whenever bumper is pressed.

     

    Can I have a system, may be desktop or PDA or anything that is connected to network, that could be notified about the bumper press event ?

     

    So, in other words, does it support Event Handling on remote computers. This could be essential, if suppose the robot is mounted with temperature sensor that senses the temperature in the remote environment. Suppose I have a control station at some other remote location different from the robot location that could receive event relating to temperature changes asynchronously and then might do some processing based on the event notification.

     

    Kindly let me know if such scenario is possible with MSRS.

     

    Thanks,

    Kaushal Mehta.

     

    Monday, April 28, 2008 12:32 PM

Answers

  • Hi,

     

    the scenario you are describing is supported by MRSDS. In fact it is one of it's key scenarios. You can subscribe to a service whether it is running in the same process, the same machine or on a different machine.

     

    Please consult the service tutorials [1]. They explain how to use DSS (the D stand for Distributed ;-)) across machines.

     

    Andreas

     

    [1] http://msdn.microsoft.com/en-us/robotics/cc136623.aspx
    Thursday, May 1, 2008 11:56 PM

All replies

  • Hi,

     

    the scenario you are describing is supported by MRSDS. In fact it is one of it's key scenarios. You can subscribe to a service whether it is running in the same process, the same machine or on a different machine.

     

    Please consult the service tutorials [1]. They explain how to use DSS (the D stand for Distributed ;-)) across machines.

     

    Andreas

     

    [1] http://msdn.microsoft.com/en-us/robotics/cc136623.aspx
    Thursday, May 1, 2008 11:56 PM
  • Hi Andreas,

     

    Thanks for the reply.

     

    I had one more concern.

     

    I have created a new project using dssnewservice to develop DSS application with WinForm to control the simulated robot. But, when I tried to use the WinForm as WCF client to call service on the WCF service, it gave me error saying it cannot find the service contract.

     

    What I observed in this approach, is that DSS class used WinFormServicePort to launch the WinForm that is eventually used to control the robot by sending messages to the DSS class and then to the robot drivePort. So, it does not make exe file for the project and also svc file is not formed. Since, this application is not compiled as Class Library instead of winform application.

     

    What could be the problem in this approach. Could you let me know how can we make WinForm in this example to be WCF client along with controller for the robot.

     

    Thanks.

     

    Regards,

    Kaushal Mehta.

     

    Friday, May 2, 2008 12:35 AM
  • First of all and in order to avoid any confusion WCF services are not DSS services. Of course you can talk from a DSS service to a WCF service and vice versa.

     

    A DSS service usually resides in a DLL and as such cannot be run directly. It needs to be run by a hosting application. We ship dsshost.exe for this purpose. However, you can write you own hosting applications [1]

     

    For windows form applications there are two basic approaches:

     

    1) The service contains and manages the form (through the winformsserviceport)

    2) A win forms application talks to the service (also see [1])

     

    Andreas

     

    [1] http://msdn.microsoft.com/en-us/library/bb643214.aspx

     

    Friday, May 2, 2008 9:02 PM