Skip to Content
avatar image
Former Member

Communication Channel Status

Hi,

Can anyone let me know if there is any service in PI through which we can get the status of the communication channels (start/stop/error....) just like AdapterMessageMonitoringVi.

I checked below ones. But could't get the status of the channels.

Regards,

Aditya Vempati

channel_status.jpg (58.9 kB)
Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

4 Answers

  • Best Answer
    Jul 07, 2015 at 02:23 PM

    Hello Aditya,

    The standard servlet ChannelAdminServlet of Adapter Framework should fulfill your requirements. Using it, for communication channels with enabled external control, you can start and stop the channel, as well as query its status.

    You may find several good blogs and documents in SCN which are describing functionality and usage of this servlet. For example, William Li's Control Communication Channels Externally without using RWB. You my also have a look at SAP Help regarding this servlet: Controlling a Communication Channel Externally - Advanced Adapter Engine - SAP Library.

    Another way around is to use the web service IChannelAdmin provided by PI/PO system (operation getChannelAutomationStatus of this service will return you status of the given communication channel). Using this web service, you can query multiple communication channels in a single web service request. Please note that usage of this web service doesn't require the external control mode being enabled in the communication channel.

    You may read about it in Santhosh Vellingiri's blog SAP PI : Start/Stop Communication Channel using Webservice.

    Best regards,

    Vadim

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Sailaja,


      ChannelAdminServlet is an HTTP servlet, not a SOAP service, so WSDL is not applicable for it. I would suggest calling ChannelAdminServlet without parameters - it will return an error message and describe all possible parameters and expected values for them, or referring to SAP Help documentation on this servlet, it also contains useful information regarding how this servlet can be called. Unfortunately, it is not possible to acquire the servlet description that you can import to the client application in order to auto-generate call templates/samples, like it is for SOAP service.


      Regards,

      Vadim

  • Jul 07, 2015 at 02:34 PM

    Have you tried Integradion Directory API?

    You can find service for Com. channel in your screenshot at first line - CommunicationChannelIn.

    There is operation Read, which can you provide CC status.

    Add comment
    10|10000 characters needed characters exceeded

    • Hello Vladimir,

      Integration Directory API doesn't return runtime state of the communication channel - only its configuration taken from Integration Directory. Thus, if we need to read configuration properties of the channel, Integration Directory API is the right way to go, but if we need to administer the channel (start/stop it) or retrieve channel status, Integration Directory will not provide this kind of data.

      Regards,

      Vadim

  • Jul 07, 2015 at 02:43 PM

    Hi Aditya,

    You can get this information with:

    You have to choose the Read operation and you have to set all the fields that define the channel.

    Later you will have a large XML that you have to find:

    <AdapterSpecificAttribute> <Name>repository.additionalParameter</Name> <Namespace/> <Value>0</Value> </AdapterSpecificAttribute> <AdapterSpecificAttribute> <Name>adapterStatus</Name> <Namespace/> <Value>active</Value> </AdapterSpecificAttribute>

    Regards,

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi Inaki,

      As above said by Vadim,we can't control the channels using Directory API.

      I just want to update that now  under IChannelAdmin service we have below 4 operations (Earlier we have 2 operations)

      @Adi: Its bit complex ,but I believe you can control the channels by writing a piece of java code by consuming this service ,but make sure the below before starting coding part.

      1)When start/stop the channels using this service ,does it gives apt acknowledgement back in case of exceptions -->If it doesn't no point in wasting time on this.

      Regards

      Venkat

  • Jul 08, 2015 at 07:41 AM

    Hi all,

    May be i'm a bit confused with Aditya requirements but with CommunicationChannelIn i have seen the status of my communication channel, in AdapterSpecificAttribute, although i had more that 50 tags, searching by adapterStatus i can found it. Previous to this i had to find all the mandatory parameters to the request, the service only works with one and only one channel at the same request.

    Regards.

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Vladim,

      Thank you for you clarification. I was only thinking in the adapter status on the Integration directory.

      About sending to multiple channels, i wanted to say that as the query option lets you to get some information about all the channels without parameters, the read option needs to determine the channel with all its mandatory definition fields.

      Regards.