static void OnRelationshipChangedCallback(NIMUserRelationshipChangeType type, string result, string je, IntPtr ptr) { if (type == NIMUserRelationshipChangeType.SyncMuteAndBlackList) { if (UserRelationshipListSyncHander != null) { UserSpecialRelationshipItem[] items = null; if (!string.IsNullOrEmpty(result)) { items = JsonParser.Deserialize <UserSpecialRelationshipItem[]>(result); } var args = new UserRelationshipSyncArgs(items); UserRelationshipListSyncHander(null, args); } } else { if (UserRelationshipChangedHandler != null) { var obj = JObject.Parse(result); var idToken = obj.SelectToken("accid"); var valueToken = obj.SelectToken(type == NIMUserRelationshipChangeType.AddRemoveBlacklist ? "black" : "mute"); var id = idToken.ToObject <string>(); var value = valueToken.ToObject <bool>(); var args = new UserRelationshipChangedArgs(type, id, value); UserRelationshipChangedHandler(null, args); } } }
public UserRelationshipChangedArgs(NIMUserRelationshipChangeType type, string id, bool value) { ChangedType = type; IsSetted = value; AccountId = id; }