Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

didreceive(event:client:).json 6.8 KiB

1 год назад
1
  1. {"schemaVersion":{"minor":3,"patch":0,"major":0},"abstract":[{"type":"text","text":"Handles WebSocket events."}],"identifier":{"url":"doc:\/\/rpm.com.production.Scanner\/documentation\/Fueling\/WebSocketViewModel\/didReceive(event:client:)","interfaceLanguage":"swift"},"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/rpm.com.production.Scanner\/documentation\/Fueling","doc:\/\/rpm.com.production.Scanner\/documentation\/Fueling\/WebSocketViewModel"]]},"metadata":{"externalID":"s:7Fueling18WebSocketViewModelC10didReceive5event6clienty10Starscream0bC5EventO_AG0bC6Client_ptF","title":"didReceive(event:client:)","fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"kind":"identifier","text":"didReceive"},{"kind":"text","text":"("},{"text":"event","kind":"externalParam"},{"text":": Starscream","kind":"text"},{"text":".","kind":"text"},{"kind":"typeIdentifier","text":"WebSocketEvent","preciseIdentifier":"s:10Starscream14WebSocketEventO"},{"text":", ","kind":"text"},{"kind":"externalParam","text":"client"},{"kind":"text","text":": Starscream"},{"text":".","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:10Starscream15WebSocketClientP","text":"WebSocketClient"},{"kind":"text","text":")"}],"roleHeading":"Instance Method","modules":[{"name":"Fueling"}],"symbolKind":"method","role":"symbol"},"primaryContentSections":[{"declarations":[{"platforms":["iOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"didReceive","kind":"identifier"},{"text":"(","kind":"text"},{"text":"event","kind":"externalParam"},{"kind":"text","text":": Starscream"},{"text":".","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:10Starscream14WebSocketEventO","text":"WebSocketEvent"},{"kind":"text","text":", "},{"kind":"externalParam","text":"client"},{"text":": Starscream","kind":"text"},{"kind":"text","text":"."},{"text":"WebSocketClient","preciseIdentifier":"s:10Starscream15WebSocketClientP","kind":"typeIdentifier"},{"kind":"text","text":")"}],"languages":["swift"]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"name":"event","content":[{"inlineContent":[{"type":"text","text":"The WebSocket event received."}],"type":"paragraph"}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"The WebSocket client that received the event."}]}],"name":"client"}]},{"content":[{"level":2,"text":"Discussion","anchor":"discussion","type":"heading"},{"type":"paragraph","inlineContent":[{"type":"text","text":"This method processes events received from the WebSocket server and updates the application state accordingly."}]},{"code":["func didReceive(event: Starscream.WebSocketEvent, client: Starscream.WebSocketClient) {"," DispatchQueue.main.async {"," switch event {"," case .connected(let headers):"," self.isConnected = true"," print(\"websocket is connected: \\(headers)\")"," case .disconnected(let reason, let code):"," self.socket.connect()"," self.isConnected = false"," print(\"websocket is disconnected: \\(reason) with code: \\(code)\")"," case .text(let string):"," print(\"Received text: \\(string)\")"," let payload = string.split(separator: \";\", maxSplits: 127, omittingEmptySubsequences: false)"," if payload[0] == \"i\" {"," self.handleInformationFrame(payload: payload)"," } else {"," self.setupTankValues(payload: payload)"," }"," self.socket.write(string: \">OK;\\(self.dateInSeconds())\")"," self.acknowledgementTimer?.cancel()"," case .binary(let data):"," print(\"Received data: \\(data.count)\")"," case .ping(_):"," break"," case .pong(_):"," break"," case .viabilityChanged(_):"," break"," case .reconnectSuggested(_):"," break"," case .cancelled:"," self.isConnected = false"," case .error(let error):"," self.isConnected = false"," self.handleError(error)"," case .peerClosed:"," self.isConnected = false"," }"," }","}"],"syntax":"swift","type":"codeListing"}],"kind":"content"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/fueling\/websocketviewmodel\/didreceive(event:client:)"]}],"references":{"doc://rpm.com.production.Scanner/documentation/Fueling/WebSocketViewModel/didReceive(event:client:)":{"identifier":"doc:\/\/rpm.com.production.Scanner\/documentation\/Fueling\/WebSocketViewModel\/didReceive(event:client:)","url":"\/documentation\/fueling\/websocketviewmodel\/didreceive(event:client:)","title":"didReceive(event:client:)","kind":"symbol","fragments":[{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"didReceive"},{"text":"(","kind":"text"},{"text":"event","kind":"externalParam"},{"text":": Starscream","kind":"text"},{"kind":"text","text":"."},{"preciseIdentifier":"s:10Starscream14WebSocketEventO","kind":"typeIdentifier","text":"WebSocketEvent"},{"kind":"text","text":", "},{"kind":"externalParam","text":"client"},{"kind":"text","text":": Starscream"},{"text":".","kind":"text"},{"preciseIdentifier":"s:10Starscream15WebSocketClientP","kind":"typeIdentifier","text":"WebSocketClient"},{"text":")","kind":"text"}],"role":"symbol","abstract":[{"text":"Handles WebSocket events.","type":"text"}],"type":"topic"},"doc://rpm.com.production.Scanner/documentation/Fueling":{"kind":"symbol","url":"\/documentation\/fueling","title":"Fueling","identifier":"doc:\/\/rpm.com.production.Scanner\/documentation\/Fueling","abstract":[{"type":"text","text":"The Scanner app is designed to facilitate secure and efficient fuel management operations, primarily focusing on user authentication, fuel data collection, and network communication. The app includes several key features to ensure seamless and reliable interactions between users and the backend systems, leveraging technologies like WebSockets, Core Data, and biometric authentication."}],"type":"topic","role":"collection"},"doc://rpm.com.production.Scanner/documentation/Fueling/WebSocketViewModel":{"kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"class"},{"text":" ","kind":"text"},{"kind":"identifier","text":"WebSocketViewModel"}],"navigatorTitle":[{"kind":"identifier","text":"WebSocketViewModel"}],"abstract":[{"text":"The ","type":"text"},{"type":"codeVoice","code":"WebSocketViewModel"},{"type":"text","text":" class is responsible for managing WebSocket connections, handling messages, and updating application state based on WebSocket events."}],"url":"\/documentation\/fueling\/websocketviewmodel","type":"topic","identifier":"doc:\/\/rpm.com.production.Scanner\/documentation\/Fueling\/WebSocketViewModel","title":"WebSocketViewModel"}}}