def checkRadioRegisteration(self, msg, rmsg, timeval): r = self.Radios.checkIP(msg.sourceIP, return_type=Radio.object) print("%s: msg: %s recived from %s return port %s" % (timeval, msg.command(), msg.sourceIP, msg.sourcePort)) if r == None: r = Radio(RadioIP=msg.sourceIP, RadioIDtext=msg.RadioID(0)) self.Radios.append(r) print("Radio %s with IP address %s add to List of Active Radios" % (r.RadioIDtext(0), r.RadioIP(0))) rmsg.set_extra(rmsg.extra(0) + " Added to list of Active Radios") if r.SignedIn() == False: print("Radio %s not sign in with user!") rmsg.set_extra(rmsg.extra(0) + " Please Sign radio in!") return rmsg
def checkID(self, RID, return_type=Radio.object): i = 0 for o in self.Radios: if o.ID==RID: if return_type==Radio.index: return i elif return_type==Radio.object: return o elif return_type==Radio.IP: return o.IP elif return_type==Radio.Name: return o.Name i += 1 return None def sort(self): self.Radios = sorted(self.Radios, key=self.sort_key_Radio_ID) def sort_key_Radio_ID(self, i): return i._RadioID if __name__ == "__main__": R = Radios() r = Radio(RadioID='PR0001', RadioIP='192.168.1.17') i =0 while i<4: if R.checkIP(r.RadioIP())==None: R.append(r) i += 1 print(len(R)) print("Done")