[pkg-fso-commits] [SCM] FSO frameworkd Debian packaging branch, master, updated. milestone4-368-g700ab82

Michael 'Mickey' Lauer mickey at vanille-media.de
Mon Feb 2 18:51:23 UTC 2009


The following commit has been merged in the master branch:
commit 8efae2ed1ae99c5506b282ccd7437f8d7926e02e
Merge: 00e4b767053220c3eae2c6d56c9a01abc99aeb0e 2cf0eec4c9c4a62ef8eab50e2577484ff68b88d7
Author: Michael 'Mickey' Lauer <mickey at vanille-media.de>
Date:   Tue Nov 25 01:49:59 2008 +0100

    Merge commit 'origin/stabilization/milestone4'

diff --combined framework/subsystems/ogsmd/modems/abstract/mediator.py
index 11073c4,8b413e6..bd3894f
--- a/framework/subsystems/ogsmd/modems/abstract/mediator.py
+++ b/framework/subsystems/ogsmd/modems/abstract/mediator.py
@@@ -21,7 -21,7 +21,7 @@@ TODO
   * refactor parameter validation
  """
  
- __version__ = "0.9.9.2"
+ __version__ = "0.9.9.3"
  
  from ogsmd.gsm import error, const, convert
  from ogsmd.gsm.decor import logged
@@@ -338,9 -338,12 +338,12 @@@ class DeviceGetFeatures( DeviceMediato
  
          result = {}
          if "GSM" in response[0]:
-             result["GSM"] = self._rightHandSide( response[1] ).strip( '"' )
+             result["GSM"] = "TA" # Terminal Adapter
+         else:
+             result["GSM"] = "" # Some GSM modems lie about their GSM capabilities
          if "FCLASS" in response[0]:
-             result["FAX"] = response[2]
+             result["FAX"] = self._rightHandSide( response[2] ).strip( '"' )
+         result["GPRS"] = self._rightHandSide( response[1] ).strip( '"' )
          self._ok( result )
  
  #=========================================================================#
@@@ -762,15 -765,15 +765,15 @@@ class SimRetrieveMessagebook( SimMediat
                      index = int(header.groupdict()["index"])
                      status = const.SMS_PDU_STATUS_OUT[int(header.groupdict()["status"])]
                      if "read" in status:
 -                      dir = "MT"
 +                      direction = "MT"
                      else:
 -                      dir = "MO"
 +                      direction = "MO"
                      length = int(header.groupdict()["pdulen"])
                  else:
                      # Now we decode the actual PDU
  
 -                    sms = ogsmd.gsm.sms.decodeSMS( line, dir)
 -                    result.append( ( index, status, str(sms.oa), sms.ud, sms.featureMap ) )
 +                    sms = ogsmd.gsm.sms.SMS.decode( line, direction )
 +                    result.append( ( index, status, str(sms.oa), sms.ud, sms.properties ) )
              self._ok( result )
          else:
              SimMediator.responseFromChannel( self, request, response )
@@@ -793,14 -796,14 +796,14 @@@ class SimRetrieveMessage( SimMediator )
                      header = const.PAT_SMS_PDU_HEADER_SINGLE.match( self._rightHandSide(line) )
                      status = const.SMS_PDU_STATUS_OUT[int(header.groupdict()["status"])]
                      if "read" in status:
 -                      dir = "MT"
 +                      direction = "MT"
                      else:
 -                      dir = "MO"
 +                      direction = "MO"
                      length = int(header.groupdict()["pdulen"])
                  else:
                      # Now we decode the actual PDU
 -                    sms = ogsmd.gsm.sms.decodeSMS( line, dir )
 -                    result = ( status, str(sms.oa), sms.ud, sms.featureMap )
 +                    sms = ogsmd.gsm.sms.SMS.decode( line, direction )
 +                    result = ( status, str(sms.oa), sms.ud, sms.properties )
  
              self._ok( *result )
  
@@@ -816,14 -819,14 +819,14 @@@ class SimSetServiceCenterNumber( SimMed
  class SimStoreMessage( SimMediator ):
  #=========================================================================#
      def trigger( self ):
 -        sms = ogsmd.gsm.sms.AbstractSMS("MO")
 +        sms = ogsmd.gsm.sms.SMS("MO")
          sms.pdu_mti = 1
          sms.pid = 0
          sms.dcs = 0
          # Use PDUAddress
          sms.oa = ogsmd.gsm.sms.PDUAddress.guess( self.number )
          sms.ud = self.contents
 -        sms.featureMap = self.featuremap
 +        sms.properties = self.properties
          pdu = sms.pdu()
          self._commchannel.enqueue( '+CMGW=%i\r%s' % ( len(pdu)/2-1, pdu), self.responseFromChannel, self.errorFromChannel, timeout=const.TIMEOUT["SIMACCESS"])
  
@@@ -864,14 -867,14 +867,14 @@@ class SimDeleteMessage( SimMediator )
  class SmsSendMessage( SmsMediator ):
  #=========================================================================#
      def trigger( self ):
 -        sms = ogsmd.gsm.sms.AbstractSMS("MO")
 +        sms = ogsmd.gsm.sms.SMS("MO")
          sms.pdu_mti = 1
          sms.pid = 0
          sms.dcs = 0
          # Use PDUAddress
          sms.oa = ogsmd.gsm.sms.PDUAddress.guess( self.number )
          sms.ud = self.contents
 -        sms.featureMap = self.featuremap
 +        sms.properties = self.properties
          pdu = sms.pdu()
          self._commchannel.enqueue( '+CMGS=%i\r%s' % ( len(pdu)/2-1, pdu), self.responseFromChannel, self.errorFromChannel, timeout=const.TIMEOUT["NETWORK"])
  
@@@ -991,18 -994,8 +994,18 @@@ class NetworkRegisterWithProvider( Netw
  #=========================================================================#
  class NetworkGetCountryCode( NetworkMediator ):
  #=========================================================================#
 -    def __init__( self, dbus_object, dbus_ok, dbus_error, **kwargs ):
 -        dbus_error( error.UnsupportedCommand( self.__class__.__name__ ) )
 +    def trigger( self ):
 +        self._commchannel.enqueue( "+COPS=3,2;+COPS?;+COPS=3,0", self.responseFromChannel, self.errorFromChannel )
 +
 +    def responseFromChannel( self, request, response ):
 +        if response[-1] == "OK" and len( response ) > 1:
 +            values = self._rightHandSide( response[0] ).split( ',' )
 +            if len( values ) != 3:
 +                self._error( error.NetworkNotFound( "Not registered to an operator" ) )
 +            else:
 +                mcc = int( values[2].strip( '"' )[:3] )
 +                code, name = const.mccToCountryCode( mcc )
 +                self._ok( code, name )
  
  #=========================================================================#
  class NetworkGetCallForwarding( NetworkMediator ): # a{sv}

-- 
FSO frameworkd Debian packaging



More information about the pkg-fso-commits mailing list