• Raguraman Selvaraj 5
  • NEWBIE
  • 5 Points
  • Member since 2020

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 1
    Questions
  • 3
    Replies
Hi Everyone,

I am getting socket error, while trying to subscribe platform event through Visual force page. Kindly assist me on this.

<apex:page > <!-- Begin Default Content REMOVE THIS --> <h1>Congratulations</h1> This is your new Page <!-- End Default Content REMOVE THIS --> <div id="content"> </div> <apex:includeScript value="{!$Resource.cometd}"/> <apex:includeScript value="{!$Resource.jQuery}"/> <apex:includeScript value="{!$Resource.json2}"/> <apex:includeScript value="{!$Resource.jQuery_cometd}"/> <script type="text/javascript"> (function($){ $(document).ready(function() { $.cometd.configure({ url: window.location.protocol+'//'+window.location.hostname+'/cometd/49.0', requestHeaders: { Authorization: 'OAuth {!$Api.Session_ID}'} }); console.log('before handshake'); $.cometd.handshake(); console.log('before addListener'); $.cometd.addListener('/meta/handshake', function(message) { console.log('before subscribe'); $.cometd.subscribe('/event/Event_On_Leads__e', function(message) { console.log('testing subscribed'); var div = document.getElementById('content'); div.innerHTML = div.innerHTML + '<p>Notification </p><br/>' + 'Streaming Message ' + JSON.stringify(message) + '</p><br>'; }); }); }); })(jQuery) </script> </apex:page>
Hi Everyone,

I am getting socket error, while trying to subscribe platform event through Visual force page. Kindly assist me on this.

<apex:page > <!-- Begin Default Content REMOVE THIS --> <h1>Congratulations</h1> This is your new Page <!-- End Default Content REMOVE THIS --> <div id="content"> </div> <apex:includeScript value="{!$Resource.cometd}"/> <apex:includeScript value="{!$Resource.jQuery}"/> <apex:includeScript value="{!$Resource.json2}"/> <apex:includeScript value="{!$Resource.jQuery_cometd}"/> <script type="text/javascript"> (function($){ $(document).ready(function() { $.cometd.configure({ url: window.location.protocol+'//'+window.location.hostname+'/cometd/49.0', requestHeaders: { Authorization: 'OAuth {!$Api.Session_ID}'} }); console.log('before handshake'); $.cometd.handshake(); console.log('before addListener'); $.cometd.addListener('/meta/handshake', function(message) { console.log('before subscribe'); $.cometd.subscribe('/event/Event_On_Leads__e', function(message) { console.log('testing subscribed'); var div = document.getElementById('content'); div.innerHTML = div.innerHTML + '<p>Notification </p><br/>' + 'Streaming Message ' + JSON.stringify(message) + '</p><br>'; }); }); }); })(jQuery) </script> </apex:page>

I've tried to do the sample 'Receiving Notifications in a Visualforce Page' of the page http://wiki.developerforce.com/index.php/Getting_Started_with_the_Force.com_Streaming_API

 

I'm doing everything as it comes in the document but don't get it to work. I'm on the na12 instance. When I try it on Chrome It gives me these errors

 

POST https://c.na12.visual.force.com/cometd/handshake 401 (Request requires authentication)

 

I also tried the equivalent sample of the document http://www.salesforce.com/us/developer/docs/api_streaming/api_streaming.pdf (page 11) but It gives me these errors

 

Uncaught TypeError: Object [object Object] has no method 'reset'
org.cometd.LongPollingTransport.resetcometd_js:2102
resetcometd_js:120
_handshakecometd_js:730
handshakecometd_js:1421
initcometd_js:1409
(anonymous function)StreamingPagePDF:89
d.extend._Deferred.f.resolveWithjquery.min.js:16
d.extend.readyjquery.min.js:16
c.addEventListener.y

 

I don't know what to do

 

Thank you in advance

 

David