I reconstruct my code to more readable by using class and follow javascript style. The class is about modem device. In below I have 2 inner classes, SMS and Identify. For now it focuss on retrieve device informations. The problem it got error
'Identify' object has no attribute 'handle'
Inner class can't access outer attribute class.
import serial
class Device:
def open(self, port, baudrate):
self.handle = serial.Serial(port, baudrate)
def readline(self):
return self.handle.readline()
def close(self):
self.handle.close()
class SMS:
pass
class Identify:
def manufacturer(self):
self.handle.write(b'AT+CGMI\r')
while True:
buffer = self.handle.readline()
print(buffer)
if buffer == b'OK\r\n':
break
elif buffer == b'ERROR\r\n':
break
device = Device()
device.open('COM12', 9600)
device.Identify().manufacturer()
device.close()