public static string RegisterSite() { DiscuzCloudConfigInfo config = DiscuzCloudConfigInfo.Current; DiscuzCloudMethodParameter discuzCloudMethodParameter = new DiscuzCloudMethodParameter(); discuzCloudMethodParameter.Add("sName", GeneralConfigInfo.Current.Forumtitle); discuzCloudMethodParameter.Add("sSiteKey", config.Sitekey); discuzCloudMethodParameter.Add("sCharset", CHARSET); discuzCloudMethodParameter.Add("sTimeZone", "8"); discuzCloudMethodParameter.Add("sLanguage", "zh_CN"); discuzCloudMethodParameter.Add("sProductType", DiscuzCloud.productType); discuzCloudMethodParameter.Add("sProductVersion", DiscuzCloud.productVersion); discuzCloudMethodParameter.Add("sTimestamp", Utils.ConvertToUnixTimestamp(DateTime.Now).ToString()); discuzCloudMethodParameter.Add("sApiVersion", "0.4"); discuzCloudMethodParameter.Add("sSiteUid", BaseConfigs.GetFounderUid.ToString()); discuzCloudMethodParameter.Add("sProductRelease", PRODUCT_RELEASE); discuzCloudMethodParameter.Add("sUrl", Utils.GetRootUrl(BaseConfigs.GetForumPath)); discuzCloudMethodParameter.Add("sUCenterUrl", Utils.GetRootUrl(BaseConfigs.GetForumPath)); BaseCloudResponse <RegisterCloud> cloudResponse = DiscuzCloud.GetCloudResponse <RegisterCloud>("site.register", discuzCloudMethodParameter); if (cloudResponse.ErrCode == 0) { config.Cloudsiteid = cloudResponse.Result.CloudSiteId; config.Cloudsitekey = cloudResponse.Result.CloudSiteKey; //DiscuzCloudConfigs.SaveConfig(config); //DiscuzCloudConfigs.ResetConfig(); config.Save(); DiscuzCloudConfigInfo.Current = null; } return(cloudResponse.ErrMessage); }
//public static string ResumeSite() //{ // DiscuzCloudMethodParameter mParams = new DiscuzCloudMethodParameter(); // mParams.Add("sUrl", Utils.GetRootUrl(BaseConfigs.GetForumPath)); // mParams.Add("sCharset", CHARSET); // mParams.Add("sProductType", productType); // mParams.Add("sProductVersion", productVersion); // BaseCloudResponse<RegisterCloud> resumeCloudResult = GetCloudResponse<RegisterCloud>("site.resume", mParams); // if (resumeCloudResult.ErrCode == 0 && // (resumeCloudResult.Result.CloudSiteId != config.Cloudsiteid || resumeCloudResult.Result.CloudSiteKey != config.Cloudsitekey)) // { // config.Cloudsiteid = resumeCloudResult.Result.CloudSiteId; // config.Cloudsitekey = resumeCloudResult.Result.CloudSiteKey; // GeneralConfigs.SaveConfig(config); // GeneralConfigs.ResetConfig(); // } // return resumeCloudResult.ErrMessage; //} /// <summary> /// 同步站点信息,包括站点名称和站点地址 /// </summary> /// <returns></returns> public static string SyncSite() { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); DiscuzCloudMethodParameter mParams = new DiscuzCloudMethodParameter(); mParams.Add("sId", config.Cloudsiteid); mParams.Add("sName", GeneralConfigs.GetConfig().Forumtitle); mParams.Add("sSiteKey", config.Sitekey); mParams.Add("sCharset", "utf-8"); mParams.Add("sTimeZone", "8"); mParams.Add("sLanguage", "zh_CN"); mParams.Add("sProductType", productType); mParams.Add("sProductVersion", productVersion); mParams.Add("sApiVersion", "0.4"); mParams.Add("sSiteUid", BaseConfigs.GetFounderUid > 0 ? BaseConfigs.GetFounderUid.ToString() : "1"); mParams.Add("sProductRelease", PRODUCT_RELEASE); mParams.Add("sTimestamp", Utils.ConvertToUnixTimestamp(DateTime.Now).ToString()); #if DEBUG mParams.Add("sUrl", "http://247.mydev.com/~cailong/"); mParams.Add("sUCenterUrl", "http://247.mydev.com/~cailong/"); #else mParams.Add("sUrl", Utils.GetRootUrl(BaseConfigs.GetForumPath)); mParams.Add("sUCenterUrl", Utils.GetRootUrl(BaseConfigs.GetForumPath)); #endif BaseCloudResponse <bool> syncSiteResult = GetCloudResponse <bool>("site.sync", mParams); return(syncSiteResult.ErrMessage); }
/// <summary> /// 获取云平台方法签名 /// </summary> /// <param name="method"></param> /// <param name="timeStamp"></param> /// <param name="mParams"></param> /// <returns></returns> private static string GetCloudMethodSignature(string method, string timeStamp, DiscuzCloudMethodParameter mParams) { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); return(Utils.MD5(string.Format("format={0}&method={1}&sId={2}{3}|{4}|{5}", FORMAT, method, config.Cloudsiteid, mParams.GetPostData(), config.Cloudsitekey, timeStamp))); }
/// <summary> /// 获取云平台通知已绑定用户的接口地址 /// </summary> /// <param name="connectInfo"></param> /// <param name="userName"></param> /// <param name="birthday"></param> /// <param name="gender"></param> /// <param name="email"></param> /// <param name="isPublicEmail"></param> /// <param name="isUsedQQAvatar"></param> /// <param name="type"></param> /// <returns></returns> public static string GetBindUserNotifyUrl(UserConnectInfo connectInfo, string userName, string birthday, int gender, string email, int isPublicEmail, int isUsedQQAvatar, string type) { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); List <DiscuzOAuthParameter> paramList = new List <DiscuzOAuthParameter>(); paramList.Add(new DiscuzOAuthParameter("s_id", string.Empty)); paramList.Add(new DiscuzOAuthParameter("openid", connectInfo.OpenId)); paramList.Add(new DiscuzOAuthParameter("oauth_consumer_key", config.Connectappid)); paramList.Add(new DiscuzOAuthParameter("u_id", connectInfo.Uid.ToString())); paramList.Add(new DiscuzOAuthParameter("username", userName)); paramList.Add(new DiscuzOAuthParameter("birthday", birthday)); string sex = "unknown"; sex = gender == 1 ? "male" : sex; sex = gender == 2 ? "female" : sex; paramList.Add(new DiscuzOAuthParameter("sex", sex)); paramList.Add(new DiscuzOAuthParameter("email", email)); paramList.Add(new DiscuzOAuthParameter("is_public_email", isPublicEmail.ToString())); paramList.Add(new DiscuzOAuthParameter("is_use_qq_avatar", isUsedQQAvatar.ToString())); paramList.Add(new DiscuzOAuthParameter("statreferer", "forum")); paramList.Add(new DiscuzOAuthParameter("avatar_input", "234")); paramList.Add(new DiscuzOAuthParameter("avatar_agent", "23432")); paramList.Add(new DiscuzOAuthParameter("type", type)); paramList.Add(new DiscuzOAuthParameter("site_ucenter_id", config.Sitekey)); string queryString = ""; string sig = GenerateNotifySignature(paramList, config.Connectappid + "|" + config.Connectappkey, out queryString); return(CONNECT_URL + "notify/user/bind?" + queryString + "sig=" + sig); }
/// <summary> /// 解除用户QQ绑定 /// </summary> /// <param name="openId"></param> /// <returns></returns> public static int UnbindUserConnectInfo(string openId) { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); UserConnectInfo userConnectInfo = DiscuzCloud.GetUserConnectInfo(openId); if (userConnectInfo == null) { return(-1); } List <DiscuzOAuthParameter> paramList = new List <DiscuzOAuthParameter>(); paramList.Add(new DiscuzOAuthParameter("client_ip", DNTRequest.GetIP())); DiscuzOAuth oauth = new DiscuzOAuth(); string queryStr = ""; string unbindUrl = oauth.GetOAuthUrl(UNBIND_URL, "POST", config.Connectappid, config.Connectappkey, userConnectInfo.Token, userConnectInfo.Secret, "", "", paramList, out queryStr); string response = Utils.GetHttpWebResponse(unbindUrl, queryStr); DeleteUserConnectInfo(openId); Utils.WriteCookie("bindconnect", ""); return(1); }
/// <summary> /// 获取QQ Connect 授权页面地址 /// </summary> /// <param name="userId"></param> /// <returns></returns> public static string GetConnectLoginPageUrl(int userId) { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); List <DiscuzOAuthParameter> paramList = new List <DiscuzOAuthParameter>(); paramList.Add(new DiscuzOAuthParameter("client_ip", DNTRequest.GetIP())); paramList.Add(new DiscuzOAuthParameter("type", userId > 0 ? "loginbind" : "login")); DiscuzOAuth oauth = new DiscuzOAuth(); string queryStr = ""; string requestTokenUrl = oauth.GetOAuthUrl(REQUEST_TOKEN_URL, "POST", config.Connectappid, config.Connectappkey, "", "", "", oauthCallback, paramList, out queryStr); string response = Utils.GetHttpWebResponse(requestTokenUrl, queryStr); try { ConnectResponse <OAuthTokenInfo> tokenInfo = JavaScriptConvert.DeserializeObject <ConnectResponse <OAuthTokenInfo> >(response); Utils.WriteCookie("connect", "token", tokenInfo.Result.Token); Utils.WriteCookie("connect", "secret", tokenInfo.Result.Secret); string authorizeUrl = oauth.GetOAuthUrl(AUTHORIZE_URL, "GET", config.Connectappid, config.Connectappkey, tokenInfo.Result.Token, tokenInfo.Result.Secret, "", oauthCallback, new List <DiscuzOAuthParameter>(), out queryStr); return(authorizeUrl + "?" + queryStr); } catch { return("?Failed to get tmptoken"); } }
public override bool Run(CommandParameter commandParam, ref string result) { try { QQConnectAuthInfo authInfo = JavaScriptConvert.DeserializeObject <List <QQConnectAuthInfo> >(commandParam.CloudParams)[0]; if (authInfo != null) { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); config.Connectappid = authInfo.AppId; config.Connectappkey = authInfo.AppKey; DiscuzCloudConfigs.SaveConfig(config); DiscuzCloudConfigs.ResetConfig(); result = CloudUtils.GetCloudResponse <bool>(true); } else { result = CloudUtils.GetCloudResponse <bool>(false); } } catch { result = CloudUtils.GetCloudResponse <bool>(false); } return(true); }
public override bool Run(CommandParameter commandParam, ref string result) { string[] actionList = { "connect", "qqgroup" }; string action = ""; foreach (string act in actionList) { if (commandParam.CloudParams.IndexOf(string.Format("\"{0}\"", act)) != -1) { action = act; break; } } int enable = commandParam.CloudParams.IndexOf(string.Format("\"{0}\"", "normal")) != -1 ? 1 : 0; DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); bool changed = false; switch (action) { case "connect": config.Connectenabled = enable; changed = true; break; } if (changed) { DiscuzCloudConfigs.SaveConfig(config); DiscuzCloudConfigs.ResetConfig(); } result = CloudUtils.GetCloudResponse <bool>(true); return(true); }
public static bool PushFeedToDiscuzCloud(TopicInfo topic, PostInfo post, AttachmentInfo[] attachments, UserConnect connectInfo, string ip, string rootUrl) { DiscuzCloudConfigInfo config = DiscuzCloudConfigInfo.Current; List <DiscuzOAuthParameter> list = new List <DiscuzOAuthParameter>(); list.Add(new DiscuzOAuthParameter("client_ip", ip)); list.Add(new DiscuzOAuthParameter("thread_id", topic.Tid.ToString())); list.Add(new DiscuzOAuthParameter("author_id", topic.Posterid.ToString())); list.Add(new DiscuzOAuthParameter("author", topic.Poster)); list.Add(new DiscuzOAuthParameter("forum_id", topic.Fid.ToString())); list.Add(new DiscuzOAuthParameter("p_id", post.Pid.ToString())); list.Add(new DiscuzOAuthParameter("subject", topic.Title)); GeneralConfigInfo config2 = GeneralConfigInfo.Current; list.Add(new DiscuzOAuthParameter("html_content", UBB.UBBToHTML(new PostpramsInfo { Sdetail = post.Message, Smiliesinfo = Smilies.GetSmiliesListWithInfo(), Bbcodemode = config2.Bbcodemode, Parseurloff = post.Parseurloff, BBCode = post.Bbcodeoff < 1, Signature = 0, Allowhtml = post.Htmlon, Pid = post.Pid, Showimages = 1 - post.Smileyoff, Smileyoff = post.Smileyoff, Smiliesmax = config2.Smiliesmax, Hide = 0 }))); list.Add(new DiscuzOAuthParameter("bbcode_content", post.Message)); list.Add(new DiscuzOAuthParameter("read_permission", "0")); list.Add(new DiscuzOAuthParameter("u_id", topic.Posterid.ToString())); list.Add(new DiscuzOAuthParameter("f_type", TypeConverter.BooleanToIntString(connectInfo.AllowPushFeed))); StringBuilder stringBuilder = new StringBuilder(); int num = 0; if (attachments != null) { for (int i = 0; i < attachments.Length; i++) { AttachmentInfo attachmentInfo = attachments[i]; if (num < 3 && attachmentInfo.Filetype.IndexOf("image") > -1 && attachmentInfo.Attachprice <= 0) { stringBuilder.AppendFormat("|{0}upload/{1}", rootUrl, attachmentInfo.Filename.Replace("\\", "/")); num++; } } } list.Add(new DiscuzOAuthParameter("attach_images", stringBuilder.ToString().TrimStart('|'))); DiscuzOAuth discuzOAuth = new DiscuzOAuth(); string postData = ""; string oAuthUrl = discuzOAuth.GetOAuthUrl(API_CONNECT_URL + "connect/feed/new", "POST", config.Connectappid, config.Connectappkey, connectInfo.Token, connectInfo.Secret, "", "", list, out postData); Utils.GetHttpWebResponse(oAuthUrl, postData); return(true); }
public override bool Run(CommandParameter commandParam, ref string result) { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); config.Cloudenabled = 1; DiscuzCloudConfigs.SaveConfig(config); DiscuzCloudConfigs.ResetConfig(); result = CloudUtils.GetCloudResponse <bool>(Utils.UrlDecode(commandParam.CloudParams) == "[]"); return(true); }
public static bool DeletePushedFeedInDiscuzCloud(PushfeedLog feedInfo, string ip) { DiscuzCloudConfigInfo config = DiscuzCloudConfigInfo.Current; List <DiscuzOAuthParameter> list = new List <DiscuzOAuthParameter>(); list.Add(new DiscuzOAuthParameter("client_ip", ip)); list.Add(new DiscuzOAuthParameter("thread_id", feedInfo.ID.ToString())); DiscuzOAuth discuzOAuth = new DiscuzOAuth(); string postData = ""; string oAuthUrl = discuzOAuth.GetOAuthUrl(API_CONNECT_URL + "connect/feed/remove", "POST", config.Connectappid, config.Connectappkey, feedInfo.AuthorToken, feedInfo.AuthorSecret, "", "", list, out postData); Utils.GetHttpWebResponse(oAuthUrl, postData); return(true); }
/// <summary> /// 发送删除已发送feed的请求到云平台接口 /// </summary> /// <param name="feedInfo"></param> /// <param name="ip"></param> /// <returns></returns> public static bool DeletePushedFeedInDiscuzCloud(TopicPushFeedInfo feedInfo, string ip) { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); List <DiscuzOAuthParameter> parmlist = new List <DiscuzOAuthParameter>(); parmlist.Add(new DiscuzOAuthParameter("client_ip", ip)); parmlist.Add(new DiscuzOAuthParameter("thread_id", feedInfo.TopicId.ToString())); DiscuzOAuth oAuth = new DiscuzOAuth(); string queryStr = ""; string deleteFeedUrl = oAuth.GetOAuthUrl(API_CONNECT_URL + "connect/feed/remove", "POST", config.Connectappid, config.Connectappkey, feedInfo.AuthorToken, feedInfo.AuthorSecret, "", "", parmlist, out queryStr); Utils.GetHttpWebResponse(deleteFeedUrl, queryStr); return(true); }
/// <summary> /// 更换站点KEY /// </summary> /// <returns></returns> public static string ResetSiteKey() { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); DiscuzCloudMethodParameter mParams = new DiscuzCloudMethodParameter(); mParams.Add("sId", config.Cloudsiteid); BaseCloudResponse <RegisterCloud> resetCloudResult = GetCloudResponse <RegisterCloud>("site.resetKey", mParams); if (resetCloudResult.ErrCode == 0) { config.Cloudsitekey = resetCloudResult.Result.CloudSiteKey; DiscuzCloudConfigs.SaveConfig(config); DiscuzCloudConfigs.ResetConfig(); } return(resetCloudResult.ErrMessage); }
/// <summary> /// 获取指定云平台服务的开启状态,true为开启 /// </summary> /// <param name="serviceName">服务名称(connect,connect_reg)</param> /// <returns></returns> public static bool GetCloudServiceEnableStatus(string serviceName) { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); if (config.Cloudenabled == 0) { return(false); } switch (serviceName) { case "connect": return(config.Connectenabled == 1); case "connect_reg": return(config.Allowconnectregister == 1); default: return(false); } }
public static string ResetSiteKey() { DiscuzCloudConfigInfo config = DiscuzCloudConfigInfo.Current; DiscuzCloudMethodParameter discuzCloudMethodParameter = new DiscuzCloudMethodParameter(); discuzCloudMethodParameter.Add("sId", config.Cloudsiteid); BaseCloudResponse <RegisterCloud> cloudResponse = DiscuzCloud.GetCloudResponse <RegisterCloud>("site.resetKey", discuzCloudMethodParameter); if (cloudResponse.ErrCode == 0) { config.Cloudsitekey = cloudResponse.Result.CloudSiteKey; //DiscuzCloudConfigs.SaveConfig(config); //DiscuzCloudConfigs.ResetConfig(); config.Save(); DiscuzCloudConfigInfo.Current = null; } return(cloudResponse.ErrMessage); }
public static int UnbindUserConnectInfo(string openId) { DiscuzCloudConfigInfo config = DiscuzCloudConfigInfo.Current; UserConnect userConnectInfo = DiscuzCloud.GetUserConnectInfo(openId); if (userConnectInfo == null) { return(-1); } List <DiscuzOAuthParameter> list = new List <DiscuzOAuthParameter>(); list.Add(new DiscuzOAuthParameter("client_ip", DNTRequest.GetIP())); DiscuzOAuth discuzOAuth = new DiscuzOAuth(); string postData = ""; string oAuthUrl = discuzOAuth.GetOAuthUrl(UNBIND_URL, "POST", config.Connectappid, config.Connectappkey, userConnectInfo.Token, userConnectInfo.Secret, "", "", list, out postData); Utils.GetHttpWebResponse(oAuthUrl, postData); DiscuzCloud.DeleteUserConnectInfo(openId); Utils.WriteCookie("bindconnect", ""); return(1); }
public static string SyncSite() { DiscuzCloudConfigInfo config = DiscuzCloudConfigInfo.Current; DiscuzCloudMethodParameter discuzCloudMethodParameter = new DiscuzCloudMethodParameter(); discuzCloudMethodParameter.Add("sId", config.Cloudsiteid); discuzCloudMethodParameter.Add("sName", GeneralConfigInfo.Current.Forumtitle); discuzCloudMethodParameter.Add("sSiteKey", config.Sitekey); discuzCloudMethodParameter.Add("sCharset", CHARSET); discuzCloudMethodParameter.Add("sTimeZone", "8"); discuzCloudMethodParameter.Add("sLanguage", "zh_CN"); discuzCloudMethodParameter.Add("sProductType", DiscuzCloud.productType); discuzCloudMethodParameter.Add("sProductVersion", DiscuzCloud.productVersion); discuzCloudMethodParameter.Add("sApiVersion", "0.4"); discuzCloudMethodParameter.Add("sSiteUid", BaseConfigs.GetFounderUid.ToString()); discuzCloudMethodParameter.Add("sProductRelease", PRODUCT_RELEASE); discuzCloudMethodParameter.Add("sTimestamp", Utils.ConvertToUnixTimestamp(DateTime.Now).ToString()); discuzCloudMethodParameter.Add("sUrl", Utils.GetRootUrl(BaseConfigs.GetForumPath)); discuzCloudMethodParameter.Add("sUCenterUrl", Utils.GetRootUrl(BaseConfigs.GetForumPath)); BaseCloudResponse <bool> cloudResponse = DiscuzCloud.GetCloudResponse <bool>("site.sync", discuzCloudMethodParameter); return(cloudResponse.ErrMessage); }
/// <summary> /// 获取当前Oauth用户的accessTokenInfo /// </summary> /// <returns></returns> public static OAuthAccessTokenInfo GetConnectAccessTokenInfo() { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); List <DiscuzOAuthParameter> paramList = new List <DiscuzOAuthParameter>(); paramList.Add(new DiscuzOAuthParameter("client_ip", DNTRequest.GetIP())); DiscuzOAuth oauth = new DiscuzOAuth(); string queryStr = ""; string accessTokenUrl = oauth.GetOAuthUrl(ACCESS_TOKEN_URL, "POST", config.Connectappid, config.Connectappkey, Utils.GetCookie("connect", "token"), Utils.GetCookie("connect", "secret"), DNTRequest.GetString("con_oauth_verifier"), "", paramList, out queryStr); string response = Utils.GetHttpWebResponse(accessTokenUrl, queryStr); try { ConnectResponse <OAuthAccessTokenInfo> accessTokenInfo = JavaScriptConvert.DeserializeObject <ConnectResponse <OAuthAccessTokenInfo> >(response); return(accessTokenInfo.Result); } catch { return(null); } }
/// <summary> /// 发送feed请求到云平台 /// </summary> /// <param name="topic"></param> /// <param name="post"></param> /// <param name="attachments"></param> /// <param name="connectInfo"></param> /// <returns></returns> public static bool PushFeedToDiscuzCloud(TopicInfo topic, PostInfo post, AttachmentInfo[] attachments, UserConnectInfo connectInfo, string ip, string rootUrl) { DiscuzCloudConfigInfo config = DiscuzCloudConfigs.GetConfig(); List <DiscuzOAuthParameter> parmlist = new List <DiscuzOAuthParameter>(); parmlist.Add(new DiscuzOAuthParameter("client_ip", ip)); parmlist.Add(new DiscuzOAuthParameter("thread_id", topic.Tid.ToString())); parmlist.Add(new DiscuzOAuthParameter("author_id", topic.Posterid.ToString())); parmlist.Add(new DiscuzOAuthParameter("author", topic.Poster)); parmlist.Add(new DiscuzOAuthParameter("forum_id", topic.Fid.ToString())); parmlist.Add(new DiscuzOAuthParameter("p_id", post.Pid.ToString())); parmlist.Add(new DiscuzOAuthParameter("subject", topic.Title)); #region 构造postparmsinfo GeneralConfigInfo generalConfig = GeneralConfigs.GetConfig(); PostpramsInfo postpramsInfo = new PostpramsInfo(); postpramsInfo.Sdetail = post.Message; postpramsInfo.Smiliesinfo = Smilies.GetSmiliesListWithInfo(); postpramsInfo.Bbcodemode = generalConfig.Bbcodemode; postpramsInfo.Parseurloff = post.Parseurloff; postpramsInfo.Bbcodeoff = post.Bbcodeoff; postpramsInfo.Signature = 0; postpramsInfo.Allowhtml = post.Htmlon; postpramsInfo.Pid = post.Pid; postpramsInfo.Showimages = 1 - post.Smileyoff; postpramsInfo.Smileyoff = post.Smileyoff; postpramsInfo.Smiliesmax = generalConfig.Smiliesmax; //判断是否为回复可见帖, hide=0为不解析[hide]标签, hide>0解析为回复可见字样, hide=-1解析为以下内容回复可见字样显示真实内容 //将逻辑判断放入取列表的循环中处理,此处只做是否为回复人的判断,主题作者也该可见 postpramsInfo.Hide = 0; #endregion parmlist.Add(new DiscuzOAuthParameter("html_content", UBB.UBBToHTML(postpramsInfo))); parmlist.Add(new DiscuzOAuthParameter("bbcode_content", post.Message)); parmlist.Add(new DiscuzOAuthParameter("read_permission", "0")); parmlist.Add(new DiscuzOAuthParameter("u_id", topic.Posterid.ToString())); parmlist.Add(new DiscuzOAuthParameter("f_type", connectInfo.AllowPushFeed.ToString())); StringBuilder attachUrlList = new StringBuilder(); int attachCount = 0; if (attachments != null) { foreach (AttachmentInfo info in attachments) { if (attachCount < 3 && info.Filetype.IndexOf("image") > -1 && info.Attachprice <= 0) { attachUrlList.AppendFormat("|{0}upload/{1}", rootUrl, info.Filename.Replace("\\", "/")); attachCount++; } } } parmlist.Add(new DiscuzOAuthParameter("attach_images", attachUrlList.ToString().TrimStart('|'))); DiscuzOAuth oAuth = new DiscuzOAuth(); string queryStr = ""; string feedUrl = oAuth.GetOAuthUrl(API_CONNECT_URL + "connect/feed/new", "POST", config.Connectappid, config.Connectappkey, connectInfo.Token, connectInfo.Secret, "", "", parmlist, out queryStr); Utils.GetHttpWebResponse(feedUrl, queryStr); return(true); }