You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+10-5Lines changed: 10 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -117,6 +117,11 @@ To integrate PusherSwift into your Xcode project using Carthage, specify it in y
117
117
github "pusher/pusher-websocket-swift"
118
118
```
119
119
120
+
Carthage will produce a number of frameworks. Which of those you need to include in you project depends on which features you are using:
121
+
122
+
- If you **are not** using the end-to-end encryption features, you need to include the following framework binaries from the `Carthage/Build` directory: `PusherSwift`, `Starscream` and `Reachability`
123
+
- If you **are** using the end-to-end encryption features, you need to include the following framework binaries from the `Carthage/Build` directory: `PusherSwiftWithEncryption`, `Sodium`, `Starscream` and `Reachability`
124
+
120
125
### Swift Package Manager
121
126
122
127
> Please note that if you are looking to use encrypted channels, this is not currently possible with Swift Package Manager.
@@ -622,15 +627,17 @@ Like with private channels, you must provide an authentication endpoint. That en
622
627
623
628
The shared secret used to decrypt events is loaded from the same auth endpoint request that is used to authorize your subscription. There is also a mechanism for reloading the shared secret if your encryption master key changes. If an event is encountered that cannot be decrypted, a request is made to your auth endpoint to attempt to load the new shared secret. If that request fails or if the returned secret still cannot decrypt the event then that event will be skipped, the `failedToDecryptEvent` connection delegate function will be called, and the next received event will be processed.
624
629
625
-
Because of the requirement to reload the shared secret on demand, you can only use the following [auth method](#configuration): `endpoint`, `authRequestBuilder`, `authorizer`. It is not possible to pass an instance of `PusherAuth` to the `subscribe` function if you are subscribing to an encrypted channel.
630
+
Because of the requirement to reload the shared secret on demand, you can only use the following [auth methods](#configuration): `endpoint`, `authRequestBuilder`, `authorizer`. It is not possible to pass an instance of `PusherAuth` to the `subscribe` function if you are subscribing to an encrypted channel.
626
631
627
632
### Installation
628
633
634
+
In your Swift files, you will need to import `PusherSwiftWithEncryption` rather than `PusherSwift`. In Objective-C files, you will need to import `PusherSwiftWithEncryption/PusherSwiftWithEncryption-Swift.h` rather than `PusherSwift/PusherSwift-Swift.h`.
635
+
629
636
#### CocoaPods
630
-
Update your podfile to include `PusherSwiftWithEncryption` instead of `PusherSwift`.
637
+
Update your Podfile to include `PusherSwiftWithEncryption` instead of `PusherSwift`.
631
638
632
639
#### Carthage
633
-
You do not need to change your Cartfile. However, you will need to import the `PusherSwiftWithEncryption` framework into your project, instead of `PusherSwift`. You will also need to import the `Sodium` framework into your project.
640
+
You do not need to change your Cartfile. However, you will need to import the `PusherSwiftWithEncryption` framework into your project, instead of `PusherSwift`. You will also need to import the `Sodium` framework into your project (in addition to `Starscream` and `Reachability`).
634
641
635
642
#### Swift Package Manager
636
643
PusherSwiftWithEncryption is not yet compatible with the Swift Package Manager.
@@ -653,8 +660,6 @@ let privateEncryptedChannel = pusher.subscribe(channelName: "private-encrypted-m
0 commit comments