{hidden}
DO NOT EDIT THE CONTENT OF THIS PAGE DIRECTLY, UNLESS YOU KNOW WHAT YOU'RE DOING.
		THE STRUCTURE OF THE CONTENT IS VITAL IN BEING ABLE TO EXTRACT CHANGES FROM THE PAGE AND MERGE THEM BACK INTO SERVOY SOURCE{hidden}
{sub-section:description|text=}{sub-section}\\ 

{table:id=|class=servoy sReturnTypes}{tr:style=height: 30px;}{th}Return Types{th}{tr}{tr}{td}{span:class=sWordList}[JSPacket]{span}{td}{tr}{table}\\ 

{table:id=|class=servoy sSummary}{colgroup}{column:padding=0px|width=80px}{column}{column}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=2}Method Summary{th}{tr}{tbody}{tr}{td}[JSPacket]{td}{td}[#createNewPacket]\()
Create a new empty packet.{td}{tr}{tbody}{tbody}{tr}{td}[JSPacket]{td}{td}[#getReceivedPacket]\()
Get a packet from receive buffer, read buffer until empty (null is returned).{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#sendPacket]\(destIpOrHostname, packet)
Send a packet.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#sendPacket]\(destIpOrHostname, packet, port)
Send a packet on another port.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#startSocket]\(port_number, method_to_call_when_packet_received_and_buffer_is_empty)
Start a UDP socket for a port.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#stopSocket]\()
Stop the UDP socket for a port.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#testPacket]\(packet)
Put a test packet in the receive buffer to test your method call and getReceivedPacket.{td}{tr}{tbody}{table}\\ 

{table:id=function|class=servoy sDetail}{colgroup}{column:padding=0px|width=100%}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=1}Method Details{th}{tr}{tbody:id=createNewPacket|class=node}{tr:id=name}{td}h6.createNewPacket{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[JSPacket]{span}{span:id=iets|style=float: left; font-weight: bold;}createNewPacket{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{tr:id=des}{td}{sub-section:createNewPacket_des|text=|trigger=button}{sub-section}{sub-section:createNewPacket_des|trigger=none|class=sIndent}Create a new empty packet.{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:createNewPacket_snc|text=|trigger=button}{sub-section}{sub-section:createNewPacket_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:createNewPacket_prs|text=|trigger=button}{sub-section}{sub-section:createNewPacket_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:createNewPacket_ret|text=|trigger=button}{sub-section}{sub-section:createNewPacket_ret|trigger=none|class=sIndent}[JSPacket]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:createNewPacket_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:createNewPacket_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:createNewPacket_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:createNewPacket_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:createNewPacket_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:createNewPacket_sam|trigger=none}{code:language=javascript}
var packet = plugins.udp.createNewPacket()
packet.writeUTF('hello world!')//writes UTF
packet.writeInt(12348293)//writes 4 bytes
packet.writeShort(14823)//writes 2 bytes
packet.writeByte(123)//writes 1 byte
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getReceivedPacket|class=node}{tr:id=name}{td}h6.getReceivedPacket{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[JSPacket]{span}{span:id=iets|style=float: left; font-weight: bold;}getReceivedPacket{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{tr:id=des}{td}{sub-section:getReceivedPacket_des|text=|trigger=button}{sub-section}{sub-section:getReceivedPacket_des|trigger=none|class=sIndent}Get a packet from receive buffer, read buffer until empty (null is returned).{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:getReceivedPacket_snc|text=|trigger=button}{sub-section}{sub-section:getReceivedPacket_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:getReceivedPacket_prs|text=|trigger=button}{sub-section}{sub-section:getReceivedPacket_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:getReceivedPacket_ret|text=|trigger=button}{sub-section}{sub-section:getReceivedPacket_ret|trigger=none|class=sIndent}[JSPacket]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:getReceivedPacket_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:getReceivedPacket_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:getReceivedPacket_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:getReceivedPacket_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:getReceivedPacket_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:getReceivedPacket_sam|trigger=none}{code:language=javascript}
var packet = null
while( ( packet = plugins.udp.getReceivedPacket() ) != null)
{
	var text = packet.readUTF()
	var count = packet.readInt()
}
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=sendPacket-String_JSPacket|class=node}{tr:id=name}{td}h6.sendPacket{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}sendPacket{span}{span:id=iets|style=float: left;}\(destIpOrHostname, packet){span}{td}{tr}{tr:id=des}{td}{sub-section:sendPacket-String_JSPacket_des|text=|trigger=button}{sub-section}{sub-section:sendPacket-String_JSPacket_des|trigger=none|class=sIndent}Send a packet.{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:sendPacket-String_JSPacket_snc|text=|trigger=button}{sub-section}{sub-section:sendPacket-String_JSPacket_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:sendPacket-String_JSPacket_prs|text=|trigger=button}{sub-section}{sub-section:sendPacket-String_JSPacket_prs|trigger=none|class=sIndent}\{[String]} destIpOrHostname -- the ip of the destination or the hostname
\{[JSPacket]} packet -- the JSPacket to send
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:sendPacket-String_JSPacket_ret|text=|trigger=button}{sub-section}{sub-section:sendPacket-String_JSPacket_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:sendPacket-String_JSPacket_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:sendPacket-String_JSPacket_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:sendPacket-String_JSPacket_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:sendPacket-String_JSPacket_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:sendPacket-String_JSPacket_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:sendPacket-String_JSPacket_sam|trigger=none}{code:language=javascript}
var packet = plugins.udp.createNewPacket()
packet.writeUTF('hello world!')
plugins.udp.sendPacket('10.0.0.1',packet)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=sendPacket-String_JSPacket_Number|class=node}{tr:id=name}{td}h6.sendPacket{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}sendPacket{span}{span:id=iets|style=float: left;}\(destIpOrHostname, packet, port){span}{td}{tr}{tr:id=des}{td}{sub-section:sendPacket-String_JSPacket_Number_des|text=|trigger=button}{sub-section}{sub-section:sendPacket-String_JSPacket_Number_des|trigger=none|class=sIndent}Send a packet on another port.{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:sendPacket-String_JSPacket_Number_snc|text=|trigger=button}{sub-section}{sub-section:sendPacket-String_JSPacket_Number_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:sendPacket-String_JSPacket_Number_prs|text=|trigger=button}{sub-section}{sub-section:sendPacket-String_JSPacket_Number_prs|trigger=none|class=sIndent}\{[String]} destIpOrHostname -- the ip of the destination or the hostname
\{[JSPacket]} packet -- the JSPacket to send
\{[Number]} port -- the port on which to send the packet
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:sendPacket-String_JSPacket_Number_ret|text=|trigger=button}{sub-section}{sub-section:sendPacket-String_JSPacket_Number_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:sendPacket-String_JSPacket_Number_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:sendPacket-String_JSPacket_Number_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:sendPacket-String_JSPacket_Number_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:sendPacket-String_JSPacket_Number_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:sendPacket-String_JSPacket_Number_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:sendPacket-String_JSPacket_Number_sam|trigger=none}{code:language=javascript}
var packet = plugins.udp.createNewPacket()
packet.writeUTF('hello world!')
plugins.udp.sendPacket('10.0.0.1',packet, 4321)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=startSocket|class=node}{tr:id=name}{td}h6.startSocket{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}startSocket{span}{span:id=iets|style=float: left;}\(port_number, method_to_call_when_packet_received_and_buffer_is_empty){span}{td}{tr}{tr:id=des}{td}{sub-section:startSocket_des|text=|trigger=button}{sub-section}{sub-section:startSocket_des|trigger=none|class=sIndent}Start a UDP socket for a port.{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:startSocket_snc|text=|trigger=button}{sub-section}{sub-section:startSocket_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:startSocket_prs|text=|trigger=button}{sub-section}{sub-section:startSocket_prs|trigger=none|class=sIndent}\{[Number]} port_number
\{[Object]} method_to_call_when_packet_received_and_buffer_is_empty
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:startSocket_ret|text=|trigger=button}{sub-section}{sub-section:startSocket_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:startSocket_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:startSocket_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:startSocket_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:startSocket_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:startSocket_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:startSocket_sam|trigger=none}{code:language=javascript}
plugins.udp.startSocket(1234,my_packet_process_method)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=stopSocket|class=node}{tr:id=name}{td}h6.stopSocket{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}void{span}{span:id=iets|style=float: left; font-weight: bold;}stopSocket{span}{span:id=iets|style=float: left;}\(){span}{td}{tr}{tr:id=des}{td}{sub-section:stopSocket_des|text=|trigger=button}{sub-section}{sub-section:stopSocket_des|trigger=none|class=sIndent}Stop the UDP socket for a port.{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:stopSocket_snc|text=|trigger=button}{sub-section}{sub-section:stopSocket_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=prs}{td}*Parameters*\\{sub-section:stopSocket_prs|text=|trigger=button}{sub-section}{sub-section:stopSocket_prs|trigger=none|class=sIndent}{sub-section}{td}{tr}{builder-show}{tr:id=ret}{td}*Returns*\\{sub-section:stopSocket_ret|text=|trigger=button}{sub-section}{sub-section:stopSocket_ret|trigger=none|class=sIndent}void{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:stopSocket_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:stopSocket_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:stopSocket_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:stopSocket_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:stopSocket_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:stopSocket_sam|trigger=none}{code:language=javascript}
plugins.udp.stopSocket()
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=testPacket|class=node}{tr:id=name}{td}h6.testPacket{td}{tr}{tr:id=sig}{td}{span:style=float: left; margin-right: 5px;}[Boolean]{span}{span:id=iets|style=float: left; font-weight: bold;}testPacket{span}{span:id=iets|style=float: left;}\(packet){span}{td}{tr}{tr:id=des}{td}{sub-section:testPacket_des|text=|trigger=button}{sub-section}{sub-section:testPacket_des|trigger=none|class=sIndent}Put a test packet in the receive buffer to test your method call and getReceivedPacket.{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=snc}{td}*Since*\\{sub-section:testPacket_snc|text=|trigger=button}{sub-section}{sub-section:testPacket_snc|trigger=none|class=sIndent} Replace with version info{sub-section}{td}{tr}{builder-show}{tr:id=prs}{td}*Parameters*\\{sub-section:testPacket_prs|text=|trigger=button}{sub-section}{sub-section:testPacket_prs|trigger=none|class=sIndent}\{[JSPacket]} packet
{sub-section}{td}{tr}{tr:id=ret}{td}*Returns*\\{sub-section:testPacket_ret|text=|trigger=button}{sub-section}{sub-section:testPacket_ret|trigger=none|class=sIndent}[Boolean]{sub-section}{td}{tr}{builder-show:permission=edit}{tr:id=see}{td}*Also see*\\{sub-section:testPacket_see|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:testPacket_see|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{builder-show:permission=edit}{tr:id=link}{td}*External links*\\{sub-section:testPacket_link|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:testPacket_link|trigger=none}{sub-section}{div}{td}{tr}{builder-show}{tr:id=sam}{td}*Sample*\\{sub-section:testPacket_sam|text=|trigger=button}{sub-section}{div:class=sIndent}{sub-section:testPacket_sam|trigger=none}{code:language=javascript}
var packet = plugins.udp.createNewPacket()
packet.writeUTF('hello world!')
plugins.udp.testPacket(packet)
{code}{sub-section}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table}