Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3d6516922f | |||
| 1b98af2b11 | |||
| 750604a801 | |||
| 47f5d040a2 | |||
| 3c34557617 |
@@ -0,0 +1 @@
|
||||
DEVELOPMENT-SNAPSHOT-2016-05-09-a
|
||||
+2
-2
@@ -27,9 +27,9 @@ let package = Package(
|
||||
name: "SlackKit",
|
||||
targets: [],
|
||||
dependencies: [
|
||||
.Package(url: "https://github.com/open-swift/C7.git", majorVersion: 0, minor: 7),
|
||||
.Package(url: "https://github.com/Zewo/WebSocketClient", majorVersion: 0, minor: 2),
|
||||
.Package(url: "https://github.com/open-swift/C7.git", majorVersion: 0, minor: 8),
|
||||
.Package(url: "https://github.com/czechboy0/Jay.git", majorVersion: 0, minor: 6),
|
||||
.Package(url: "https://github.com/Zewo/WebSocket", majorVersion: 0, minor: 6),
|
||||
],
|
||||
exclude: ["Examples"]
|
||||
)
|
||||
|
||||
@@ -23,7 +23,8 @@
|
||||
|
||||
import C7
|
||||
import Jay
|
||||
import WebSocket
|
||||
import Venice
|
||||
import WebSocketClient
|
||||
|
||||
public class SlackClient {
|
||||
|
||||
@@ -63,8 +64,8 @@ public class SlackClient {
|
||||
return SlackWebAPI(slackClient: self)
|
||||
}
|
||||
|
||||
internal var webSocket: WebSocket.Client?
|
||||
internal var socket: Socket?
|
||||
internal var webSocket: Client?
|
||||
internal var socket: WebSocket?
|
||||
internal let api = NetworkInterface()
|
||||
|
||||
internal var ping: Double?
|
||||
@@ -88,7 +89,7 @@ public class SlackClient {
|
||||
if let socketURL = response["url"] as? String {
|
||||
do {
|
||||
let uri = try URI(socketURL)
|
||||
self.webSocket = try WebSocket.Client(uri: uri, onConnect: {(socket) in
|
||||
self.webSocket = try Client(uri: uri, didConnect: {(socket) in
|
||||
self.setupSocket(socket: socket)
|
||||
if let pingInterval = self.pingInterval {
|
||||
self.pingRTMServerAtInterval(interval: pingInterval)
|
||||
@@ -248,7 +249,7 @@ public class SlackClient {
|
||||
|
||||
|
||||
// MARK: - WebSocket
|
||||
private func setupSocket(socket: Socket) {
|
||||
private func setupSocket(socket: WebSocket) {
|
||||
socket.onText {(message) in
|
||||
self.websocketDidReceive(message: message)
|
||||
}
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
import C7
|
||||
import HTTPSClient
|
||||
import Jay
|
||||
import WebSocketClient
|
||||
|
||||
internal struct NetworkInterface {
|
||||
|
||||
@@ -79,7 +80,6 @@ internal struct NetworkInterface {
|
||||
}
|
||||
|
||||
let boundaryConstant = randomBoundary()
|
||||
let contentType:Header = ["multipart/form-data; boundary=" + boundaryConstant]
|
||||
let boundaryStart = "--\(boundaryConstant)\r\n"
|
||||
let boundaryEnd = "--\(boundaryConstant)--\r\n"
|
||||
let contentDispositionString = "Content-Disposition: form-data; name=\"file\"; filename=\"\(parameters!["filename"])\"\r\n"
|
||||
@@ -93,7 +93,7 @@ internal struct NetworkInterface {
|
||||
requestBodyData.append(contentsOf: "\r\n".data.bytes)
|
||||
requestBodyData.append(contentsOf: boundaryEnd.data.bytes)
|
||||
|
||||
let header: Headers = ["Content-Type":contentType]
|
||||
let header: Headers = ["Content-Type":"multipart/form-data; boundary=" + boundaryConstant]
|
||||
|
||||
do {
|
||||
var response: Response?
|
||||
@@ -125,7 +125,11 @@ internal struct NetworkInterface {
|
||||
}
|
||||
|
||||
private func randomBoundary() -> String {
|
||||
return "slackkit.boundary.\(arc4random())\(arc4random())"
|
||||
#if os(Linux)
|
||||
return "slackkit.boundary.\(Int(random()))\(Int(random()))"
|
||||
#else
|
||||
return "slackkit.boundary.\(arc4random())\(arc4random())"
|
||||
#endif
|
||||
}
|
||||
|
||||
private func requestStringFromParameters(parameters: [String: Any]) -> String {
|
||||
|
||||
Reference in New Issue
Block a user