Showing posts with label Close Channel. Show all posts
Showing posts with label Close Channel. Show all posts

Friday, March 21, 2008

Setting up the number of Channel in BIP

<Instance Aid="A0000000185000000000000052414441" Index="1" ApplicationSpecificParameters="7110A0000000185201050000000040534357" EepromSize="0000" RamSize="0000" InstallToken="" Privilege="00">
<!--If you add another Instance, you should increase his Index number-->
<GSMParameter TextMaxLength="14" MaxNumberOfMenuEntries="01" PriorityLevel="FF" TimerMaxNumber="00" Menus="0000">
<!--You can customize the GSM parameters of this Instance here-->
<SIMR5Parameter MaximumChannels="02">
<!--2 Channel -->
</SIMR5Parameter>

</GSMParameter>
<UICCParameter>
<!--You can customize the UICC parameters of this Instance here-->
<UICCToolkitParameter>
<UICCR6ToolkitParameter MaximumNumberOfServices="00"/>
</UICCToolkitParameter>
<!--You can customize the UICC Access Application parameters of this Instance here-->
<UICCAccessApplicationParameter Index="1">
<UICCR6AccessApplicationParameter AccessDomainParameter="00" AccessDomainData=""/>
</UICCAccessApplicationParameter>
</UICCParameter>
</Instance>

Thursday, February 21, 2008

Terminal Response

  • OPEN CHANNEL <-- Channel Identifier
ProactiveResponseHandler ProRespHdlr; // get the system instance
ProRespHdlr = ProactiveResponseHandlerSystem.getTheHandler();
ChannelID = ProRespHdlr.getChannelIdentifier() ;
  • SEND DATA <-- Channel Data Length
  • CLOSE CHANNEL <-- OK
  • GET CHANNEL STATUS <-- Channel Status
  • RECEIVE DATA <-- Channel Data Length , Data
ProactiveResponseHandler ProRespHdlr; // get the system instance
ProRespHdlr = ProactiveResponseHandlerSystem.getTheHandler();
ProRespHdlr.findTLV(TAG_CHANNEL_DATA ,0);
sOffset= ProRespHdlr.copyChannelData(byte[] dstBuffer, short dstOffset, short dstLength) ;
ProRespHdlr.findTLV(TAG_CHANNEL_DATA_LENGTH ,0);
datalength=ProRespHdlr.getValueVyte((short)0x0000);

Wednesday, February 20, 2008

CLOSE CHANNEL BIP

After OPEN Channel, You should know how to close it. Here are some important things you should be aware.
  1. Command details*
    1. command details tag = '81'
    2. length = '03' (1 byte)
    3. command number 01 - FE (1 byte)
    4. Type of Command ='41' (CLOSE CHANNEL)
    5. Command Qualifier :
      • RFU for BIP Client Mode
      • bit 1
        • 0 : close TCP Connection and go to "TCP in CLOSED state"
        • 1 : close TCP Connection and go to "TCP in LISTEN state"
  2. Device identities*
    1. device identities tag = '82'
    2. Length = '02'
    3. Source Device identity = '81' --> UICC
    4. Destination Device Identity = '21'-'27' --> channel ID (PRE_ID _CHANNEL_BASE='20')
  3. Alpha Identifier
    1. Alpha identifier TAG = '05'
    2. Length = 0
    3. Alpha Identifier (TS 131 102)
  4. Icon Identifier
    1. Icon Identifier Tag
    2. Length = '02'
    3. Icon Qualifier
      1. bit 1, 0 = self explanatory, 1 = non self explanatory
      2. bit 2-8 =0 (RFU)
    4. Icon Identifier (TS 131 102)
  5. Text Attribute
    1. Text Attribute Tag = '50'
    2. Length
    3. Text formatting ( TS 123 040)
  6. Frame Identifier
    1. Frame Identifier Tag
    2. Length = '03'
    3. Identifier of Frame, the value is between '00' - '0F'
You don't need to remember the tag value if you use appendTLV function. All of the tag value are explained briefly in uicc.toolkit.ToolkitConstant library.

note :
* mark means mandatory
Channel indentifier must be valid