一个用于 Stack Exchange 聊天的 Swift 库
SwiftChatSE 是从 FireAlarm-Swift 的聊天代码中提取出来的库。它可以在 macOS 和 Linux 上运行。
以下是构建一个简单程序的说明,该程序会在 SOBotics 中发布“Hello, world!”。
brew
和 apt-get
提供的 libwebsockets
版本不同,而且都已过时,因此您需要从源代码安装它。请确保您已安装 OpenSSL 和 CMake,然后运行以下命令从 此处 下载并安装 libwebsockets
git clone https://github.com/warmcat/libwebsockets.git
cd libwebsockets
mkdir build
cd build
export OPENSSL_ROOT_DIR=$(brew --prefix openssl)
cmake ..
make
sudo make install
创建一个 Swift Package Manager 项目
mkdir ChatTest
cd ChatTest
swift package init --type executable
修改 Package.swift
import PackageDescription
let package = Package(
name: "ChatTest",
dependencies: [
.Package(url: "git://github.com/SOBotics/SwiftChatSE", majorVersion: 4)
]
)
现在编写代码,在 Sources/main.swift
中
import SwiftChatSE
let email = "<email>"
let password = "<password>"
//Create a Client and log in to Stack Overflow.
let client = Client(host: .StackOverflow)
try! client.login(email: email, password: password)
//Join a chat room.
let room = ChatRoom(client: client, roomID: 111347) //SOBotics
try! room.join()
//Post a message.
room.postMessage("Hello, world!")
room.leave()
您需要运行以下命令来构建
swift build -Xswiftc -lwebsockets -Xswiftc -I/usr/local/opt/openssl/include -Xswiftc -I/usr/local/include -Xlinker -lwebsockets -Xlinker -L/usr/local/lib
运行 swift build
命令后,可执行文件将放置在目录 .build
中。 如果你想使用 Xcode 进行开发,只需复制 swiftchatse.xcconfig
到你的项目目录并运行
swift package generate-xcodeproj --xcconfig-overrides swiftchatse.xcconfig
以生成一个 Xcode 项目。 如果您添加文件或更改包设置,则必须重新创建该项目。