- RevueSDK
- FriendManager
- addFriend(address:message:)
Instance Method
addFriend(address:message:)
加好友。對方已在好友列表時 throws .alreadyExists
func addFriend(address: String, message: String = "Hi") throwsDiscussion
C 層錯誤碼對照(toxcore tox_friend_add 錯誤碼取負值):
-5:TOX_ERR_FRIEND_ADD_ALREADY_SENT(好友已存在)-3:TOX_ERR_FRIEND_ADD_NULL(message 為空,SDK 已自動補預設值)
⚠️ 升版時必須重新核對(截至 revuekit-c 0.19.1 確認仍為下述狀態): 此處的 -5 是 toxcore enum 透傳取負值,不是 RevueKitError 共用表 (共用表的 -5 是 INIT_FAILED,語意完全不同)。
revuekit-core docs/contract/errors.md 已規劃將 friend_add 併入共用表、 改以 ALREADY_EXISTS(-21) 表示「好友已存在」,但尚未落地: 0.19.1 的 C 實作仍回 -5,revuekit.h 的 enum 也還沒有 ALREADY_EXISTS。
該規劃一旦落地,此處的 == -5 會靜默失效(不編譯錯、不 crash, 只是 .alreadyExists 永不拋出、改拋 .failed(code: -21))。 文件不可信、以 C 原始碼為準:升版時直接查 revuekit-c/src/revuekit.c 的 revuekit_friend_add 實作。