Hi,
I've created a test harness below to test the Xpedite fax service. We only need to send faxes to individual clients, so the bulk-send or broadcasting functionality is not required by us. I get the error - Object reference not set to an instance of an object at the line 'message.Contents[0] = content;'. Could you please point out the error(s) in this code (I'm using C#.NET and have tried to adapt it from the VB sample).
Thanks,
Amita
---------------------------------------------------------------------------------------------------------------------------------------
using jobsubmit;
public partial class Xpedite_harness : System.Web.UI.Page
{
string message1, message2;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnSendFax_Click(object sender, EventArgs e)
{
jobsubmit.XOA xoa = new XOA();
jobsubmit.Authentication auth = new Authentication();
jobsubmit.JobSubmitResult result = new JobSubmitResult();
jobsubmit.XDDSAuthType xddsauth = new XDDSAuthType();
jobsubmit.JobSubmitRequest jobrequest = new JobSubmitRequest();
xddsauth.RequesterID = "<myUsername>";
xddsauth.Password = "<myPassword>";
auth.XDDSAuth = xddsauth;
jobsubmit.Request request = new Request();
request.Authentication = auth;
request.ReceiverKey = "http://premconn.premiereconnect.com/JobSubmit/2009/07";
request.ResultRequired = jobsubmit.RequiredType.yes;
request.ResultRequiredSpecified = true;
request.RequestID = "Test";
xoa.RequestValue = request;
jobsubmit.DocumentType doctype = new DocumentType();
jobsubmit.DocDataType docdatatype = new DocDataType();
docdatatype.format = jobsubmit.DocEncodingFormat.base64;
message2 = "Test Document for fax";
docdatatype.Value = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(message2));
jobrequest.SubmitId = message1;
jobsubmit.DocumentType document = new DocumentType();
document.DocType = "text";
document.@ref = "DocOne";
jobsubmit.EncodableStringType myFileName = new EncodableStringType();
myFileName.Value = "order.pdf";
document.Filename = myFileName;
document.ItemElementName = jobsubmit.ItemChoiceType.DocData;
document.Item = docdatatype;
jobsubmit.MessageType message = new MessageType();
jobsubmit.ContentPartType content = new ContentPartType();
content.Item = (object)"DocOne";
content.Treatment = TreatmentType.body;
content.TreatmentSpecified = true;
message.Contents[0] = content;
jobsubmit.JobOptionsType joboptions = new JobOptionsType();
joboptions.CustomerReference = new EncodableStringType();
joboptions.CustomerReference.Value = "JobSubmit_Send Fax";
joboptions.BillingCode = new jobsubmit.EncodableStringType();
joboptions.BillingCode.Value = "JobSubmit_Send Fax";
jobsubmit.FaxOptionsType faxoptions = new FaxOptionsType();
faxoptions.FaxMode = FaxModeType.standard;
joboptions.FaxOptions = faxoptions;
message.JobOptions = joboptions;
jobsubmit.ReportOptionsType reports = new ReportOptionsType();
jobsubmit.ReportOptionsTypeDeliveryReport deliveryreport = new ReportOptionsTypeDeliveryReport();
deliveryreport.DeliveryReportType = MainReportTypeEnum.detail;
reports.DeliveryReport = deliveryreport;
message.Reports = reports;
jobsubmit.FaxType deliveryfax = new FaxType();
deliveryfax.Phone = "0292408111";
message.Destinations[0] = deliveryfax;
jobrequest.Message[0] = message;
jobsubmit.Response response = new Response();
xoa.ResponseValue = response;
jobsubmit.JobSubmitResult jobresult = new JobSubmitResult();
try
{
jobresult = xoa.JobSubmit(jobrequest);
}
catch (Exception ex)
{
}
//bool success = false;
//success = xoa.ResponseValue;
if (jobresult.Status.StatusCode.Equals("0"))
{
try
{
string sJobNumber = jobresult.MessageResult[0].JobId.XDN + ":" + jobresult.MessageResult[0].JobId.MRN;
}
catch (Exception ex1)
{
}
}
DateTime myDateTime, localDateTime;
myDateTime = jobresult.MessageResult[0].Status.SubmissionTime;
localDateTime = myDateTime.ToLocalTime();
}
}