inside header
 
Contact Importer
Requirements
Live Sites
Contact Importer FAQ
Data Poster
Live Sites
Data Poster FAQ
  Contact Importer : Frequently Asked Questions  

Here are brief explanations for some of the questions that you may have about Improsys :: Products :: Contact Importer.



Why to choose Improsys Contact Importer ?

Improsys is the first company around the world who introduced Contact Importer as a product.
Improsys have long time working experience with the Contacs Importer.
Improsys Contact Importer has been tested and trusted by a lot of customers around the world.
Improsys Contact Importer is always updated and very easy to install.
Improsys have an Automated products and update delivery system.
Improsys have a dedicated team working behind Contact Importer to always keep it running.

Back to Top


Hotmail contact Importers uses API or web scrapping?

Hotmail contact importer uses both API and web scrapping. Actually we provide two version. One use API and another uses web scrapping for fetching contacts. If you need to use contact importer in high trafic website, then web scraping version is perfect for you.

Back to Top


Is sources well documented?

Yes, source code is documented and very easy to understand.

Back to Top


Is PHP source code encrypted ?

No, PHP source code is not encrypted. You will get all lines of code.

Back to Top


How many files in PHP contact importer and what is their function?

There are 7 files in PHP contact Importer. They are

Readme.txt- Installation instruction.
index.php- That user see, it include gmail.php/aol.php/yahoo.php/hotmail.php dynamically depending on which type of webmail user selected. Feel free to change it or see how this work in code and implement its code in your application.
gmail.php- gmail importer engine. Dont change code of it.Change is not recommended.(Available if you have purchased gmail importer)
yahoo.php- yahoo importer engine.Dont change code of it.Change is not recommended..(Available if you have purchased yahoo importer)
aol.php- Aol importer engine.Dont change code of it.Change is not recommended.(Available if you have purchased aol importer)
hotmail.php- Hotmail importer engine.Dont change code of it.Change is not recommended..(Available if you have purchased hotmail importer)
grab_globals.lib.php- Grab global variables in case PHP is set to global variables is off.

All importer engine containing three common functions, they are login($username,$password); Used for login get_address_page(); Used to get address page parser($str); Used to retreive contacts in two array, they are $email_array and $name_array

 

Back to Top


What is the Update Process of PHP importer?

When an webmail change then we have to update our importer, we update that webmail's contact importer engine and send that to client. If hotmail.com change then we update hotmail.php and send that. Thats why we dont recommend you to change code for hotmai.php/gmai.php/yahoo.php or aol.php.

 

Back to Top


How long I will receive free updates ?

You will receive six month free updates after purchasing contact importer.

 

Back to Top


How much is update fee ?

Please check Contact Importer : Update Service.

 

Back to Top


How Frequently webmails changes ?

Webmails changes atleast one time within two month. Sometime they chance twice in a week.

 

Back to Top


How can I use ASP Component?

It does not require any ActiveX component to have installed. Just place the files in your server.

 

Back to Top


What is the syntax for using ContactImporter ASP Contact Importer component in VB Script?

Set cimp= server.CreateObject("IMPContactImporter.ContactImporter")
cimp.contactimporter(userId,password,host)

'Example:

'To access contacts from improsys@hotmail.com .
if(cimp.contactimporter("improsys", "123456", "hotmail.com"))then
 numberOfContacts=cimp.ContactsLength
 
'cimp.DisplayName is containing Names of contacts

'cimp.Email is containing emails of contacts


'To print all contacts
for i=0 to (numberOfContacts-1)
  response.write("Name=" & cimp.DisplayName(i))
  response.write("Name=" & cimp.Email(i))
 next 

else
  response.Write "Invalid login"
end if

Back to Top


What is the syntax for using ContactImporter .Net component in VB.Net?

Dim ci As New ContactImporter("email_id", "password", "email_type")

'Example:

'To access contacts from improsys@hotmail.com . example dim ci as new

'ContactImporter("improsys", "123456", "hotmail.com")

'To access contacts from improsys@gmail.com . example dim ci as new

'ContactImporter("improsys", "123456", "gmail.com")

'To access contacts from improsys@yahoo.com . example dim ci as new

' ContactImporter("improsys", "123456", "yahoo.com")

ci.login()

If ci.logged_in = True Then

ci.getcontacts()

'ci.nameArray is containing Names of contacts

'ci.emailArray is containing emails of contacts

'To print all contacts

Dim i As Integer
For i = 0 To ci.nameArray.Length
    Response.Write("name=" & ci.nameArray(i))
    Response.Write("email=" & ci.emailArray(i))
Next

Else
     Response.Write("Incorrect Username or Password")
End If

Back to Top


What is the syntax for using ContactImporter.Net component in C#?

ContactImporter ci=new ContactImporter("email_id","paasoword","email_type.com"); Example: //To access contacts from improsys@hotmail.com . example dim ci as new
ContactImporter("improsys","123456","hotmail.com")

//To access contacts from improsys@gmail.com . example dim ci as new
ContactImporter("improsys","123456","gmail.com")

//To access contacts from improsys@yahoo.com . example dim ci as new
ContactImporter("improsys","123456","yahoo.com")
    ci.login();

    if(ci.logged_in)
    {
     ci.getcontacts();

    for(int i=0;i<emailArray.Length;i++)
       {
             Response.write(ci.nameArray[i]);    
             Response.write(ci.emailArray[i]);
        }
    }


Back to Top


What is the syntax for using ContactImporter component from Ruby?

ci=Getway.new("email-id","password","email_type")

Example:

require 'Getway.rb'

#For improsys@hotmail.com
ci=Getway.new("improsys","123456","hotmail")

#For improsys@yahoo.com
ci=Getway.new("improsys","123456","yahoo")

#For improsys@gmail.com
ci=Getway.new("improsys","123456","gmail")

#For improsys@aol.com
ci=Getway.new("improsys","123456","aol")

result={}
result=ci.interface
if(result[:success]==true)
  contacts=conts.get_contacts
  if(contacts[0][:name].to_s!="" && contacts[0][:email].to_s!="")
    for i in 0..(contacts.length-1)
        print "Name:  "+ contacts[i][:name].to_s+"\n"
        print "Email:  "+  contacts[i][:email].to_s+"\n"
    end  
  else
    print "No address found"
  end 
else
    print "Invalid login"
end


Back to Top


What is the syntax for using ContactImporter component from Rails?

1. Code in controller:
 #The first line before the conrroller class:

       require "Getway.rb"

 #now in the index method
 @result={:success=>""}

 user_id="improsys"
 password="123"

 #For improsys@yahoo.com
 type="yahoo"  

 #For improsys@hotmail.com
 type="hotmail"  

 #For improsys@aol.com
 type="aol"  

 #For improsys@gmail.com
 type="gmail" 

 @result={:success=>""}
 @conts = Getway.new(user_id,password,type)
 @result=@conts.interface
 if(@result[:success]==true)
    @contacts=@conts.get_contacts
    if(@contacts[0][:name].to_s!="" && @contacts[0][:email].to_s!="")
      @len=@contacts.length
    else
      @len=0
    end 
 end 

  1. Code in the index.html.erb:

      <% if(@result[:success]==true)
           for i in 0..(@len-1)%>
             Name=  <%=(@contacts[i][:name]=="") ? "N/A":@contacts[i][:name]%><br>
             Email= <%=(@contacts[i][:email]=="") ? "N/A":@contacts[i][:email]%><br><br>
        <% end %>
      <% end %>

Back to Top


What is the syntax for using ContactImporter component in Cold Fusion?

<!---For improsys@yahoo.com-->
<cfset type="yahoo">
<cfset username="improsys">
<cfset password="123456">

<!---For improsys@hotmail.com-->
<cfset type="hotmail">
<cfset username="improsys@hotmail.com">
<cfset password="123456">

<!---For improsys@aol.com-->
<cfset type="aol">
<cfset username="improsys">
<cfset password="123456">

<!---For improsys@gmail.com-->
<cfset type="gmail">
<cfset username="improsys">
<cfset password="123456">

<cfset login=false>
<cfset EmArray=ArrayNew(1)> 
<cfset NmArray=ArrayNew(1)>

<cfinclude  template="#type#.cfm" />
<cfif #login# is true>
         <cfset c=ArrayLen(EmArray) />
          <cfloop index = "i" from = "1" to = #c#>
             <cfoutput>Name= <cfif trim(NmArray[i]) is ""><i>NA</i><cfelse>#NmArray[i]#</cfif> </cfoutput><br>
            <cfoutput>Email= #EmArray[i]# </cfoutput><br><br>
          </cfloop>
          <cfif ArrayLen(EmArray) is 0>
            <h1>No address found</h1>
         </cfif>
     <cfelse>
            <h1>Invalid login</h1>
     </cfif>


Back to Top


What is the syntax for using ContactImporter component in Perl?

#!/usr/local/bin/perl

use CGI qw(:standard);
use URI::Escape;
use WWW::Mechanize;
use HTTP::Cookies;

use Importer::Yahoo;
$importer = new Yahoo;
$username = "improsys";
$password = "123456";

if($importer->login($username,$password) eq "true")
      {
          my $str = $importer->get_address_page();
          my @contacts = $importer->parser($str);
          my $totalContact = @{@contacts[0]};
          my $i=1;

          foreach $contact (@{@contacts[0]})
          {
            print "Name: ".$contact."<br>";
            print "Email: ".$contacts[1][$i-1]."<br><br>";
            $i++;
          }

          if($totalContact eq 0)
          {
            print "No contact found.";
          }
      }
      else
      {
          print "Invalid Login.";
      }
      print end_html;




Back to Top


What is the update process for Contact Importer .Net component?

We will send you updated dll and also updated source code.

 

Back to Top


How many years ago Improsys released Contact Importer?

We have released Contact Importer on 2004 and from then we are continuing it successfully.

 

Back to Top


How to use Contact Importer in a Servlet?

Sample code to use in a Servlet

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import improsys.contactimport.common.*;

public class ContactImporterServlet extends HttpServlet
{

public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
PrintWriter out = response.getWriter();
try
{
String site = request.getParameter("site");
String userid = request.getParameter("userid");
String password = request.getParameter("password");

if(site.compareToIgnoreCase("hotmail"==0)
{
userid = userid + "@hotmail.com";
}
FourInOne importer = new FourInOne(userid,password);
importer.setType(site);
importer.doLogin();
Contacts contacts[] = importer.getContacts();

StringBuffer outString = new StringBuffer("<table><tr><th>Name</th><th>Email</th></tr>");
for(int i=0;i<contacts.length;i++)
{
sb.append("tr><td>"+contacts[i].getName()+"</td><td>"+contacts[i].getEmailAddress()+"</td></tr>" );
}
sb.append("<tr><td colspan=\"2\">Total contacts found : " + contacts.length + "</tr></table>");
out.print(sb.toString());
}
catch(Exception e)
{
out.print("<strong>Exception caugth : </strong>" + e.getMessage());
}

}

public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {

doGet(request,response);

}

}

Back to Top


How to use Contact Importer in a JSP page?

<%@ page language="java" contentType="text/html" %>

<% String user = request.getParameter("user"); %>
<% String password = request.getParameter("password"); %>
<% String parser = request.getParameter("parser"); %>
<% String userId = "";%>
<%
if(user == null) user = "";
if(password == null) password = "";
if(parser == null) parser = "AOL"; //default
if( user != null && user.length() > 0
&& password != null && password.length() > 0
&& parser != null && parser.length() > 0
)
{

try
{


userId = user;

userId = user;

if(parser.equals("HOTMAIL"))
userId = user+"@hotmail.com";

improsys.contactimport.common.FourInOne imp = new improsys.contactimport.common.FourInOne(userId, password);;

imp.setType(parser);

imp.doLogin();
if(!imp.isLoggedIn())
throw new Exception("Can not be logged in as " + user + " to " + parser.toLowerCase()+".com with the given password.");

improsys.contactimport.common.Contact al[] = imp.getContacts();
if (al==null)
throw new Exception("Unable to parse contacts for " + user + " at " + parser.toLowerCase()+".com");
%>
<table width="68%" border="0" align="center" cellpadding="1" cellspacing="0" bgcolor="#F2F1F0">
<tr>
<td width="100%">
<table border="0" align="center" cellpadding="2" cellspacing="0">
<tr align="center" bgcolor="#99FFFF">
<td colspan="2"> <font color="#006699" size="2" face="Arial, Helvetica, sans-serif">
<strong><%=parser%> Address Book for <%=user%><br>
</strong> <font face="Verdana, Arial, Helvetica, sans-serif">
Total Address found <%=al.length%> </font> </font> </td>
</tr>
<tr align="center" bgcolor="#99CCFF">
<td width="50%" align="left" style="PADDING-LEFT: 12px"> <font color="#000066" size="2" face="Arial, Helvetica, sans-serif">
<strong>Display Name</strong> </font> </td>
<td width="50%" align="left" bgcolor="#99CCFF" style="PADDING-LEFT: 12px">
<font color="#000066" size="2" face="Arial, Helvetica, sans-serif">
<strong>Email ID</strong> </font>
</td>
</tr>
<%

//show others
for(int i=0; i < al.length; i++)
{
%>
<tr>
<td align="left" style="PADDING-LEFT: 12px">
<%
if(al[i].getEmailAddress().equals(""))
{
%>

<td align="left" style="PADDING-LEFT: 12px"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<%if(al[i].getName().equals(""))
out.println("<i>NA</i>");
else
out.println(al[i].getName());
%>
</font>
</td>
<td style="PADDING-LEFT: 12px"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<%if(al[i].getEmailAddress().equals(""))
out.println("<i>NA</i>");
else
out.println(al[i].getEmailAddress());
%>
</font> </td>
</tr>
<%
}//for 1

if(al.length == 0)
{
%>
<tr align="center">
<td colspan="3" style="PADDING-LEFT: 12px"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<em>No Address found.</em> </font> </td>
</tr>
<%
}
}//try
catch(Exception e)
{
out.println("<p><div align=center><strong>"+e.getMessage()+"</strong></div></p>");
}

}//master if
%>
</table>
</table>

Back to Top


What are the dependency libraries for contact importer?

The following open source jakarta libraries are the only dependency for the contact-importer library :

Back to Top


Are the dependency libraries included in the deliverable package?

Yes, as the libraries used in contact importer are published under Apache 2.0 Licence, they can be distributed with commercial softwares. So, we packaged the required libraries in our deployment package for contact importer.

Back to Top


What is the minimum Jdk version for contact importer to work?

Jdk 1.4.2 or higher version is required to get the contact importer working properly.

Back to Top


<< Go Back to Contact Importer Page >>

 

© 2004 - 2008 Improsys. All rights reserved. ± Terms and conditions ± Privacy Policy