SendWebSocketData()
Syntax
SendWebSocketData(#WebSocket, *Buffer [, Offset, Size])Description
Send data on the specified WebSocket.
Parameters
#WebSocket The WebSocket to use. It has to be opened with OpenWebSocket(). *Buffer The buffer to send on the WebSocket. It has to be allocated with AllocateMemory(). Offset (optional) The offset (in bytes) in the buffer. If not specified, the whole buffer is sent. Size (optional) The amount of bytes to be sent on the WebSocket. If not specified, the whole buffer is sent.
Return value
None.
Example: Simple WebSocket send data
Procedure Events()
Select Event()
Case #PB_Event_Gadget
Select EventGadget()
Case 0
*Buffer = AllocateMemory(100)
PokeA(*Buffer, 0, 84)
SendWebSocketData(2, *Buffer)
EndSelect
Case #PB_Event_WebSocket
Select EventType()
Case #PB_EventType_Connected
Debug "WebSocket #" + EventWebSocket() + " connected."
Case #PB_EventType_Closed
Debug "WebSocket #" + EventWebSocket() + " closed."
Case #PB_EventType_Data
Debug "Data received on WebSocket #" + EventWebSocket() + "."
*Buffer = EventData()
Debug "Data size: " + MemorySize(*Buffer) + ". First byte: " + PeekA(*Buffer, 0)
; Don't forget to free the buffer
FreeMemory(*Buffer)
Case #PB_EventType_Error
Debug "Error on WebSocket #" + EventWebSocket() + "."
EndSelect
EndSelect
EndProcedure
BindEvent(#PB_Event_Gadget, @Events())
BindEvent(#PB_Event_WebSocket, @Events())
OpenWindow(0, 100, 100, 220, 50, "WebSocket test")
ButtonGadget(0, 10, 10, 200, 30, "Send data !")
; You can use Fuzzy_Server.pb from @InternetLink "https://github.com/Dadido3/WebSocket_Server" "https://github.com/Dadido3/WebSocket_Server" if you have PureBasic.
If OpenWebSocket(2, "ws://127.0.0.1:8090/")
Debug "Trying to open the WebSocket"
Else
Debug "WebSocket not supported."
EndIf
See Also
OpenWebSocket(), SendWebSocketString()
Supported OS
All