Java User’s Guide
13.1 Using the AT Command API
122
s
wm_java_usersguide_v12 Page 116 of 123 2008-02-25
Confidential / Released
These streams behave slightly differently than regular data streams. The streams are not
closed by using the close() method. A stream remains open until the release() method is called.
A module can be switched from the data mode to the AT command mode by calling the break-
Connection() method.
An IOException is thrown if any function of the I/O streams are called when the module is in AT
command mode, except for read functions. The read function case is explained in more detail
in Section 13.1.3. The ATCommand class does not report the result codes returned after data
connection release.
Data Connections are not only used for data transfer over the air but also to access external
hardware. Here is a list of at commands which open a data connection:
atd, for data calls
AT^SSPI, for access to I2C/SPI
AT^SIS commands for Internet services
For data connection signaling see also Section 13.1.3.
/* continue example */
if (rcv != -1) {
// Now break the data connection
System.out.println("\n\n\rBreaking connection");
try {
strRcv = ATCmd.breakConnection();
} catch(Exception e) {
System.out.println(e);
}
System.out.println("received: " + strRcv);
} else {
// Received EOF, somebody else broke the connection
System.out.println("\n\n\rSomebody else switched to " +
"command mode!");
}
System.out.println("Hanging up");
strRcv = ATCmd.send("ATH\r");
System.out.println("received: " + strRcv);
} catch(IOException e) {
System.out.println(e);
}
} else {
System.out.println("No data connection established,");
}