Class v.c.p.SIMProtocol(BufferingStateMachine):

Part of vmc.common.protocol View In Hierarchy

Known subclasses: vmc.common.protocol.SIMCardConnection

SIMProtocol defines the protocol used to communicate with the SIM card

SIMProtocol communicates with the SIM synchronously, only one command at a time. However, SIMProtocol offers an asynchronous interface queue_at_cmd which accepts and queues an vmc.common.command.ATCmd and returns a Deferred that will be callbacked with the commands response, or errback if an exception is raised.

SIMProtocol actually is an specially tailored Finite State Machine. After several redesigns and simplifications, this FSM has just two states:
Method __init__ Undocumented
Method __repr__ Undocumented
Method transition_to_idle Transitions to idle and processes next queued ATCmd
Method send_splitcmd Used to send the second part of a split command after prompt appears
Method queue_at_cmd Queues an ATCmd and returns a deferred

Inherited from BufferingStateMachine:

Method _timeout_eb Undocumented
Method cancel_current_delayed_call Cancels current ATCmd dellayed call if active
Method notify_success Notify success to current ATCmd callbacks
Method notify_failure Notify failure to current ATCmd errbacks
Method set_cmd Sets self.cmd to cmd
Method set_state Sets and logs the new state
Method enque_notification Enqueues a notification
Method dataReceived See twisted.internet.protocol.Protocol.dataReceived
Method process_notifications Processes unsolicited notifications in buffer
Method handle_idle See the method comments
Method handle_waiting Undocumented
def __init__(self, device):
Undocumented
def __repr__(self):
Undocumented
def transition_to_idle(self):
Transitions to idle and processes next queued ATCmd
def send_splitcmd(self):
Used to send the second part of a split command after prompt appears
def _process_at_cmd(self, cmd):
Undocumented
def _check_queue(self):
Undocumented
def queue_at_cmd(self, cmd):

Queues an ATCmd and returns a deferred

This deferred will be callbacked with the command's response
API Documentation for vodafone-mobile-connect-card-driver-for-linux, generated by pydoctor at 2008-01-10 13:06:31.