|
Anonymous wrote:
What you mean exactly ?
If its possible to detect bad or bounced mail and have some kind of report of bouncing addresses, is that from the smtp side or from the pop side?
Thanks
|
|
|
|
|
Currently sender gets undelivery report, if no sender specified no report is generated.
|
|
|
|
|
is it possible to route an incoming email to 2 email addresses?
I tried "myemail@mycompany.com;myemail2@mycompany.com" and "myemail@mycompany.com, myemail2@mycompany.com" and neither worked.
any suggestions?
|
|
|
|
|
Hi,
Currently you can't.
But there is 1 workaorund. Make mailing list to destination users and route to this mailing list.
|
|
|
|
|
Hi, I'm trying to run the webmail component. If I run it preserving the directory structure from the original file (placing the first MailServer directory under c:\inetpub\wwwroot so IIS can see it) I get the following error:
Compilation Error
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.
Compiler Error Message: CS0246: The type or namespace name 'LumiSoft' could not be found (are you missing a using directive or an assembly reference?)
Source Error:
Line 5: <%@ Import Namespace="System.Data.SqlClient" %>
Line 6:
Line 7: <%@ Import Namespace="LumiSoft.Net.IMAP.Client" %>
Line 8: <%@ Import Namespace="LumiSoft.Wisk.Text" %>
Line 9: <%@ Import Namespace="Npgsql"%>
Source File: C:\Inetpub\wwwroot\MailServer\webmail\login.aspx Line: 7
If I just use the webmail directory and put that under inetpub\wwwroot I get the login page, but when I try to log in it says: No connection could be made because the target machine actively refused it.
I set up al of the SQL Server tables and stored procedures. I set up a login both in the users table and also within the mail manager. I set up the mail server and it is running fine. Any ideas on this?
Regards,
Dinesh
P.S. This is a great example keep up the good work
irective or an assembly reference?)
C:\Inetpub\wwwroot\MailServer\webmail\login.aspx(8,11): error CS0246: The type or namespace name 'LumiSoft' could not be found (are you missing a using directive or an assembly reference?)
C:\Inetpub\wwwroot\MailServer\webmail\login.aspx(9,11): error CS0246: The type or namespace name 'Npgsql' could not be found (are you missing a using directive or an assembly reference?)
C:\Inetpub\wwwroot\MailServer\webmail\login.aspx(15,9): error CS0246: The type or namespace name 'WText' could not be found (are you missing a using directive or an assembly reference?)
Show Complete Compilation Source:
Line 1: //------------------------------------------------------------------------------
Line 2: // <autogenerated>
Line 3: // This code was generated by a tool.
Line 4: // Runtime Version: 1.1.4322.573
Line 5: //
Line 6: // Changes to this file may cause incorrect behavior and will be lost if
Line 7: // the code is regenerated.
Line 8: //
Line 9: //------------------------------------------------------------------------------
Line 10:
Line 11: namespace ASP {
Line 12: using System;
Line 13: using System.Collections;
Line 14: using System.Collections.Specialized;
Line 15: using System.Configuration;
Line 16: using System.Text;
Line 17: using System.Text.RegularExpressions;
Line 18: using System.Web;
Line 19: using System.Web.Caching;
Line 20: using System.Web.SessionState;
Line 21: using System.Web.Security;
Line 22: using System.Web.UI;
Line 23: using System.Web.UI.WebControls;
Line 24: using System.Web.UI.HtmlControls;
Line 25:
Line 26: #line 3 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 27: using System.IO;
Line 28:
Line 29: #line default
Line 30: #line hidden
Line 31:
Line 32: #line 4 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 33: using System.Data;
Line 34:
Line 35: #line default
Line 36: #line hidden
Line 37:
Line 38: #line 5 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 39: using System.Data.SqlClient;
Line 40:
Line 41: #line default
Line 42: #line hidden
Line 43:
Line 44: #line 7 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 45: using LumiSoft.Net.IMAP.Client;
Line 46:
Line 47: #line default
Line 48: #line hidden
Line 49:
Line 50: #line 8 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 51: using LumiSoft.Wisk.Text;
Line 52:
Line 53: #line default
Line 54: #line hidden
Line 55:
Line 56: #line 9 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 57: using Npgsql;
Line 58:
Line 59: #line default
Line 60: #line hidden
Line 61:
Line 62:
Line 63: public class login_aspx : System.Web.UI.Page, System.Web.SessionState.IRequiresSessionState {
Line 64:
Line 65: private static bool __initialized = false;
Line 66:
Line 67: private static object __stringResource;
Line 68:
Line 69: private static System.Collections.ArrayList __fileDependencies;
Line 70:
Line 71:
Line 72: #line 11 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 73:
Line 74:
Line 75: private bool m_errors = false;
Line 76: private string m_ErrorText = "";
Line 77: private WText m_WTxt = null;
Line 78:
Line 79: protected override void OnLoad(EventArgs e)
Line 80: {
Line 81: base.OnLoad(e);
Line 82:
Line 83: m_WTxt = new WText(Request.PhysicalApplicationPath + "bin\\",Application["DefaultLanguage"].ToString());
Line 84:
Line 85: if(Request.Params["Name"] != null && Request.Params["Password"] != null){
Line 86:
Line 87: IMAP_Client clnt = new IMAP_Client();
Line 88: bool isConnected = false;
Line 89:
Line 90: try{
Line 91: clnt.Connect(Application["IMAPServerName"].ToString(),Convert.ToInt32(Application["IMAPServerPort"]));
Line 92: isConnected = true;
Line 93: clnt.Authenticate(Request.Params["Name"],Request.Params["Password"]);
Line 94:
Line 95: Session.Add("Name", Request.Params["Name"]);
Line 96: Session.Add("Password", Request.Params["Password"]);
Line 97:
Line 98: switch(Application["DatabaseType"].ToString().ToLower())
Line 99: {
Line 100: case "mssql":
Line 101: using(SqlConnection conn = new SqlConnection(Application["connStr"].ToString())){
Line 102: conn.Open();
Line 103:
Line 104: DataSet ds = new DataSet();
Line 105: using(SqlCommand cmd = new SqlCommand("GetUserID",conn)){
Line 106: cmd.CommandType = CommandType.StoredProcedure;
Line 107: cmd.Parameters.Add( "@LoginName" ,SqlDbType.NVarChar).Value = Request.Params["Name"];
Line 108:
Line 109: using(SqlDataAdapter sqlCmd = new SqlDataAdapter(cmd)){
Line 110: sqlCmd.Fill(ds);
Line 111: }
Line 112: }
Line 113:
Line 114: if(ds.Tables[0].Rows.Count > 0){
Line 115: Session.Add("userEmail", ds.Tables[0].Rows[0]["Email"].ToString());
Line 116: Session.Add("deleteFolder", ds.Tables[0].Rows[0]["DeleteFolder"].ToString());
Line 117: Session.Add("sentFolder", ds.Tables[0].Rows[0]["SentFolder"].ToString());
Line 118: }
Line 119: }
Line 120:
Line 121: break;
Line 122:
Line 123: case "pgsql":
Line 124: using(NpgsqlConnection con = new NpgsqlConnection(Application["connStr"].ToString())){
Line 125: con.Open();
Line 126:
Line 127: DataSet ds = new DataSet();
Line 128: string cmdText = "select * from lspr_login('" + Request.Params["Name"] + "')";
Line 129: using(NpgsqlCommand cmd = new NpgsqlCommand(cmdText,con)){
Line 130:
Line 131: using(NpgsqlDataAdapter sqlCmd = new NpgsqlDataAdapter(cmd)){
Line 132: sqlCmd.Fill(ds);
Line 133: }
Line 134: }
Line 135:
Line 136: if(ds.Tables[0].Rows.Count > 0){
Line 137: Session.Add("userEmail", ds.Tables[0].Rows[0]["Email"].ToString());
Line 138: Session.Add("deleteFolder", ds.Tables[0].Rows[0]["DeleteFolder"].ToString());
Line 139: Session.Add("sentFolder", ds.Tables[0].Rows[0]["SentFolder"].ToString());
Line 140: }
Line 141: }
Line 142: break;
Line 143:
Line 144: case "xml":
Line 145: if(!File.Exists(Request.PhysicalApplicationPath + "data\\" + Request.Params["Name"] + ".xml")){
Line 146: DataSet ds = new DataSet();
Line 147:
Line 148: ds.Tables.Add("Settings");
Line 149: ds.Tables["Settings"].Columns.Add("Email");
Line 150: ds.Tables["Settings"].Columns.Add("DeleteFolder");
Line 151: ds.Tables["Settings"].Columns.Add("SentFolder");
Line 152: ds.Tables["Settings"].Rows.Add(new object[]{"","",""});
Line 153:
Line 154: ds.Tables.Add("Contacts");
Line 155: ds.Tables["Contacts"].Columns.Add("ForName");
Line 156: ds.Tables["Contacts"].Columns.Add("SurName");
Line 157: ds.Tables["Contacts"].Columns.Add("Email");
Line 158: ds.Tables["Contacts"].Columns.Add("Phone1");
Line 159: ds.Tables["Contacts"].Columns.Add("Phone2");
Line 160: ds.Tables["Contacts"].Columns.Add("ContactID");
Line 161:
Line 162: try{
Line 163: ds.WriteXml(Request.PhysicalApplicationPath + "data\\" + Request.Params["Name"] + ".xml",XmlWriteMode.WriteSchema);
Line 164: }
Line 165: catch{
Line 166: m_ErrorText = "Folder " + Request.PhysicalApplicationPath + "data\\" + " has no write permission!";
Line 167: }
Line 168: }
Line 169:
Line 170: DataSet dss = new DataSet();
Line 171: dss.ReadXml(Request.PhysicalApplicationPath + "data\\" + Request.Params["Name"] + ".xml");
Line 172:
Line 173: Session["userEmail"] = dss.Tables["Settings"].Rows[0]["Email"];
Line 174: Session["deleteFolder"] = dss.Tables["Settings"].Rows[0]["DeleteFolder"];
Line 175: Session["sentFolder"] = dss.Tables["Settings"].Rows[0]["SentFolder"];
Line 176:
Line 177: break;
Line 178: }
Line 179:
Line 180: Response.Redirect("inbox.aspx?Folder=Inbox");
Line 181: }
Line 182: catch(Exception x){
Line 183: if(!isConnected){
Line 184: m_ErrorText = x.Message;
Line 185: }
Line 186: m_errors= true;
Line 187: }
Line 188:
Line 189: clnt.Disconnect();
Line 190: }
Line 191: }
Line 192:
Line 193:
Line 194: #line default
Line 195: #line hidden
Line 196:
Line 197: public login_aspx() {
Line 198: System.Collections.ArrayList dependencies;
Line 199: if ((ASP.login_aspx.__initialized == false)) {
Line 200: ASP.login_aspx.__stringResource = System.Web.UI.TemplateControl.ReadStringResource(typeof(ASP.login_aspx));
Line 201: dependencies = new System.Collections.ArrayList();
Line 202: dependencies.Add("C:\\Inetpub\\wwwroot\\MailServer\\webmail\\login.aspx");
Line 203: ASP.login_aspx.__fileDependencies = dependencies;
Line 204: ASP.login_aspx.__initialized = true;
Line 205: }
Line 206: }
Line 207:
Line 208: protected override bool SupportAutoEvents {
Line 209: get {
Line 210: return false;
Line 211: }
Line 212: }
Line 213:
Line 214: protected System.Web.HttpApplication ApplicationInstance {
Line 215: get {
Line 216: return ((System.Web.HttpApplication)(this.Context.ApplicationInstance));
Line 217: }
Line 218: }
Line 219:
Line 220: public override string TemplateSourceDirectory {
Line 221: get {
Line 222: return "/mailserver/webmail";
Line 223: }
Line 224: }
Line 225:
Line 226: private void __BuildControlTree(System.Web.UI.Control __ctrl) {
Line 227: __ctrl.SetRenderMethodDelegate(new System.Web.UI.RenderMethod(this.__Render__control1));
Line 228: }
Line 229:
Line 230: private void __Render__control1(System.Web.UI.HtmlTextWriter __output, System.Web.UI.Control parameterContainer) {
Line 231: this.WriteUTF8ResourceString(__output, 0, 475, true);
Line 232:
Line 233: #line 148 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 234: Response.Write(Request.Params["Name"]);
Line 235:
Line 236: #line default
Line 237: #line hidden
Line 238: this.WriteUTF8ResourceString(__output, 475, 928, true);
Line 239:
Line 240: #line 173 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 241: Response.Write(m_WTxt["1"].ToUpper());
Line 242:
Line 243: #line default
Line 244: #line hidden
Line 245: __output.Write("\r\n \r\n \r\n ");
Line 248:
Line 249: #line 176 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 250: Response.Write(m_WTxt["2"].ToUpper());
Line 251:
Line 252: #line default
Line 253: #line hidden
Line 254: __output.Write("\r\n \r\n \r\n ");
Line 257:
Line 258: #line 179 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 259: Response.Write(m_WTxt["3"].ToUpper());
Line 260:
Line 261: #line default
Line 262: #line hidden
Line 263: __output.Write("\r\n \r\n \r\n ");
Line 266:
Line 267: #line 182 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 268: Response.Write(m_WTxt["4"].ToUpper());
Line 269:
Line 270: #line default
Line 271: #line hidden
Line 272: __output.Write("\r\n \r\n \r\n ");
Line 275:
Line 276: #line 185 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 277: Response.Write(m_WTxt["5"].ToUpper());
Line 278:
Line 279: #line default
Line 280: #line hidden
Line 281: this.WriteUTF8ResourceString(__output, 1403, 707, true);
Line 282:
Line 283: #line 197 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 284: if(m_errors){
Line 285:
Line 286: #line default
Line 287: #line hidden
Line 288: __output.Write(" \t\r\n \r\n ");
Line 290:
Line 291: #line 199 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 292: if(m_ErrorText.Length == 0){ Response.Write(m_WTxt["50"]); } else { Response.Write(m_ErrorText); }
Line 293:
Line 294: #line default
Line 295: #line hidden
Line 296: __output.Write(" \r\n \r\n ");
Line 297:
Line 298: #line 201 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 299: }
Line 300:
Line 301: #line default
Line 302: #line hidden
Line 303: __output.Write("\r\n \r\n <tr" +
line="" 305:="" "="">\r\n ");
Line 306:
Line 307: #line 204 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 308: Response.Write(m_WTxt["6"]);
Line 309:
Line 310: #line default
Line 311: #line hidden
Line 312: this.WriteUTF8ResourceString(__output, 2110, 259, true);
Line 313:
Line 314: #line 210 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 315: Response.Write(m_WTxt["7"]);
Line 316:
Line 317: #line default
Line 318: #line hidden
Line 319: this.WriteUTF8ResourceString(__output, 2369, 393, true);
Line 320:
Line 321: #line 219 "C:\Inetpub\wwwroot\MailServer\webmail\login.aspx"
Line 322: Response.Write(m_WTxt["15"]);
Line 323:
Line 324: #line default
Line 325: #line hidden
Line 326: this.WriteUTF8ResourceString(__output, 2762, 890, true);
Line 327: }
Line 328:
Line 329: protected override void FrameworkInitialize() {
Line 330: SetStringResourcePointer(ASP.login_aspx.__stringResource, 3652);
Line 331: this.__BuildControlTree(this);
Line 332: this.FileDependencies = ASP.login_aspx.__fileDependencies;
Line 333: this.EnableViewStateMac = true;
Line 334: this.Request.ValidateInput();
Line 335: }
Line 336:
Line 337: public override int GetTypeHashCode() {
Line 338: return 857126699;
Line 339: }
Line 340: }
Line 341: }
Line 342:
If I just use the webmail directory and put that under inetpub\wwwroot I get the login page, but when I try to log in it says: No connection could be made because the target machine actively refused it.
I set up al of the SQL Server tables and stored procedures. I set up a login both in the users table and also within the mail manager. I set up the mail server and it is running fine. Any ideas on this?
Regards,
Dinesh
P.S. This is a great example keep up the good work |
|
|
|
|
|
I tried to modify my message, I didn't mean to post that long detailed output error. It won't save my changes when I try to delete it, maybe you can edit it. Sorry about that
Dinesh
|
|
|
|
|
How many defferent mail-servers can run in the same service?
Can I install a XML-server and a SQL-server in the same Computer?
I hope you can understand my english.
|
|
|
|
|
>How many defferent mail-servers can run in the same service?
It's not limited as long each server runs on his own IP or different port.
>Can I install a XML-server and a SQL-server in the same Computer?
Same thing: as long each server runs on his own IP or different port.
Each virual server can run on different api.
|
|
|
|
|
What is a good "second server" port?
|
|
|
|
|
For public smtp server you must use 25, this means that you cant have multiple public smtp server on same ip.
For most of time you won't need multiple servers, you can run different domains on same server.
|
|
|
|
|
I've been playing around with the mail server for awhile on our Windows 2003 server, and we seemed to be having issues around obtaining an MX record. After some digging through logs, I noticed the query datagram size was 521, which was a bit weird. I assume this was a typo. I changed it to 512 and am having no problems obtaining MX records now. This may not be affecting many people but I thought I would mention it. The code I changed was in the DnsQuery class, the GetQuery method. Changed the line from
query = new byte[521];
to
query = new byte[512];
Jeff Giasson
|
|
|
|
|
Get a latest version from www.lumisoft.ee, this is fixed some time ago.
|
|
|
|
|
I am playing around Lumisoft Mail Server and let me start by just saying THANK YOU. It is robust, scalable, feature rich products like this that fuel the open source movement... kudos to you for sharing the wealth...
My question is in relation to messages being stored as an image type in sql server... I am trying to write several stored procedures to parse and take actions based on the content of the mail message contained in the SQL server database currently stored as an image datatype.
Understanding that this product was designed to be datastore agnostic and that it is probably out of the scope of this discussion to ask "How in SQL?" - but I am really just curious if anyone has any ideas.
I would like to extract the image data and convert it to a text field... I suppose that I could cast it as a varchar(8000) and get the first 8000 characters, but I was really hoping to have a representation of the entire text to parse... Does anyone know a way (simple or otherwise) to do this conversion directly from T-SQL... I could always read it out through an app or something and do my conversions there, but I was hoping to keep it all on T-SQL... Oh how I with cast(image as text) would work... but no go...
Thanks for the help and I look forward to hearing from you.
Best Regards,
Hal
|
|
|
|
|
is there have the issue time of the future release?
|
|
|
|
|
0.84
0.8X
.
.
.
1.0
???when issue??
|
|
|
|
|
0.84 - pobably will be out durning some weeks, depends on when planned features will be completed.
Planned:
*) DNSBL spam filtering. Currently works,but no UI yet.
!*) If dns server not available, don't consider message as undelivered. (Not sure if implement)
*) Send user note if mailbox size exceeded
Other verison - can't say.
These version will be mainly just bug fixes, no bigger features planned to 1.0.
|
|
|
|
|
When will the 0.84 version to release?
|
|
|
|
|
When will the 0.85 version to release?
|
|
|
|