User Provisionning

From Openmoko

(Difference between revisions)
Jump to: navigation, search
(Connection Profile)
(Connection Profile)
Line 68: Line 68:
 
|-
 
|-
 
|}
 
|}
 +
 +
 +
Here is a XML Schema for handling User Provisionning:
 +
 +
  <?xml version="1.0"?>
 +
  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
 +
            targetNamespace="http://www.openmoko.org"
 +
            xmlns="http://www.openmoko.org"
 +
            elementFormDefault="qualified">
 +
 
 +
    <xs:element name="dialnum">
 +
      <xs:simpleType>
 +
        <xs:restriction base="xs:string">
 +
          <xs:pattern value="+?[0-9]{10,13}"/>
 +
        </xs:restriction>
 +
      </xs:simpleType>
 +
    </xs:element>
 +
 
 +
    <xs:element name="apn" type="xs:string"/>
 +
    <xs:element name="name" type="xs:string"/>
 +
    <xs:element name="userid" type="xs:string"/>
 +
    <xs:element name="password" type="xs:string"/>
 +
    <xs:element name="authent_type" type="authent_type"/>
 +
    <xs:element name="linger_time" type="xs:positiveInteger"/>
 +
    <xs:element name="ipaddr" type="ipaddr"/>
 +
    <xs:element name="dns" type="ipaddr"/>
 +
 
 +
    <xs:simpleType name="quad">
 +
      <xs:restriction base:"xs:integer">
 +
        <xs:minInclusive value="0"/>
 +
        <xs:maxInclusive value="255"/>
 +
      </xs:restriction>
 +
    </xs:simpleType>
 +
 
 +
    <xs:complexType name="ipaddr">
 +
      <xs:sequence>
 +
        <!-- IPAddr ::= quad1.quad2.quad3.quad4 -->
 +
        <xs:element name="quad1" type="quad"/>
 +
        <xs:element name="quad2" type="quad"/>
 +
        <xs:element name="quad3" type="quad"/>
 +
        <xs:element name="quad4" type="quad"/>
 +
      </xs:sequence>
 +
    </xs:complexType>
 +
 
 +
    <xs:simpleType name="authent_type">
 +
      <xs:restriction base="xs:string">
 +
        <xs:enumeration value="None"/>
 +
        <xs:enumeration value="Unsecured"/>
 +
        <xs:enumeration value="Secured"/>   
 +
      </xs:restriction>
 +
    </xs:simpleType>
 +
 
 +
    <xs:element name="prov_common">
 +
      <xs:complexType>
 +
        <xs:sequence>
 +
          <xs:element ref="name"/>
 +
          <xs:element ref="userid"/>
 +
          <xs:element ref="password"/>
 +
          <xs:element ref="authent_type"/>
 +
          <xs:element ref="linger_time"/>
 +
          <xs:element ref="ipaddr"/>
 +
          <xs:element ref="dns"/>
 +
        </xs:sequence>
 +
      </xs:complexType>
 +
  </xs:element>
 +
 
 +
    <xs:element name="csd_provisionning">
 +
      <xs:complexType>
 +
        <xs:sequence>
 +
          <xs:element ref="dialnum"/>
 +
          <xs:element ref="prov_common"/>
 +
        </xs:sequence>
 +
      </xs:complexType>
 +
    </xs:element>
 +
 
 +
    <xs:element name="gprs_provisionning">
 +
      <xs:complexType>
 +
        <xs:sequence>
 +
          <xs:element ref="apn"/>
 +
          <xs:element ref="prov_common"/>
 +
        </xs:sequence>
 +
      </xs:complexType>
 +
    </xs:element>
 +
 
 +
    <xs:element name="provisionning">
 +
      <xs:complexType>
 +
        <xs:choice>
 +
          <xs:element name="csd_provisionning" type="csd_provisionning"/>
 +
          <xs:element name="gprs_provisionning" type="gprs_provisionning"/>
 +
        </xs:choice>
 +
      </xs:complexType>
 +
    </xs:element>
 +
 
 +
  </xs:schema>

Revision as of 02:07, 25 February 2008

This page is an attempt to specify User Provisionning parameters for data bearer services ("Point-To-Point Connection Orientated Network Service" as specified in GSM 02.60). It is more a proposal, a way to share thoughts about it than a final formal specification. These parameters are used by the phone stacks to establish and setup a packet switched communication with the network. They are mainly grouped in two categories:

  • Connection profile: the parameters used for activating the PDP context.
  • Extra parameters: the parameters used for customizing the usage of the connection by the application, browser, J2ME MIDlet or any other


Connection Profile

The proposed parameters are grouped in the following table. Each row is a parameter and is introduced with its name, type and description. The first set of parameters are used for CSD (Circuit Switched Data) service.

Name Type Description
Dial Number String Phone number to dial for connecting data service

The second set of parameters is used for GPRS connections

Name Type Description
APN String Access Point Name (as specified in 3GPP TS 07.60)

The third set of parameters is common to both:

Name Type Description
Name String A name for identifying this connection profile object
User Identity String User you'll authenticate as
Password String Password to authenticate as User specified by User Identity
Authentication Type enum(None, Secured,Unsecured) Kind of authentication used, None, PAP, CHAP
Linger Time Number Number of seconds after last request before releasing connection
IP Addr IpAddr Requested Internet Address
DNS IpAddr Internet Address for the DNS server


Here is a XML Schema for handling User Provisionning:

 <?xml version="1.0"?>
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
            targetNamespace="http://www.openmoko.org"
            xmlns="http://www.openmoko.org"
            elementFormDefault="qualified">
 
   <xs:element name="dialnum">
     <xs:simpleType>
       <xs:restriction base="xs:string">
         <xs:pattern value="+?[0-9]{10,13}"/>
       </xs:restriction>
     </xs:simpleType>
   </xs:element>
 
   <xs:element name="apn" type="xs:string"/>
   <xs:element name="name" type="xs:string"/>
   <xs:element name="userid" type="xs:string"/>
   <xs:element name="password" type="xs:string"/>
   <xs:element name="authent_type" type="authent_type"/>
   <xs:element name="linger_time" type="xs:positiveInteger"/>
   <xs:element name="ipaddr" type="ipaddr"/>
   <xs:element name="dns" type="ipaddr"/>
 
   <xs:simpleType name="quad">
     <xs:restriction base:"xs:integer">
       <xs:minInclusive value="0"/>
       <xs:maxInclusive value="255"/>
     </xs:restriction>
   </xs:simpleType>
 
   <xs:complexType name="ipaddr">
     <xs:sequence>
       <xs:element name="quad1" type="quad"/>
       <xs:element name="quad2" type="quad"/>
       <xs:element name="quad3" type="quad"/>
       <xs:element name="quad4" type="quad"/>
     </xs:sequence>
   </xs:complexType>
 
   <xs:simpleType name="authent_type">
     <xs:restriction base="xs:string">
       <xs:enumeration value="None"/>
       <xs:enumeration value="Unsecured"/>
       <xs:enumeration value="Secured"/>    
     </xs:restriction>
   </xs:simpleType>
 
   <xs:element name="prov_common">
     <xs:complexType> 
       <xs:sequence>
         <xs:element ref="name"/>
         <xs:element ref="userid"/>
         <xs:element ref="password"/>
         <xs:element ref="authent_type"/>
         <xs:element ref="linger_time"/>
         <xs:element ref="ipaddr"/>
         <xs:element ref="dns"/>
       </xs:sequence>
     </xs:complexType>
  </xs:element>
 
   <xs:element name="csd_provisionning">
     <xs:complexType>
       <xs:sequence>
         <xs:element ref="dialnum"/>
         <xs:element ref="prov_common"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
 
   <xs:element name="gprs_provisionning">
     <xs:complexType>
       <xs:sequence>
         <xs:element ref="apn"/>
         <xs:element ref="prov_common"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
 
   <xs:element name="provisionning">
     <xs:complexType>
       <xs:choice>
         <xs:element name="csd_provisionning" type="csd_provisionning"/>
         <xs:element name="gprs_provisionning" type="gprs_provisionning"/>
       </xs:choice>
     </xs:complexType>
   </xs:element>
 
 </xs:schema>
Personal tools

This page is an attempt to specify User Provisionning parameters for data bearer services ("Point-To-Point Connection Orientated Network Service" as specified in GSM 02.60). It is more a proposal, a way to share thoughts about it than a final formal specification. These parameters are used by the phone stacks to establish and setup a packet switched communication with the network. They are mainly grouped in two categories:

  • Connection profile: the parameters used for activating the PDP context.
  • Extra parameters: the parameters used for customizing the usage of the connection by the application, browser, J2ME MIDlet or any other


Connection Profile

The proposed parameters are grouped in the following table. Each row is a parameter and is introduced with its name, type and description. The first set of parameters are used for CSD (Circuit Switched Data) service.

Name Type Description
Dial Number String Phone number to dial for connecting data service

The second set of parameters is used for GPRS connections

Name Type Description
APN String Access Point Name (as specified in 3GPP TS 07.60)

The third set of parameters is common to both:

Name Type Description
Name String A name for identifying this connection profile object
User Identity String User you'll authenticate as
Password String Password to authenticate as User specified by User Identity
Authentication Type enum(None, Secured,Unsecured) Kind of authentication used, None, PAP, CHAP
Linger Time Number Number of seconds after last request before releasing connection
IP Addr IpAddr Requested Internet Address
DNS IpAddr Internet Address for the DNS server


Here is a XML Schema for handling User Provisionning:

 <?xml version="1.0"?>
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
            targetNamespace="http://www.openmoko.org"
            xmlns="http://www.openmoko.org"
            elementFormDefault="qualified">
 
   <xs:element name="dialnum">
     <xs:simpleType>
       <xs:restriction base="xs:string">
         <xs:pattern value="+?[0-9]{10,13}"/>
       </xs:restriction>
     </xs:simpleType>
   </xs:element>
 
   <xs:element name="apn" type="xs:string"/>
   <xs:element name="name" type="xs:string"/>
   <xs:element name="userid" type="xs:string"/>
   <xs:element name="password" type="xs:string"/>
   <xs:element name="authent_type" type="authent_type"/>
   <xs:element name="linger_time" type="xs:positiveInteger"/>
   <xs:element name="ipaddr" type="ipaddr"/>
   <xs:element name="dns" type="ipaddr"/>
 
   <xs:simpleType name="quad">
     <xs:restriction base:"xs:integer">
       <xs:minInclusive value="0"/>
       <xs:maxInclusive value="255"/>
     </xs:restriction>
   </xs:simpleType>
 
   <xs:complexType name="ipaddr">
     <xs:sequence>
       <xs:element name="quad1" type="quad"/>
       <xs:element name="quad2" type="quad"/>
       <xs:element name="quad3" type="quad"/>
       <xs:element name="quad4" type="quad"/>
     </xs:sequence>
   </xs:complexType>
 
   <xs:simpleType name="authent_type">
     <xs:restriction base="xs:string">
       <xs:enumeration value="None"/>
       <xs:enumeration value="Unsecured"/>
       <xs:enumeration value="Secured"/>    
     </xs:restriction>
   </xs:simpleType>
 
   <xs:element name="prov_common">
     <xs:complexType> 
       <xs:sequence>
         <xs:element ref="name"/>
         <xs:element ref="userid"/>
         <xs:element ref="password"/>
         <xs:element ref="authent_type"/>
         <xs:element ref="linger_time"/>
         <xs:element ref="ipaddr"/>
         <xs:element ref="dns"/>
       </xs:sequence>
     </xs:complexType>
  </xs:element>
 
   <xs:element name="csd_provisionning">
     <xs:complexType>
       <xs:sequence>
         <xs:element ref="dialnum"/>
         <xs:element ref="prov_common"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
 
   <xs:element name="gprs_provisionning">
     <xs:complexType>
       <xs:sequence>
         <xs:element ref="apn"/>
         <xs:element ref="prov_common"/>
       </xs:sequence>
     </xs:complexType>
   </xs:element>
 
   <xs:element name="provisionning">
     <xs:complexType>
       <xs:choice>
         <xs:element name="csd_provisionning" type="csd_provisionning"/>
         <xs:element name="gprs_provisionning" type="gprs_provisionning"/>
       </xs:choice>
     </xs:complexType>
   </xs:element>
 
 </xs:schema>