You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

103 line
2.3 KiB

  1. //
  2. // Models.swift
  3. // pusher_client
  4. //
  5. // Created by Romario Chinloy on 10/27/20.
  6. //
  7. struct PusherArgs: Codable {
  8. var appKey: String
  9. var pusherOptions: PusherOptions
  10. var initArgs: InitArgs
  11. }
  12. struct PusherOptions: Codable {
  13. var auth: PusherAuth?
  14. var cluster: String?
  15. var host: String
  16. var encrypted: Bool
  17. var activityTimeout: Int
  18. var pongTimeout: Int
  19. var wsPort: Int
  20. var wssPort: Int
  21. var maxReconnectionAttempts: Int
  22. var maxReconnectGapInSeconds: Int
  23. }
  24. struct PusherAuth: Codable {
  25. var endpoint: String
  26. var headers: [String: String]
  27. }
  28. struct InitArgs: Codable {
  29. var enableLogging: Bool
  30. }
  31. struct AuthRequest: Codable {
  32. var socket_id: String
  33. var channel_name: String
  34. var valueUrlEncoded: String?
  35. init(socket_id: String, channel_name: String) {
  36. self.socket_id = socket_id
  37. self.channel_name = channel_name
  38. self.valueUrlEncoded = "socket_id=\(socket_id)&channel_name=\(channel_name)"
  39. }
  40. private enum CodingKeys: String, CodingKey {
  41. case socket_id, channel_name
  42. }
  43. }
  44. struct EventStreamResult: Codable {
  45. var connectionStateChange: ConnectionStateChange?
  46. var connectionError: ConnectionError?
  47. var pusherEvent: Event?
  48. init(connectionStateChange: ConnectionStateChange) {
  49. self.connectionStateChange = connectionStateChange
  50. }
  51. init(connectionError: ConnectionError) {
  52. self.connectionError = connectionError
  53. }
  54. init(pusherEvent: Event) {
  55. self.pusherEvent = pusherEvent
  56. }
  57. }
  58. struct ConnectionStateChange: Codable {
  59. var currentState: String
  60. var previousState: String
  61. init(currentState: String, previousState: String) {
  62. self.currentState = currentState
  63. self.previousState = previousState
  64. }
  65. }
  66. struct ConnectionError: Codable {
  67. var message: String
  68. var code: String
  69. var exception: String
  70. init(message: String, code: String, exception: String) {
  71. self.message = message
  72. self.code = code
  73. self.exception = exception
  74. }
  75. }
  76. struct Event: Codable {
  77. var eventName: String
  78. var channelName: String?
  79. var userId: String?;
  80. var data: String?;
  81. }
  82. struct ClientEvent: Codable {
  83. var eventName: String
  84. var channelName: String
  85. var data: String?;
  86. }