Success Callback for emit method in socket.io

node.js, socket.io

Solution

If you look at the docs, it shows you an example of passing a call back function -2nd last example: http://socket.io/docs/#Sending-and-getting-data-acknowledgements

Ex server:

    socket.on('formData', 
              function(data, fn){
                      // data is your form data from the client side
                      // we are here so we got it successfully so call client callback
                      // incidentally(not needed in this case) send back data value true 
                      fn(true);
              }
             );

client:

      socket.emit('formData', 
                  data, 
                  function(confirmation){
                          // send data
                          // know we got it once the server calls this callback      
                          // note -in this ex we dont need to send back any data 
                          // - could just have called fn() at server side
                          console.log(confirmation);
                  }
                 );

Problem

Im trying to emit a custom message from my client. I need to perform some actions on its success and failure. Now, how can i attach the success callback to emit method? For error callback , i used Exposed events doc and got it working ``` socket.on('error', () -> console.log("Error Occured")) ``` For success, i tried ``` socket.emit('my custom method', {content: json},() -> console.log("Emitted")) ``` This callback is never been triggered irrespective whether its a success or failure. How can i get hold of success handler?

Original source