SocketIOClient-Unreal icon indicating copy to clipboard operation
SocketIOClient-Unreal copied to clipboard

MultiParam Emit

Open tumble1999 opened this issue 5 years ago • 4 comments

To GetNamo,

Is there a way of handling multiple messages. So an equivalent of socket.emit("hmm",12,34), no matter what I try it seems to all go into the first message. I have no control over the server to change how it wants to receive messages.

If there's no way of doing it with this, is there a way to do it with your node js plugin.

Thanks, Tumble

tumble1999 avatar Jun 03 '20 09:06 tumble1999

Same as documented in Emit with Callback, if you are binding directly to a function, making a second parameter as SIOJsonValue will contain all the emitted parameters as an array. E.g. cast that second param As Array and access your parameters that way.

getnamo avatar Jun 03 '20 20:06 getnamo

I'm trying to emit to the server not receive from the server

tumble1999 avatar Jun 03 '20 21:06 tumble1999

Hmm I don't think it's supported in the BP/unreal C++ api atm, at a glance the library does seem to support it. I'll mark this as an enhancement, it will need a new function, maybe something like EmitMultiParam. Do you need this API in bp or is C++ sufficient?

You should be able to achieve the input demuxing in the node.js plugin if you want something that works now. Steps: emit to node.js server via single input combined into e.g. an object or array. Split input into two parts and forward from node.js server to your target endpoint using the regular javascript sio library.

getnamo avatar Jun 03 '20 23:06 getnamo

C++ is ok if that's easier for you, as I'm gradually converting my code from blueprint over to c++ anyway.

Thanks, Tumble

On Thu, 4 Jun 2020, 12:09 am Jan Kaniewski, [email protected] wrote:

Hmm I don't think it's supported in the BP/unreal C++ api atm, at a glance the library does seem to support it. I'll mark this as an enhancement, it will need a new function, maybe something like EmitMultiParam. Do you need this API in bp or is C++ sufficient?

You should be able to achieve the input demuxing in the node.js plugin if you want something that works now. Steps: emit to node.js server via single input combined into e.g. an object or array. Split input into two parts and forward from node.js server to your target endpoint using the regular javascript sio library.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/getnamo/socketio-client-ue4/issues/202#issuecomment-638507201, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADZNCCE7BLS6YF22QDLTYCDRU3J27ANCNFSM4NRPFIYA .

tumble1999 avatar Jun 03 '20 23:06 tumble1999