/// <summary> /// /// </summary> /// <param name="imAccount"></param> /// <returns></returns> public bool ChangeNickname(ThirdIMAccount imAccount) { if (false == this.LoadAccessToken()) { return(false); } var changeAccountUrl = string.Format(ChangeAccountApi, this.OrgName, this.AppName, imAccount.PlatformAccountId); var data = new CreateAccountParams() { Nickname = imAccount.Nickname }; var tokenResponse = HttpJson(HttpDecorator.HttpMethod.PUT, changeAccountUrl, data); if (IsErrorResult(tokenResponse.Content)) { LogManager.GetLogger().Error("Easemob-Error(ChangeNickname): {0}[{1},{2}] => {3}", changeAccountUrl, this.AccessToken, imAccount.PlatformAccountId, tokenResponse.Content); return(false); } else { LogManager.GetLogger().Info("Easemob-Result(ChangeNickname): {0}[{1},{2}] => {3}", changeAccountUrl, this.AccessToken, imAccount.PlatformAccountId, tokenResponse.Content); return(true); } }
private static void SyncIMAccount(ThirdIMAccount source) { var imAccount = ThirdIMAccount.CreateNew(source.PassportId, source.Platform, source.PlatformAccountId); imAccount.Nickname = source.Nickname; if (null == imAccount) { return; } if (imAccount.IsSync) { ObjectIOCFactory.GetSingleton <IIMProvider>(ModuleEnvironment.IMProviderName).ChangeNickname(imAccount); } else { var isSync = ObjectIOCFactory.GetSingleton <IIMProvider>(ModuleEnvironment.IMProviderName).CreateAccount(imAccount); if (isSync) { imAccount.IsSync = isSync; imAccount.Save(); } }; }
private static void TrySyncIMAccount(ThirdIMAccount source) { try { SyncIMAccount(source); } catch { AppInstance.GetThreadPool().QueueWorkItem((item) => SyncIMAccount(item), source); } }
/// <summary> /// /// </summary> /// <param name="account"></param> /// <param name="passport"></param> public AccountEntity(AnonymousAccount account, UserPassport passport) { this.SetPropertyValues(account.GetPropertyValues()); if (null != passport && null != passport.Profile) { this.UserProfile = passport.Profile; this.MobilePhone = passport.MobilePhone; this.MultipleProfiles = passport.MultipleProfiles; this.IMAccount = AccountAuthentication.LoadIMAccount(passport.Profile); } }
public static ThirdIMAccount LoadIMAccount(UserProfile profile) { var currentProfileType = ProfileType.UserProfile; if (profile is OrganizationProfile) { currentProfileType = ((OrganizationProfile)profile).CurrentProfileType; } var platform = ModuleEnvironment.IMProviderName; var imAccount = ThirdIMAccount.FindByPlatformAccountId(platform, ThirdIMAccount.BuildAccountName(profile.PassportId, currentProfileType)); return(imAccount); }
public void CreateAccountTest() { var imAccount = new ThirdIMAccount() { Platform = "Easemob", PlatformAccountId = string.Concat("u-2", Mocks.TestHelper.GetRndNumber(10000, 999999)), PlatformAccountPassword = string.Concat("12321321", Mocks.TestHelper.GetRndNumber(10000, 999999)) }; var provider = ObjectIOCFactory.GetSingleton <IIMProvider>(ModuleEnvironment.IMProviderName); Console.WriteLine(provider.ToJson()); var created = ObjectIOCFactory.GetSingleton <IIMProvider>(ModuleEnvironment.IMProviderName).CreateAccount(imAccount); Console.WriteLine(created); }
public void aa() { var passportId = 121353430; var platformAccountId = string.Concat("im-", passportId); var imAccount = ThirdIMAccount.CreateNew(passportId, ModuleEnvironment.IMProviderName, platformAccountId); if (null != imAccount && false == imAccount.IsSync) { var isSync = ObjectIOCFactory.GetSingleton <IIMProvider>(ModuleEnvironment.IMProviderName).CreateAccount(imAccount); if (isSync) { imAccount.IsSync = isSync; imAccount.Save(); } } }
public static void SyncIMAccount(UserPassport passport) { return; // not using im var currentProfileType = ProfileType.UserProfile; if (passport.Profile is OrganizationProfile) { currentProfileType = ((OrganizationProfile)passport.Profile).CurrentProfileType; } var imAccount = new ThirdIMAccount(); imAccount.Platform = ModuleEnvironment.IMProviderName; imAccount.PlatformAccountId = string.Concat(ProfileType.OrganizationProfile == currentProfileType ? "cc-" : "u-", passport.PassportId); imAccount.Nickname = ProfileType.OrganizationProfile == currentProfileType ? passport.Profile.RealName : passport.Profile.Nickname; TrySyncIMAccount(imAccount); }
public bool SendResumeRequest(long consultantPassportId) { if (consultantPassportId < 0) { return(false); } var passport = UserPassport.FindById(consultantPassportId); if (null == passport || passport.ProfileType == ProfileType.UserProfile) { return(false); } var message = string.Format("您可以将简历发送到我的邮箱:{0}", passport.Profile.Email); var toAccount = ThirdIMAccount.FindByPlatformAccountId(Passports.ModuleEnvironment.IMProviderName, ThirdIMAccount.BuildAccountName(MvcContext.Current.PassportId, ProfileType.UserProfile)); var fromAccount = ThirdIMAccount.FindByPlatformAccountId(Passports.ModuleEnvironment.IMProviderName, ThirdIMAccount.BuildAccountName(consultantPassportId, ProfileType.OrganizationProfile)); var isSent = ObjectIOCFactory.GetSingleton <IIMProvider>(Passports.ModuleEnvironment.IMProviderName) .SendMessage(toAccount.PlatformAccountId, fromAccount.PlatformAccountId, "txt", message, null); return(isSent); }