Preparing Servers for Internet Sign-up (ISPs)

Cc939858.chap_13(en-us,TechNet.10).gifCc939858.image(en-us,TechNet.10).gif

An Internet sign-up server is an HTTP server that automates the task of adding new customers to an ISP's customer database. The Internet sign-up server collects information from each new customer, adds the information to the ISP's customer database, and then passes a configuration packet back to the customer's desktop computer. The configuration packet contains information that is used to configure the customer's Internet browser for subsequent connection to the ISP's services.

To add a new customer to the ISP's database, the Internet sign-up server:

  • Causes the client computer to establish an HTTP connection with the sign-up server.

  • Collects sign-up information from the customer.

  • Handles the customer's acceptance or refusal of the ISP's services.

When using the IEAK, three options are available for performing Internet sign-up:

  • Server-based sign-up by using the Internet Connection wizard (ICW)

  • Server-based sign-up by using the browser in Kiosk mode

  • Serverless sign-up

Server-based sign-up is preferred, unless you can't provide a sign-up server, because settings are easier to change on the server than on the client. Of the two server-based options, the ICW method is recommended, because it uses a standard wizard interface that can be customized to fit your needs. This section will help you prepare for Internet sign-up by using the ICW.

If you're an ISP, you can specify the ICW as the tool that customers use to sign up for Internet services and configure their computers.

Important If you are using single-disk branding and you anticipate that some of your users will have Internet Explorer 4.01 Service Pack 1, you should not use ICW mode sign-up; you should Kiosk-mode sign-up instead. If you think some customers will have a later version of Internet Explorer, then you can create an IEAK package that contains both sign-up solutions.

Customizable solutions for Internet sign-up are located in the IEAK Toolkit. The code is provided in Active Server Pages as well as in Perl format, allowing you to build an ICW sign-up process for Web servers on different platforms with a minimum of effort. If you use the sample code, the only work you need to do is to integrate the sign-up server with your registration and billing systems. In the Windows 98 Referral Server Program, the sign-up server code is similar for both IEAK sign-up and Referral Server registrations.

The following sections describe how to develop a sign-up process for the ICW. Although these sections describe a tested, comprehensive sign-up solution, which is recommended in most cases, you can customize the sign-up process further to meet the needs of your organization.

Note Because the IEAK solution includes multiple Internet sign-up (.isp) files for different customer needs, you must also include the Dynamic HTML Data Binding component in your custom package.

For general information about Internet sign-up and implementing the sign-up process, see Chapter 20 , "Implementing the Sign-up Process."

Meeting Coding and Accessibility Requirements for Internet Sign-up by Using the ICW

To prepare your Internet server, you need to design HTML pages on your server that will interact with the customer during Internet sign-up.

The new ICW-mode sign-up mechanism in the IEAK is designed so that an Internet sign-up server looks and acts like a standard Windows wizard. Although the ICW uses the power and flexibility of HTML, it does not use the same formatting as HTML.

HTML pages in the ICW must use the Windows system colors and fonts and also must meet accessibility requirements. Unless otherwise specified, the ICW HTML pages cannot contain any special HTML formatting, such as tables with visible borders, images, or anchors. Only plain text and FORM elements (where required) are allowed. Tables with invisible borders can be used for layout.

To match the user's system colors, all HTML pages except the Icwsign.htm page should contain no color or font attributes unless otherwise specified.

The only requirement for implementing forms within the HTML pages is that the forms use the NAME attribute in FORM elements defined in the specification.

Back and Next Button Functionality

ICW-mode sign-up has specific requirements that must be met for the Back and Next buttons in the Internet Connection wizard to work correctly.

Back Button

For the Back button to work correctly, you must add a FORM element to the sign-up server page that specifies the URL of the Back button. To retain the data previously collected in the sign-up process, you must append it to the URL for the Back button page.

The following example shows the FORM element that's used with the Back button for sending the user to the previous page of the sign-up process. Note that the data for the first and last names is appended to the URL in name/value pairs:

<FORM NAME="BACK"ACTION="https://myserver/page2.mspx"?firstname=bob&lastname=smith&address=..."></FORM>

Note All letters in the NAME attribute and its value must be capitalized because the ICW is case-sensitive.

Next Button

For the Next button to work properly, you must add a FORM element to the sign-up server page that specifies the URL of the Next button. For the data collected to be passed to the next page in the sign-up process, you must add hidden FORM fields on each of your sign-up server pages that contain the data elements collected on this and all previous pages. The URL you reference must contain code that collects the data from the previous page and displays the next page of the sign-up process.

The following example shows the FORM element that's used with the Next button for sending the user to the next page of the sign-up process:

<FORM NAME="NEXT" ACTION="https://myserver/page2.mspx"></FORM>

The sample sign-up server code included in the IEAK already conforms to these requirements.

Accessibility

To ensure that the elements on the page are accessible by using only the keyboard, you should check that each FORM element meets the following requirements:

  • An access key (hot key) must be associated with the FORM element. Use the Internet Explorer ACCESSKEY attribute in the INPUT element. The access-key character should be highlighted with an underline by using an Underline tag. The letters b, f, g, n, and o are reserved for the ICW and cannot be used as access keys. For more information about the ACCESSKEY attribute, see the MSDN Online Web site.

  • Each FORM element on the page must be part of the ICW tab-key order. To be included in the ICW tab-key order, the element must have a unique ID in the INPUT element.

  • Each FORM element should have a label associated with it. To associate a label for the different FORM input types, use the Internet Explorer LABEL attribute.

The following example shows a radio button FORM element that meets these accessibility requirements:

<input ID="option2"
type="radio"
name="billing"
value="hour" 
accesskey="h"
checked>

<label for="option2"> 
5 <u>H</u>ours per month for $10. 
</label>

Designing HTML Pages for ICW Sign-up

Each page of the Internet Connection wizard should have the following design elements and adhere to the following design conventions.

Style Sheet

If you use a style sheet, do not specify any font style or color attributes in it. The parent wizard sets these attributes. If you use a TABLE element in your error pages, the element must include a STYLE attribute - for example:

<TABLE style="font: 8pt 'ms sans serif' buttontext"> </TABLE>

Design Restrictions

Only text and FORM elements are allowed. Do not use images, links, or scroll bars in your design.

Required Form Elements

The HTML page must include four FORM elements that specify different page properties:

  • The unique PAGEID for the page - The NAME attribute for the FORM element must be "PAGEID" (case sensitive). The ACTION attribute of the FORM element must be a unique ID that does not match the PAGEID of any other page in the ISP section of the wizard, as shown in this example: <FORM NAME="PAGEID" ACTION="page4"></FORM>

  • The Back button function - The NAME attribute for the FORM element must be "BACK" (case sensitive). The ACTION attribute for the FORM element should be the absolute URL for the previous page, as shown in this example: <FORM NAME="PAGEID" ACTION="https://signup/bin/page1.cgi"></FORM>
    Note, however, that no data is posted to this page.

  • The characteristics of the page - The NAME attribute for the FORM element must be "PAGETYPE" (case sensitive). Because this is a standard frame where the ISP defines the entire space, the ACTION attribute for the FORM element must be an empty string, as shown in this example: <FORM NAME="PAGETYPE" ACTION=""></FORM>

  • The Next button function - The NAME attribute for the FORM element must be "NEXT" (case sensitive). There are no restrictions on the token names for the INPUT elements within the FORM element. The ACTION attribute for the FORM element should be the absolute URL where the form information should be posted. The URL that you post on your server should contain a script that receives the data and then displays the next HTML page of the wizard.

Working with the ICW Sample Sign-up Files

If you want to simulate the sign-up process before creating your own files, you can use the sample files from the IEAK Toolkit. The sample files can give you a general idea of how the sign-up process works and the type of information that you'll need to provide.

Cc939858.prcarrow(en-us,TechNet.10).gifTo test the sample sign-up files on your server

  1. Create a subfolder named Signup in the wwwroot folder on your server.

  2. Copy the files from the Toolkit folder to the Signup subfolder.

  3. In the files, change all the references to point to your sign-up server.

  4. In the HTML code of the sign-up server pages, change all the references from the sample company name to your organization's name.

  5. Modify the last sign-up server page to reflect your .ins settings.

Creating Initial, Error, and Finish Pages for ICW Sign-up

For ICW sign-up, you need to design the initial page the user sees (Icwsign.htm), error pages, and the finish page.

Initial Page (Icwsign.htm)

The initial page that the user sees after installing Internet Explorer 5 and restarting the computer is the branded Icwsign.htm page. This page is specified in the IEAK and is included in your build of Internet Explorer 5. It is not hosted on your sign-up server.

On the Icwsign.htm page, the user sees welcome information from the ISP and is asked to either click Next to begin the sign-up process (if there is only one ISP file needed for sign-up) or to select the city and state being dialed from so that the ICW can select the appropriate sign-up server ISP file to use. When the user clicks Next , the ICW dials and connects the user to the ISP sign-up server.

Error Pages for ICW Sign-up

If the data submitted to the sign-up server is invalid at any time during the sign-up process, the server can display an HTML page with a friendly error message. An example would be if the user requests an e-mail name that is already in use.

The error HTML page that is sent by the ISP's sign-up server is displayed in a floating frame within the wizard. The frame is 444 pixels wide by 273 pixels high. Scroll bars do not appear if the HTML page exceeds these dimensions.

The frame should contain text that lets the user know that the data entered was invalid and provides the FORM elements required for the user to enter new data.

For information about HTML design and required FORM elements, see "Designing HTML Pages for ICW Sign-up" earlier in this chapter.

Finish Page for ICW Sign-up

When the user clicks Next on the ISP finish page, the .ins file is processed and the computer is configured for the new Internet account. After this is done, the ICW displays its final page, which informs the user that the Internet connection is ready and tells the user how to begin browsing the Internet. There is no ISP-configurable interface on this page.

The finish page also provides the option of beginning browsing immediately when the user selects the Begin browsing immediately check box. You can use the StartURL value in the .ins file to specify the page the browser displays when it first opens.

Note After the user has finished the sign-up process, your sign-up server must return information about how to configure the user's computer for Internet access. The .ins file, downloaded at the end of your sign-up process, contains this information.

Creating the Name and Address Page for ICW Sign-up

When a user connects to your sign-up server, the first page the user sees is the name and address page.

The name and address HTML page is displayed in a frame within the wizard. The frame is 444 pixels wide by 273 pixels high. Scroll bars do not appear if the HTML page exceeds these dimensions.

For information about HTML design and required form elements, see "Designing HTML Pages for ICW Sign-up" earlier in this chapter.

Creating the Billing Options Page for ICW Sign-up

On the Billing Options page, you can present the service billing options from which the user can choose. The options are presented using an HTML form within a frame in the wizard window.

The user should be able to select an option by clicking an HTML radio button, and one of the radio-button options must be selected by default. If the user needs to make multiple selections, you can also include HTML check boxes in the frame.

The billing-option HTML page that you supply is displayed in a floating frame within the wizard. The frame is 444 pixels wide by 273 pixels high. Scroll bars do not appear if the HTML page exceeds these dimensions.

For information about HTML design and required form elements, see "Designing HTML Pages for ICW Sign-up" earlier in this chapter.

Creating the Method of Payment Page for ICW Sign-up

The Method of Payment page is where users specify how they want to pay for the Internet service. Each ISP controls which payment methods are available in the Payment Method list. Payment information is collected in the form that appears in a frame below the selection, which changes depending on the payment method selected in the list.

You can choose to offer any type of payment method:

  • Credit card (you can specify the type of card, such as Visa or American Express)

  • Debit card

  • Invoice

  • Phone bill charges

For information about HTML design and required form elements, see "Designing HTML Pages for ICW Sign-up" earlier in this chapter.

Creating the ISP Account Login/E-Mail Screen for ICW Sign-up

The account login/e-mail page enables the user to select an account login and/or e-mail ID and password.

The HTML page that is sent by your sign-up server for account login and e-mail is displayed in a floating frame within the wizard. The frame is 444 pixels wide by 273 pixels high. Scroll bars do not appear if the HTML page exceeds these dimensions.

For information about HTML design and required form elements, see "Designing HTML Pages for ICW Sign-up" earlier in this chapter.

Creating the ISP POP Selection Page for ICW Sign-up

The POP selection page is where the user selects a local phone number for Internet access.

The HTML page that is sent by the ISP's sign-up server for POP selection is displayed in a floating frame within the wizard. The frame is 444 pixels wide by 273 pixels high. Scroll bars do not appear if the HTML page exceeds these dimensions.

The user should not be asked to enter an area code or phone number a second time. Any area code or phone number fields in the frame should be prepopulated using the information already sent to the ISP's sign-up server from the name and address page.

For information about HTML design and required form elements, see "Designing HTML Pages for ICW Sign-up" earlier in this chapter.

Creating the ISP Terms and Conditions Page for ICW Sign-up

The ISP Terms and Conditions page is where the ISP displays the legal agreement that the user must read to subscribe to the service. To ensure that the user accepts the agreement, the Next button of the ICW is not available until the user clicks the I accept the agreement check box.

The user can save the HTML page for ISP terms and conditions for viewing later by clicking the Save Copy button. After clicking the button, the user is prompted to enter a file name and path for where the file should be saved. The actual terms and conditions HTML file from the ISP's sign-up server will be saved to that location.

The HTML page that is sent by the ISP's sign-up server for Terms and Conditions is displayed in a floating frame with a 2-pixel border within the wizard. The frame's width is 426 pixels (without the 2-pixel border and vertical scroll bar). A horizontal scroll bar does not appear if the HTML page exceeds the width dimension.

The Terms and Conditions page should begin with the document's title and instructions explaining how users can find a copy of the legal document on the ISP's Web site if they want to view it again or print it.

For information about HTML design and required form elements, see "Designing HTML Pages for ICW Sign-up" earlier in this chapter.

Note There are no accessibility requirements for this page because no HTML form elements are allowed on the page.

Using ICW Automatic Reconfiguration for ISP Sign-up

ICW Automatic Reconfiguration enables users who already have an Internet account with an Internet service provider to have an account setting automatically reconfigured. When users buy a new computer, this feature helps them configure it for the same Internet account they had on a previous computer or on a computer at work. It also helps users whose Internet settings have become corrupted. The Automatic Reconfiguration feature restores the user's settings; the user needs to know only the user name, password, and POP server.

In a custom version of Internet Explorer, the user reaches the automatic reconfiguration server by clicking a link on the Icwsign.htm page. This link connects the user to the registration server.

After the user is connected to your sign-up server, you can ask for the user name, password, and POP server. With this information, you can send an .ins file to the user's computer to reconfigure the user's account.

Supporting ICW Automatic Reconfiguration

You can use two methods with ICW Automatic Reconfiguration to restore user accounts:

  • Ask the user for the user name, password, and POP server. This should be sufficient information for you to recreate the .ins file, send it to the user, and reconfigure the account. If you are concerned about abuse of this feature, you might want to recollect the user's credit card number and run a check against the registration database.

  • Store .ins files in the same location as the rest of the user's account information. When a user connects to the Automatic Reconfiguration server, the user can obtain the .ins file by providing only the user name and password. The server would then look up the user's account and deliver a copy of the user's original .ins file. As noted for the previous method, if you are concerned about abuse of this feature, you might want to recollect the user's credit card number and run a check against the registration database.

To set up ICW Automatic Reconfiguration, follow the coding and accessibility requirements for ICW sign-up and design the ISP account login/e-mail page, the ISP POP selection page, and the ISP finish page.

Working with the Sample Sign-up Automatic Reconfiguration Files

If you want to simulate the Automatic Reconfiguration process before creating your own files, you can use the sample files from the IEAK Toolkit. To do this, carry out the following steps:

Cc939858.prcarrow(en-us,TechNet.10).gifTo work with the sample sign-up pages for Automatic Reconfiguration

  1. Create a folder named Autocfg in the wwwroot folder on your server.

  2. Copy the files from the Toolkit folder to the Autocfg folder.

  3. In the files, change all the references to point to your sign-up server.

  4. In the HTML code of the sign-up server pages, change all the references from Acme ISP to your organization's name.

  5. Modify the last sign-up server page to reflect your .ins settings.

The following sample files can give you a general idea of how the sign-up process works and the type of information that you'll need to provide.

  • ISP Account Login/E-mail page - This is the first page on the Automatic Reconfiguration server, which asks the user to provide the account login and/or e-mail ID and password. It is similar in design to the ISP Account Login/E-mail page for traditional ICW sign-up.

  • ISP POP selection page - The POP selection page is where the user selects a local phone number for Internet access. After the user provides this information, the ISP should have sufficient information to recreate the .ins file. It is similar in design to the ISP Account Login/E-mail page for traditional ICW sign-up.

  • ISP finish page - This is the last page of the Automatic Reconfiguration account restoration. The text provided by your HTML page is purely informational with no visible FORM elements. The check box and text at the bottom of the page are provided by the ICW. If the user selects the check box and clicks Next , the HTML code from your sign-up server shown on this page is saved to the user's desktop as an HTML file. The user can refer to this file to remember passwords or service information.

You can also decide whether you want to display the Save Information check box and text. By default, it is not shown. To turn on the check box, add the following form type to the HTML code for the finish page:

<FORM NAME=PAGEFLAG ACTION=1></FORM>

Sign-up Server Considerations for Internet Information Server

If you are using IIS as your sign-up server, you must configure the Internet sign-up server to provide a DHCP IP address to the client when the client connects to the server. Because the sign-up process is relatively short, the expiration time for the IP address lease can be small, possibly only a few minutes.

The sign-up processing is intended to be used over a point-to-point dial-up connection, so the IP addresses allocated for the DHCP server need not be formally assigned IP addresses. It is your responsibility to determine whether the DHCP IP addresses will be valid Internet addresses or arbitrary addresses.

For the client to process the .ins file automatically, you must register a Multipurpose Internet Mail Extensions (MIME) type for the .ins file with the sign-up server. The .ins file has been assigned the "application/x-Internet-signup" Type. When the client requests an .ins file, the sign-up server responds with this MIME type, which starts the associated installation application on the client side.

.