Revision 898555ca3647175561531633f7fbcc66c6d754ad (click the page title to view the current version)

Behavioral/WebSocketProtocol

Simplified Web Socket Protocol

enum Request = open | close
abstract WebSocket
xor request -> Request ?
success
failure
xor states
initial ready
[ initially no request ]
opened
[ initially no request ]
closed --> closed
[ no request ]
failed --> failed
[ no request ]

Example scenarios

  1. Web socket successfully opened and closed
webSocketOpenedClosed : WebSocket
WebSocket1
states
ready
WebSocket2
request -> open
success
states
ready
WebSocket3
states
opened
WebSocket4
request -> close
success
states
opened
WebSocket5
states
closed
WebSocket6
states
closed
  1. Web socket successfully opened but failed to be closed
webSocketOpenedFailed : WebSocket
WebSocket7
states
ready
WebSocket8
request -> open
success
states
ready
WebSocket9
states
opened
WebSocket10
request -> close
failure
states
opened
WebSocket11
states
failed
WebSocket12
states
failed
  1. Web socket failed to be opened
webSocketFailed : WebSocket
[ ready --> request = open && request.failure --> failed --> failed ]
WebSocket13
states
ready
WebSocket14
request -> open
failure
states
ready
WebSocket15
states
failed
WebSocket16
states
failed