cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2014
Views
0
Helpful
7
Replies

Sandbox XSI Event Channel created - but heartbeat fail with 404 Not Found response

simonbrinkmann
Level 1
Level 1

 

I've created an eventchannel and XSP server responds with a channelId. But when I try to send a heartheartbeat I get a 404 Not Found in return. 

I've tried testing different users, testing with admin user (unauthorized), changing ChannelSetId and used the "default" ChannelSetA per example in the XSI documentation. 

 

EventChannel Request

POST /com.broadsoft.async/com.broadsoft.xsi-events/v2.0/channel HTTP/1.1

Request Body:
<?xml version="1.0" encoding="utf-16"?> <Channel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schema.broadsoft.com/xsi"> <channelSetId>Set-01b6a5e0-4483-45c9-9f4b-7e0afe16a068</channelSetId> <priority>1</priority> <weight>50</weight> <expires>3600</expires> </Channel>

EventChannel Response

Status 200 OK

Response body:
<?xml version="1.0" encoding="UTF-8"?>
<Channel xmlns="http://schema.broadsoft.com/xsi">
<channelId>970411ad-1945-41fc-864f-c9de08c1890d</channelId>
<expires>3600</expires>
</Channel>

 

HeartBeat Request

PUT /com.broadsoft.xsi-events/v2.0/channel/970411ad-1945-41fc-864f-c9de08c1890d/heartbeat HTTP/1.1
Host: broadsoftsandboxxsp.cisco.com
Content-Type: application/xml; charset=UTF-8
Authorization: Basic MyBasicAuth=

NO Request Body

HeartBeat Response 

Status 404 Not Found

Response Body:
<?xml version="1.0" encoding="UTF-8"?> <ErrorInfo xmlns="http://schema.broadsoft.com/xsi"> <summary>Channel 970411ad-1945-41fc-864f-c9de08c1890d does not exist on this system</summary> <summaryEnglish>Channel 970411ad-1945-41fc-864f-c9de08c1890d does not exist on this system</summaryEnglish> <errorCode>1201</errorCode> </ErrorInfo>

 

The problem looks very much like @aluxmore issue posted here:

https://community.cisco.com/t5/cloud-calling/sandbox-xsi-events-subscription-not-found/m-p/4010660

 

Any help is appreciated. 

 

 

 

 

1 Accepted Solution

Accepted Solutions

@skumar1 : I also managed to find the problem on friday. It turned out to be a network issue on my workstation. Moving the code to another machine fixed the issue. 

 

Hopefully this led to an improvement of the server so your effort wasn't in vain.

 

Thanks.

 

View solution in original post

7 Replies 7

skumar1
Level 3
Level 3
Investigating the reported issue, will keep you posted.

I still cannot get the eventchannel to work. My http conversation with XSP is this:

POST /com.broadsoft.async/com.broadsoft.xsi-events/v2.0/channel HTTP/1.1
Authorization: Basic auth==
Content-Type: application/xml; charset=utf-8
Host: broadsoftsandboxxsp.cisco.com
Content-Length: 329
Connection: Keep-Alive

<?xml version="1.0" encoding="utf-16"?>
<Channel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schema.broadsoft.com/xsi">
  <channelSetId>MyChannelSet1</channelSetId>
  <priority>1</priority>
  <weight>50</weight>
  <expires>3600</expires>
</Channel>
HTTP/1.1 200 OK X-BROADSOFT-CORRELATION-ID: b81cffcc-2589-467d-825e-902aa63e32fc X-Frame-Options: SAMEORIGIN X-XSS-Protection: 1; mode=block Set-Cookie: JSESSIONID=secret; Path=/com.broadsoft.xsi-events; HttpOnly Expires: Thu, 01 Jan 1970 00:00:00 GMT Cache-Control: no-cache, no-store Pragma: no-cache Content-Language: en-US Content-Type: application/xml;charset=UTF-8 Transfer-Encoding: chunked Date: Thu, 23 Jan 2020 11:31:28 GMT Server: HTTP Server b4 <?xml version="1.0" encoding="UTF-8"?> <Channel xmlns="http://schema.broadsoft.com/xsi"><channelId>f2ab493d-986a-440d-8992-2db2166fba2c</channelId><expires>3600</expires></Channel> 0

 

So I can get the server to respond correctly with a chuncked connection and I just keep reading the network stream. But after 5 seconds (consistent) the server sends TCP FIN, ACK and the connection is closed.

 

Screenshot of tcp conversion from wireshark:XSP closing connection.PNG

 

Should I respond to the received channelId in some way that's not in the documentation?
I've tried to send a subscription request just after receiving the channelId before the connection is closed. But I did not receive the initial event.

I've also tried to send heartbeat (like I started this discussion) but the channel id is "Not Found".

 

It takes more than 30 seconds for the server to respond with the channelId. Is that normal?

 

Hope someone has the answer for this problem as I've tried with four different implementation of clients now and I get the same result for all implementations.  

 

@skumar1 : Do you have any ideas about what's going wrong? Could you have a look at my latest post with wireshark screenshot. Why is the connection being closed. Am I doing something wrong in the initial reqest-response flow. It looks to me like i'm hitting the 5 second default keep-alive mentioned in BW-XspEMSConfigurationManagementGuide-R21.sp1 page. 533. But the comet connection is probably set to 30 seconds time-out, so this is just a guess.
Are we able to see the logs at the server?

 

Thanks!

Reported issue is under investigation by internal team, will keep you posted.

we have identified the root cause of the issue and the team is working on the fix.

@skumar1 : I also managed to find the problem on friday. It turned out to be a network issue on my workstation. Moving the code to another machine fixed the issue. 

 

Hopefully this led to an improvement of the server so your effort wasn't in vain.

 

Thanks.

 

biffyjose
Level 1
Level 1

Hi i'am facing an issue regarding heartbeat in comet channel. According to document heartbeat must be send at an interval of eventtimeout/2 seconds,and i came to know that 30 sec is the default value. How do we get the value of eventtimeout for XSI comet channel, is there an API to get this value. can you please help me out. Thanks in advance.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: