Author Topic: Send an email in background and then delete it  (Read 1091 times)

0 Members and 1 Guest are viewing this topic.

MP

  • Seagull
  • Posts: 17488
Re: Send an email in background and then delete it
« Reply #15 on: November 20, 2019, 10:49:20 AM »
No worries my friend - I’m just a nerd trying to help. :uglystupid2:
\|// Set goal. Experiment tirelessly until
|Oo| practice has become expertise.  Loop.
|- | LinkedIn | Dropbox

snownut2

  • Swamp Rat
  • Posts: 947
  • Bricscad 20 Ultimate
Re: Send an email in background and then delete it
« Reply #16 on: November 21, 2019, 09:21:06 PM »
Have you seen this....

------------------------------------------------------
|
|   Product   - SwithMail
|   Version   - 2.2.3.0
|   Author    - Tim Bare
|   Copyright - 2012-2018 - Tim Bare
|
|   Website   - https://www.tbare.com
|   Project   - https://swithmail.tbare.com
|
|   Description:
|      SwithMail is an application
|      that allows you to send SSL/TLS SMTP
|      email silently from command line (CLI),
|      or a batch file using Exchange, Gmail,
|      Hotmail, Yahoo! Plus, or Any custom server
|       - for FREE!
|
------------------------------------------------------

Usage:

SwithMail.exe [/s] [/to "..."] [/CC "..."] [/from "..."] [/name "..."] [/sub "..."] [/Body "..."] [/HTML] [/Attachment "C:\Path\To\File.txt"]
   [/Param1 "value"] [/enc "..."] [/rr] [/drnl] [/log "C:\Path\To\Log.txt"] [/priority "high"]


---------------------
Sample Usage:

SwithMail.exe /s /x "C:\path\to\settings.xml" /btxt "c:\path\to\bodyText.txt" /p1 "Mr. Smith" /enc "iso-8859-1"


---------------------
Error Codes:
When running silently from command line (or more specifically a batch file), Swithmail now supports error codes.
0 - No error - email delivered
1 - Error - something went wrong

Example usage in a .bat file:
@echo off
rem ...
set errorlevel=
C:\SwithMail\SwithMail.exe /s /x "SwithMailSettings.xml"
IF %errorlevel% ==0 GOTO SUCCESS
IF %errorlevel% ==1 GOTO ERROR

:SUCCESS
echo Success!
GOTO END

:ERROR
echo Error!
GOTO END

:END


---------------------
Parameters:

/Silent -- [also '/s' and '/q'] send an email without any prompt.
/XML -- [also '/x'] "C:\Path\To\Settings.xml"
/FromAddress -- [also '/from'] email address
/FromName -- [also '/name'] name displayed
/Server -- server address - no port specified
/Port -- [also '/p'] server port - needed if /Server is used
/Username -- [also '/u'] specified different username to use when logging in with SSL / TLS
/Password [also '/pass'] password - in plain text
/SSL -- [also '/TLS'] "true" or "false" depending on if SSL / TLS is enabled
/ToAddress -- [also '/to'] email address(es); multiple separated by ';' or ','
/CC -- email address(es); multiple separated by ';' or ','
/BCC -- email address(es); multiple separated by ';' or ','
/ReplyTo -- [also '/rt'] address to set as the "Reply To" address
/Subject -- [also '/sub'] subject "in quotes"
/Body -- [also '/b'] email body "in quotes" - html tags allowed when /HTML=true
/BodyTxt -- [also '/btxt'] full path of a text file to be used as the message body.
/HTML -- "true" or "false" depending on if HTML tags are allowed in the body
/Attachment -- [also '/a'] "C:\Path\To\File.txt|C:\PathTo\2.txt" - separate with pipe (|) symbol
/Param{1-9} -- [also '/p{1-9}'] use %Param1% in subject or body, && replace it with this value
/Test -- use when testing from CLI. Message will appear with errors or success
/Encoding -- [also '/enc'] Specify different charset to be used (UTF8 by default)
/ReadReceipt -- [also '/rr'] Request Read Receipt (where the client acknowledges and agrees)
/DontReplace -- [also '/drnl'] Don't replace New Line with '<br />' on HTML email
/Log -- [also '/l'] Path to Log file with success and failures. Logs Date, ToAddress, and Subject
   If no path is specified, the log file will be in the directory from where SwithMail is running.
/Priority -- "high" or "low" - flags message priority. Default is "normal" (no flag)
/MessageID -- [also '/mid'] Generate email header Message-ID
---------------------
Global variables (use in email subject & body):

%now% - displays current date & time
%computername% - displays computer name
%username% - displays username of account running SwithMail


---------------------
History:

Revision: v2.2.3.0
========================
-Bug Fix - Message Priority header fix -- added additional priority headers for different email account types
-Bug Fix - %ParamX% now replaced in Text File Body message when sending test email through GUI -- was working through CLI prior
-Minor Bug Fix - relabel "TSL" to "TLS" -- too many acronyms in my head. keeping "/tsl" argument for legacy support for people.
-Minor Tweak - rearrange main window in GUI to make slightly smaller.


Revision: v2.2.2.0
========================
-Bug Fix - "Reply-To" issue resolved.

Revision: v2.2.1.0
========================
-Enhancement - Increased number of Parameters that can be passed from 5 to 9
-Minor bug fixes

Revision: v2.2.0.0
========================
-Updated .NET Framework version to 4.6.2

Revision: v2.1.9.0
========================
-Enhancement - Added "Generate Message-Id" functionality
-Tweak - updated Donation link to "https://www.tbare.com/donate/prod=swithmail"

Revision: v2.1.8.0
========================
-Enhancement - Added CC, BCC, and Attachments to Logging file

Revision: v2.1.7.0
========================
-Enhancement - Added /Log and /Priority options

Revision: v2.1.6.0
========================
-Bug Fix - Resolve issue with Outlook replacing extension with ".dat"

Revision: v2.1.5.0
========================
-Enhancement / Bug Fix - Added fix for Wildcard attachments that doesn't ignore text before the asterisk.

Revision: v2.1.4.0
========================
-Enhancement - Added option to not auto replace new lines with '<br/>' for html email (fixes .html file body text files)
-Enhancement - Added alternate "plain text" view for HTML emails to help reduce SPAM score.


Revision: v2.1.3.0
========================
-Enhancement - Added Support for wildcards on attachments ("c:\path\to\files\*.csv" will attach all .csv files in the folder -- NOTE: You must specify the file extension -- *.* will not work).


Revision: v2.1.2.0
========================
-Enhancement - Added /ReadReceipt (or /rr) to request a read receipt (where the client acknowledges and agrees)


Revision: v2.1.1.1
========================
-Bug Fix - fixed encoding issues when using non-US characters in ANSI text file for /bodytxt


Revision: v2.1.1.0
========================
-Enhancement - Added /Encoding (or /enc) argument - Specify different charset to be used (UTF8 by default)
-Enhancement - Updated GUI to allow for /BodyTxt file selection and /Encoding field
-Enhancement - Updated XML to hold /BodyTxt and /Encoding arguments


Revision: v2.1.0.0
========================
-Enhancement - Added /BodyTxt (or /btxt) argument - specify a text file to be used as the message body. (%Param1% - %Param5% CAN be used in the text file and be replaced by arguments.


Revision: v2.0.9.0
========================
-Enhancement - Added Exit Codes ('0' for success, '1' for error) for batch file use


Revision: v2.0.8.0
========================
-Bug Fix- Fixed hang when running as scheduled task as different user


Revision: v2.0.7.0
========================
-Added "Username" field - now you can specify a different "Username" other than the send from email address


Revision: v2.0.6.0
========================
-Added "Reply To" field - now you can specify a different "Reply To" address


Revision: v2.0.5.0
========================
-Removed Colon (:) and Equal sign (=) separator for CLI arguments - was causing issue when those characters were in the strings behind them.


Revision: v2.0.4.0
========================
-Bug Fix - fixed /sub argument string changing to "true" when using the long CLI form.


Revision: v2.0.3.0
========================
-Added option to Obscure password in XML file from the GUI


Revision: v2.0.2.0
========================
-Added global variables %now%, %computername%, and %username%


Revision: v2.0.1.0
========================
-Fixed error where CLI string would clear from clipboard when program closed


Revision: v2.0 (Changes from v1.5)
========================
- Removed settings from saving "in-app" - now all settings are saved to an XML file, and the XML file is called from the command line
- Added support for multiple file attachments - up to 4 in-app, unlimited** in XML file and in command line
- Added support for generating CLI string for you, taking the guess work out of your arguments
- Changed Usage screen to be slightly easier to read
- Changed Settings screen to be tab-based, allowing for smaller screen, and more settings
- Several other minor tweaks and enhancements


** "Unlimited" means that SwithMail will try to deliver all attachments - email providers may have limits not enforced by SwithMail - If that limit is exceeded, emails may fail to send.


---------------------
Disclaimer:

Marc'Antonio Alessi

  • Swamp Rat
  • Posts: 1019
  • Marco
Re: Send an email in background and then delete it
« Reply #17 on: November 22, 2019, 02:13:08 AM »
For Outlook (as someone privately suggested) also exists:
Code: [Select]
MailItem.DeleteAfterSubmit property (Outlook)
Returns or sets a Boolean value that is True if a copy of the mail message is not saved upon being sent, and False if a copy is saved in Sent Items folder. Read/write.

Syntax
expression. DeleteAfterSubmit

expression A variable that represents a MailItem object.
does not work with Gmail and similar.

jtoverka

  • Newt
  • Posts: 33
Re: Send an email in background and then delete it
« Reply #18 on: November 22, 2019, 10:35:27 AM »
This code is really old and I don't use it anymore, however, I used to record metrics on my program usage. It creates a file exportable to excel to review metrics. It is completely inconspicuous and designed to not throw errors. The files were generated on the network.

Code: [Select]
(defun JO:metricStart (path / fnam1 file1)
 (vl-load-com)
 (if (and (= 'STR (type path))(vl-file-directory-p path))
  (progn
(setq fnam1 (strcat (getvar "tempprefix") "metricTemp1.log"))
(if (setq file1 (open fnam1 "w"))
(write-line (strcat (menucmd "M=$(edtime,$(getvar,date),M/D/YYYY)") "\t" (menucmd "M=$(edtime,$(getvar,date),HH:MM:SS )")) file1)
)
(if file1 (close file1))
  )
 )
(princ)
)
(defun JO:metricEnd (strCommand path / fnam1 fnam2 fnam3 fnam4 file1 file2 file3 file4 line1)
 (vl-load-com)
 (if (and (= 'STR (type path))(vl-file-directory-p path))
  (progn
(setq fnam1 (strcat path (getvar "loginname") ".log"))
(setq fnam2 (strcat path strCommand ".log"))
(setq fnam3 (strcat path "CAD" ".log"))
(setq fnam4 (strcat (getvar "tempprefix") "metricTemp1.log"))

(if (findfile fnam1)
(progn
(setq file1 (open fnam1 "a"))
)
(progn
(if (setq file1 (open fnam1 "w"))
(write-line "Command\tDate\tTime Start\tTime End" file1)
)
)
)
(if (findfile fnam2)
(progn
(setq file2 (open fnam2 "a"))
)
(progn
(if (setq file2 (open fnam2 "w"))
(write-line "Date\tTime Start\tTime End" file2)
)
)
)
(if (findfile fnam3)
(progn
(setq file3 (open fnam3 "a"))
)
(progn
(if (setq file3 (open fnam3 "w"))
(write-line "User\tCommand\tDate\tTime Start\tTime End" file3)
)
)
)

(if (findfile fnam4)
  (progn
(if (setq file4 (open fnam4 "r"))
(setq line1 (read-line file4))
)

(if file1 (write-line (strcat strCommand "\t" line1 "\t" (menucmd "M=$(edtime,$(getvar,date),HH:MM:SS)")) file1))
(if file2 (write-line (strcat line1 "\t" (menucmd "M=$(edtime,$(getvar,date),HH:MM:SS)")) file2))
(if file3 (write-line (strcat (getvar "loginname") "\t" strCommand "\t" line1 "\t" (menucmd "M=$(edtime,$(getvar,date),HH:MM:SS)")) file3))

(vl-file-delete fnam4)
  )
)

(if file1 (close file1))
(if file2 (close file2))
(if file3 (close file3))
(if file4 (close file4))
  )
 )
(princ)
)
(princ)
« Last Edit: November 22, 2019, 10:46:20 AM by jtoverka »

VovKa

  • Swamp Rat
  • Posts: 1173
  • Ukraine
Re: Send an email in background and then delete it
« Reply #19 on: November 22, 2019, 02:53:53 PM »
i'd rather send some data directly to the server than mess with an email client
it is faster and does not require any extra software

Marc'Antonio Alessi

  • Swamp Rat
  • Posts: 1019
  • Marco
Re: Send an email in background and then delete it
« Reply #20 on: November 22, 2019, 05:09:17 PM »
Sometimes I don't know the name of the server, the port, etc...

VovKa

  • Swamp Rat
  • Posts: 1173
  • Ukraine
Re: Send an email in background and then delete it
« Reply #21 on: November 22, 2019, 05:37:06 PM »
Sometimes I don't know the name of the server, the port, etc...
how can you not know your own server address?

snownut2

  • Swamp Rat
  • Posts: 947
  • Bricscad 20 Ultimate
Re: Send an email in background and then delete it
« Reply #22 on: November 22, 2019, 06:32:34 PM »
I don't think this is for his server, it seems like he wants to have a program that someone is using, no matter where they are surreptitiously send him an email with some data in it about what they are doing.  That's why  the deletion aspect is required, to cover his tracks, not sure this is such a good idea.  Maybe he's spying on his wife, but I doubt it.  That's why Trump has red listed Huewai ......
« Last Edit: November 22, 2019, 06:36:27 PM by snownut2 »

VovKa

  • Swamp Rat
  • Posts: 1173
  • Ukraine
Re: Send an email in background and then delete it
« Reply #23 on: November 22, 2019, 07:00:55 PM »
I don't think this is for his server, it seems like he wants to have a program that someone is using, no matter where they are surreptitiously send him an email with some data in it about what they are doing.
yeah i got that
what i'm telling is that it is not necessarily has to be an email
it is easier to use http to send some data to a server which could be a private one running 24/7 at Marco's home or a cloud based one
or even smth as simple as forms.office.com (i once tried)

Maybe he's spying on his wife, but I doubt it.  That's why Trump has red listed Huewai ......
Huewai... hmm... strange name for a wife :)

ps spying's no good

huiz

  • Swamp Rat
  • Posts: 845
  • Certified Prof C3D
Re: Send an email in background and then delete it
« Reply #24 on: November 23, 2019, 07:06:13 AM »
A simple call to a webpage with Google Analytics is very effective.


If I would notice an app that sends a mail and deletes it afterwards, I'll see that as spyware. Maybe it is even illegal to use a customer's mail software in the background without asking for permit.
The conclusion is justified that the initialization of the development of critical subsystem optimizes the probability of success to the development of the technical behavior over a given period.

snownut2

  • Swamp Rat
  • Posts: 947
  • Bricscad 20 Ultimate
Re: Send an email in background and then delete it
« Reply #25 on: November 23, 2019, 07:43:53 AM »
A simple call to a webpage with Google Analytics is very effective.

I was on the same line of thinking, have a Google Sheet that keeps getting appended to, for example.  (ZOHO forms does this) And I have a function that allows users to access their data from the sheet.  One could even have a sheet for each user of required.....

John Kaul (Se7en)

  • Administrator
  • Needs a day job
  • Posts: 9282
Re: Send an email in background and then delete it
« Reply #26 on: November 23, 2019, 12:40:09 PM »
This thread is treading on ethics-thin-ice. Why would an autolisp developer care how often a user uses his/her application? I have a far better idea; instead of focusing on creative spying techniques, focus on making a better application or methods. Rinse and repeat for the next "great idea".

First of all: email servers don't work that way. Just because you delete from the client side doesn't mean it is deleted on the exchange side.

Second: Client-side communications--within more complicated/robust setups--which frequent dead-end sites/higher then "normal" bandwidth/etc. can get flagged/throttled. ...Have you ever heard of SNORT, for example?

Third: Stop making security holes in peoples networks/setups/etc..

Focus your time on better programming not spying methods.
“Common sense is not so common.” ~Voltaire

--> Donate to TheSwamp.org <--

MP

  • Seagull
  • Posts: 17488
Re: Send an email in background and then delete it
« Reply #27 on: November 23, 2019, 01:57:01 PM »
This thread is treading on ethics-thin-ice.

I agree, tho the issue is not exclusive, nor is it indicative, of code driven email transmittal.

We use auto email transmittal to inform engineers a group of drawings has been plotted to pdf and ready for digital authentication. I also selectively code driven email when beta testing software with my beta group testers to give me instant stats on program performance etc. so I can more quickly review, revise candidate solutions. I have no reservations about leveraging email for these activities, noting all of them are internal.

For external use going the email route is ill advised for most uses. It's an abuse of access IMO. Alternatively, should a program(mer) have access to data / stats relevant to program execution, say to a web server yada? Depends. It's a non trivial discussion that spans the universe from solo dev trying to make a program more efficient to large corp licensing and big brother surveillance.

Long story short: I'd err on the side of honouring user rights rather than "programmer" rights.

Finally, assume the best of Marc'Antonio Alessi. In decades of participation on various discussion forums I have never ever observed anything to suggest he has anything but the most honourable of intentions. In the end I would bet money every time for him to do "the right thing".
\|// Set goal. Experiment tirelessly until
|Oo| practice has become expertise.  Loop.
|- | LinkedIn | Dropbox

John Kaul (Se7en)

  • Administrator
  • Needs a day job
  • Posts: 9282
Re: Send an email in background and then delete it
« Reply #28 on: November 23, 2019, 02:32:24 PM »
Not, necessarily, questioning anyone’s specific ethics; I’m concerned about a thread/method laying out the specific methods for a person(s) that may not have as strong a moral compass.

“Common sense is not so common.” ~Voltaire

--> Donate to TheSwamp.org <--

MP

  • Seagull
  • Posts: 17488
Re: Send an email in background and then delete it
« Reply #29 on: November 23, 2019, 03:04:01 PM »
The number of solutions hosted by the swamp that could be used for nefarious purposes dwarfing email abuse is too high to tally. And forget swamp membership exclusivity, the swamp is bot scraped so many times daily it’s disturbing.
\|// Set goal. Experiment tirelessly until
|Oo| practice has become expertise.  Loop.
|- | LinkedIn | Dropbox