Exemple #1
0
        /// <summary>
        /// Like một post or một page hoặc một đối tượng nào đó có thể like được
        /// </summary>
        /// <param name="objectId">Là id của đối tượng. VD: nếu muốn like 1 post thì objectId chính là postId của post đó</param>
        /// <returns>Nếu like thành công thì trả về true. Ngược lại trả về false.</returns>
        public async Task <LikeCompletedArgs> LikeAsync(string objectId)
        {
            if (!ExtendedPermissions.Contains(Constants.PublishActionsPermission))
            {
                throw new KeyNotFoundException("Bạn phải yêu cầu quyền \"publish_action\" để có thể thực hiện chức năng này.");
            }

            if (!IsLogged)
            {
                await LoginAsync();
            }

            //Kiểm tra lần nữa nếu vẫn chưa login thành công thì trả về bên ngoài là like không thành công
            if (!IsLogged)
            {
                return(new LikeCompletedArgs(false, "Người dùng chưa login. Bạn cần login trước khi có thể like!"));
            }

            bool isSuccess = false;

            var graphApi = String.Format("/v2.2/{0}/{1}", objectId, FacebookCommand.Like);

            try
            {
                var likeObjectResult = await facebookClient.PostTaskAsync(graphApi, new { access_token = "CAACEdEose0cBAPOQjRpbqOGH3Nml22buiTAg1ZCEjSibZAzpAFj6ZCc6fNlwzlevqSHtcEbq97iTgN4cEA2JFhcT6eKL7iFU0ZBfyGkCKrGLwPJZByZBWLQJqD3UrNYhTa0zEEHeBWUTPPcu9G2K6FY6JnbNDKvf3HNQNDHfto6PgDtPbaKdKsbTM2IPSMDgcef67JNeUYG7CZBgnZCwDCw3K9XLNDIsuHEZD" });

                string likeObjectResultData = likeObjectResult.ToString();
                if (!String.IsNullOrEmpty(likeObjectResultData))
                {
                    if (likeObjectResultData.Contains("true"))
                    {
                        isSuccess = true;
                    }
                }
                return(new LikeCompletedArgs(isSuccess, likeObjectResultData));
            }
            catch (Exception ex)
            {
                string message = string.Format("Like error! Message: {0}", ex.Message);
                Debug.WriteLine(message);
                return(new LikeCompletedArgs(false, ex.Message));
            }
        }