def login(self,ras_msg): self.instances += 1 self.__instance_info.append({}) instance_info=self.getInstanceInfo(self.instances) instance_info["auth_ras_msg"]=ras_msg instance_info["unique_id"]=ras_msg["unique_id"] instance_info["unique_id_val"]=ras_msg.getUniqueIDValue() instance_info["attrs"]=self.__filterRasAttrs(ras_msg.getAttrs()) instance_info["ras_id"]=ras_msg.getRasID() instance_info["check_online_fails"]=0 instance_info["login_time"]=time.time() instance_info["successful_auth"]=False try: self.__checkNoLoginFlag() user_main.getUserPluginManager().callHooks("USER_LOGIN",self,[ras_msg]) except Exception,e: if isinstance(e,IBSError): self.setKillReason(self.instances,e.getErrorText()) else: self.setKillReason(self.instances,str(e)) self.logout(self.instances,ras_msg) raise
def init(): user_main.getUserPluginManager().register("ippool", IPpoolUserPlugin, 4) user_main.getUserPluginManager().register("remote_ip", RemoteIPUserPlugin, 3) user_main.getAttributeManager().registerHandler(IPpoolAttrHandler(), ["ippool"], ["ippool"], ["ippool"])
def init(): user_main.getUserPluginManager().register("rel_exp_date", RelExpDate) user_main.getAttributeManager().registerHandler(RelExpDateAttrHandler(), ["rel_exp_date"], ["rel_exp_date"], ["rel_exp_date"]) user_main.getAttributeManager().registerHandler(FirstLoginAttrHandler(), [], ["first_login"], ["first_login"])
def init(): user_main.getAttributeManager().registerHandler(FastDialAttrHandler(), ["fast_dial"], ["fast_dial"], ["fast_dial"]) user_main.getUserPluginManager().register("fast_dial", FastDialUserPlugin, 1) global actions_manager actions_manager = FastDialActionsManager()
def init(): user_main.getAttributeManager().registerHandler(VoIPUserAttrHandler(), [ "voip_username", "voip_password", "voip_generate_password", "voip_generate_password_len", "voip_save_usernames" ], ["voip_username"], []) handlers_manager.getManager().registerHandler(VoIPUserHandler()) user_main.getUserPluginManager().register("voip_user_plugin", VoIPUser) global actions actions = VoIPUserActions()
def logout(self,instance,ras_msg): """ this method calls before user logout process start we call plugins now, so they'll see the correct user object that not changed for logout """ self.getInstanceInfo(instance)["logout_ras_msg"]=ras_msg query=self.getTypeObj().logout(instance,ras_msg) query.runQuery() user_main.getUserPluginManager().callHooks("USER_LOGOUT",self,[instance,ras_msg]) self.instances-=1 del(self.__instance_info[instance-1])
def __init__(self, loaded_user, _type): """ loaded_user(LoadedUser instance): Loaded user instance o_type(string): type of user either "Normal" or "VoIP" """ self.instances=0 self.__instance_info=[] self.loaded_user=loaded_user self.__type=_type self.__type_obj=self.__loadTypeObj(_type) self.__setInitialVariables() user_main.getUserPluginManager().callHooks("USER_INIT",self)
def logout(self,instance,ras_msg): """ this method calls before user logout process start we call plugins now, so they'll see the correct user object that not changed for logout """ self.getInstanceInfo(instance)["logout_ras_msg"]=ras_msg (query,used_credit)=self.getTypeObj().logout(instance,ras_msg) user_main.getUserPluginManager().callHooks("USER_LOGOUT",self,[instance,ras_msg]) if not ras_msg.hasAttr("no_connection_log"): query += self.getTypeObj().logToConnectionLog(instance) query.runQuery() self.instances-=1 del(self.__instance_info[instance-1]) return used_credit
def commit(self,used_credit): """ saves all changed user info from memory into DB """ query=reduce(operator.add,filter(lambda x:x!=None,user_main.getUserPluginManager().callHooks("USER_COMMIT",self))) query+=self.__commitCreditQuery(used_credit) return query
def update(self,ras_msg): """ plugins can update themeselves whenever we recieved an update packet, with updated info from radius server They can return True to cause a recalcEvent for user """ ret=user_main.getUserPluginManager().callHooks("UPDATE",self,[ras_msg]) return True in ret
def commit(self,used_credit): """ saves all changed user info from memory into DB commit is called before logout of each instance """ query=reduce(operator.add,filter(lambda x:x!=None,user_main.getUserPluginManager().callHooks("USER_COMMIT",self))) query+=self.__commitCreditQuery(used_credit) return query
def update(self,ras_msg): """ plugins can update themeselves whenever we recieved an update packet, with updated info from radius server They can return True to cause a recalcEvent for user """ ret=user_main.getUserPluginManager().callHooks("UPDATE",self,[ras_msg]) if True in ret: return True return False
def login(self,ras_msg): self.instances+=1 self.__instance_info.append({}) instance_info=self.getInstanceInfo(self.instances) instance_info["auth_ras_msg"]=ras_msg instance_info["unique_id"]=ras_msg["unique_id"] instance_info["unique_id_val"]=ras_msg.getUniqueIDValue() instance_info["attrs"]=self.__filterRasAttrs(ras_msg.getAttrs()) instance_info["ras_id"]=ras_msg.getRasID() instance_info["check_online_fails"]=0 instance_info["login_time"]=time.time() instance_info["successful_auth"]=False try: user_main.getUserPluginManager().callHooks("USER_LOGIN",self,[ras_msg]) except Exception,e: if isinstance(e,IBSError): self.setKillReason(self.instances,e.getErrorText()) else: self.setKillReason(self.instances,str(e)) # logException(LOG_DEBUG) self.logout(self.instances,ras_msg) raise
def canStayOnline(self): results=filter(lambda x:x!=None,user_main.getUserPluginManager().callHooks("USER_CAN_STAY_ONLINE",self)) return reduce(operator.add,results)
def init(): user_main.getUserPluginManager().register("limit_mac",LimitMacPlugin,1) user_main.getAttributeManager().registerHandler(LimitMacAttrHandler(),["limit_mac"],["limit_mac"],[])
def init(): user_main.getUserPluginManager().register("rel_exp_date",RelExpDate) user_main.getAttributeManager().registerHandler(RelExpDateAttrHandler(),["rel_exp_date"],["rel_exp_date"],["rel_exp_date","first_login"])
def init(): user_main.getUserPluginManager().register("mschap_end",MSChapEndPlugin,9)
def init(): user_main.getUserPluginManager().register(attr_handler_name,RadiusAttrsUserPlugin) user_main.getAttributeManager().registerHandler(RadiusAttrsAttrHandler(),["radius_attrs"],["radius_attrs"],["radius_attrs"])
def init(): user_main.getUserPluginManager().register("abs_exp_date",AbsExpDate) user_main.getAttributeManager().registerHandler(AbsExpDateAttrHandler(),["abs_exp_date"],["abs_exp_date"],["abs_exp_date"])
def init(): user_main.getUserPluginManager().register("terminate_cause_plugin",TerminateCause)
def init(): user_main.getUserPluginManager().register("multi_login",MultiLogin) user_main.getAttributeManager().registerHandler(MultiLoginAttrHandler(),["multi_login"],["multi_login"],[])
def init(): user_main.getUserPluginManager().register("assign_ip", AssignIPUserPlugin, 3) user_main.getAttributeManager().registerHandler(AssignIPAttrHandler(), ["assign_ip"], ["assign_ip"], [])
def init(): user_main.getUserPluginManager().register(attr_handler_name, SessionTimeoutUserPlugin) user_main.getAttributeManager().registerHandler( SessionTimeoutAttrHandler(), ["session_timeout"], ["session_timeout"], [])
def init(): user_main.getAttributeManager().registerHandler(VoIPUserAttrHandler(),["voip_username","voip_password","voip_generate_password","voip_generate_password_len","voip_save_usernames"],["voip_username"],[]) handlers_manager.getManager().registerHandler(VoIPUserHandler()) user_main.getUserPluginManager().register("voip_user_plugin",VoIPUser)
def init(): user_main.getUserPluginManager().register("multi_login", MultiLogin) user_main.getAttributeManager().registerHandler(MultiLoginAttrHandler(), ["multi_login"], ["multi_login"], [])
def init(): user_main.getUserPluginManager().register("abs_exp_date", AbsExpDate) user_main.getAttributeManager().registerHandler(AbsExpDateAttrHandler(), ["abs_exp_date"], ["abs_exp_date"], ["abs_exp_date"])
def init(): user_main.getUserPluginManager().register("lock", LockUserPlugin, 1) user_main.getAttributeManager().registerHandler(LockAttrHandler(), ["lock"], ["lock"], [])
def _reload(self): self.__setInitialCredit() user_main.getUserPluginManager().callHooks("USER_RELOAD",self)
def init(): user_main.getUserPluginManager().register("lock",LockUserPlugin,1) user_main.getAttributeManager().registerHandler(LockAttrHandler(),["lock"],["lock"],[])
def init(): user_main.getUserPluginManager().register("limit_caller_id", LimitCallerIDPlugin, 1) user_main.getAttributeManager().registerHandler(LimitCallerIDAttrHandler(), ["limit_caller_id"], ["limit_caller_id"], [])
def init(): user_main.getUserPluginManager().register("password",PasswordUserPlugin,1)
def init(): user_main.getUserPluginManager().register(attr_handler_name,IdleTimeoutUserPlugin) user_main.getAttributeManager().registerHandler(IdleTimeoutAttrHandler(),["idle_timeout"],["idle_timeout"],[])
def init(): user_main.getUserPluginManager().register("h323_plugin", H323UserPlugin, 1)
def init(): user_main.getUserPluginManager().register("charge",ChargeUserPlugin,6)
def init(): user_main.getUserPluginManager().register("limit_station_ip", LimitStationIPPlugin, 1) user_main.getAttributeManager().registerHandler( LimitStationIPAttrHandler(), ["limit_station_ip"], ["limit_station_ip"], [])
def init(): user_main.getUserPluginManager().register("limit_mac", LimitMacPlugin, 1) user_main.getAttributeManager().registerHandler(LimitMacAttrHandler(), ["limit_mac"], ["limit_mac"], [])
def init(): user_main.getUserPluginManager().register("ippool",IPpoolUserPlugin,9) user_main.getAttributeManager().registerHandler(IPpoolAttrHandler(),["ippool"],["ippool"],["ippool"])
def init(): user_main.getUserPluginManager().register("charge", ChargeUserPlugin, 6)