SNDSMTPEMM NOTE Limited to 400 Characters - email

I am trying to get our iSeries 6.1 machine to send email through our Exchange server. I can do it with SNDDST and with SNDSMTPEMM, but both are very limiting. I need support for basic HTML, and for PDF attachments. I thought I could get them both from SNDSMTPEMM, but now I see that the body parameter for SNDSMTPEMM (NOTE) is limited to 400 characters. Is it possible that this command allows 10 attachments but less than a paragraph of text?
I would like to know if anyone is using this command, and if I am missing something about it that would allow me to create an actual email message.
If indeed I can't put more than 400 characters into the body of an email with this command, I have read about MMAIL and MAILTOOL and I am curious if anyone knows if this message length restriction exists for those as well?
It will be a very hard sell for our main programmer to install any third-party anything to get this working, so I would love to be able to do it with SNDDST of SNDSMTPEMM (or some other built in I haven't found yet).
I don't currently need to be able to send to multiple recipients, but I do need to be able to attach a couple of attachments (where SNDDST fails for me). I also can't use attachments with an *LMSG.
I'm sorry if this is the wrong place for this kind of post - I find it very difficult to find the right place.

The SNDSMTPEMM command is indeed limited to 400 characters in the message body, according to the documentation.
Where I work, we still mainly use MMAIL, which used to be free but now requires a $50 "donation" (and lots of hoops to jump through just to register). It doesn't have that message length limitation. It comes with several commands for ease of use, and a service program for more fine-grained control over how the message is built. Once you download it, you have access to the source, so you can really muck around with it if you have to. (The donation also allows you to download a multitude of other utilities from Easy400.net.)
A better but more expensive option is Bradley Stone's MAILTOOL. It's still competitively priced, as far as commercial IBM midrange software goes. If you go that route, it's probably worth getting the Plus! add-on, which side-steps IBM's native SMTP, a recurring source of headaches. (MMAIL and the basic MAILTOOL rely on native SMTP.)
The best place for this kind of post, at least for now, is the Midrange-L mailing list at midrange.com. When it comes to AS/400, iSeries, and IBM i stuff, that community is currently much more active than Stack Overflow, and they welcome open-ended discussion and "what do you recommend?" posts, which are discouraged here. You can find some discussion on the command you mentioned, and some alternatives, in this thread.

Related

How to make Thunderbird stop during email download?

I finally moved my old Outlook Express stuff to Thunderbird, and am downloading all emails stored on POP3 server.
But I don't want Thunderbird to download them all at once. I want 20 at a time, so I can see them and delete junk ones and move remaining to their proper folders before downloading more.
I can't find a button to stop downloading. Once I make Thunderbird download emails, it just keeps downloading and the only way I found to stop it is closing it.
Is there a better way?
NOTE: while the specific counts are not possible, you can switch back and forth between offline/not offline, but it's a pain, requires confirm click.
Otherwise:
Download all emails. Use spam emails to train your thunderbird spam filters once all the emails have downloaded. Start at the beginning of the list. It's a one time operation, don't overthink it. As you assign 'junk' status to emails, you can rerun the spam filters on the inbox until it's properly trained, and most of the subsequent emails will get moved to the Junk folder automatically after you've created a decent set of spam samples. If you give the junk filter a few hundred samples it will be pretty accurate. Check junk folder for false positives, mark not junk, repeat until it's good. Much less work than doing it 20 emails at a time.
Thunderbird's builtin spam filters are quite good once properly trained.
When viewing (including preview mode) spam emails, make sure that third party image view is disabled, otherwise you will be validating your email address in the spammer email databases (they use often images or links with unique id's in them that when loaded or clicked simply validate your email address as current). Ideally disable all html viewing and view in text mode only, no html.
As with training your spam filters, the same applies to email rules/filters, which are even easier to create and run.
Create filters that move the emails to the desired folders after you make the folders, and after you create each filter, run the filters on the inbox again.
Because the user is fairly stubborn in this case, here's the basics when interacting with a new piece of software:
Check to see if the desired feature that another similar program has is supported. If it isn't, and you're sure you didn't just miss it, the developers don't care about that feature, or the feature is not technically possible due to how the software is constructed. The users in general also don't care about that feature, otherwise someone would have filed an issue, and others would have piled on over time, until the devs got tired of that issue and made it happen. In this case, we can assume none of that happened.
Check to see if the program supports extensions of some kind. Thunderbird does, so look for an extension that extends the features of the software to do what you want. If nobody wrote this extension, this means that no person capable of programming cares about that feature, in most cases, or, that the software itself doesn't support it internally.
check on a site like here to make sure you didn't miss anything, and that actually that feature does exist somewhere somehow. If your results are negative again, that's about the end of the road in the quest for that personal favorite feature.
Check to see if there is another way that sort of emulates what you want. In this case, for example, you can go offline/online though it takes a few steps each time, and certainly isn't a feature intended to do what the OP asked, but it can be used in this way crudely.
If neither 1 nor 2 show support for the desired feature, decide how important that feature was to you. If it is very important, research the core codebase and see if you can extend it via extension to support the feature, or hire someone to write the extension for you, and maintain it over years, or don't use the software.
Now, if after these checks, you find that not one single person in the world cared enough to add support for the feature, it means there's not a whole lot of demand for it, and certainly no demand from the free software developers who in the case of thunderbird, wrote it, and its extensions, and probably not from the users either, which is a lot of people globally in this case.
Once you determine that there was and is no demand for the feature, move on to something more productive, and stop complaining that the feature that apparently nobody ever was willing to take the time to implement isn't implemented, it means nobody cared enough to do it, that's all. Complaining here about that won't change that fact.
If you have decided to use the new software anyway, then adjust your workflow to the fact that the desired feature is not going to be part of your life anymore. This is also known as being an adult in some societies.
Other similar things that don't support everything that another similar software does:
gimp does not support everything photoshop does
windows does not support everything gnu/linux does
gnu/linux does not support everything that windows does
claws mail does not support everything thunderbird does
thunderbird and outlook express are different pieces of software that are similar in function but internally quite unrelated, they don't even use the same mail storage format, for example.
Mac OSX is different from GNU/Linux, FreeBSD (although internally it's got some similarities), and Windows.
Windows 98 is different from Windows 2000 which is different from Windows XP which is different from Vista which is different from Windows 7 which is different from 8 and 8.1 which is different from Windows 10.
Outlook is different from every email client known to man and woman alike. As is its mail storage format. Be very glad you are not trying to find software that is similar, you'd be out of luck, since nobody else is crazy enough to produce such a mess.
And so on. The software I write does similar things to other software, but is different, quite different, from all of them. This is why people use it and like it. If it were the same, there would be no reason to use it. If someone posts an issue asking for a feature a similar but different piece of software has, I'd think: Ok, is it a good idea? Does it meet a valid need? If so, is it hard? Is it possible at all (the other software may not even be right for example)? Is it possible within my software's framework? Did I receive a patch (always a great way to motive a developer)? If the first condition, it being a good idea, was never met, then you can forget about the rest, they are irrelevant.
I agree this isn't a great stackoverflow question.

Clickable email-links encryption? How to do them?

I would like to know if and how it is possible to create a clickable email-link for websites, that are "encrypted" in a way emailspiders can't collect them and it is still possible for living users to click it to open in email-clients or even copy it.
I saw some links that were done in javascript but I on't know how they did this and how "safe" they are.
thank you in advance for any reply
Most approaches to this are splitting the address across multiple elements and inserting extra formatting; then for JS-enabled browsers, they use JavaScript to turn it back into an e-mail address.
The poster example for this is SpamSpan, which even has several "levels" of obfuscation - each level progressively less and less resembles an e-mail in the source code, yet it still manages to piece it back together by JS. Although some spambots today are supposedly capable of executing JavaScript, te vast majority doesn't - and the e-mails are still human-readable with JS off. An advantage of JS-assisted de/obfuscation is that it doesn't rely on external servers, you just need to (simply) integrate the JS library.
Another approach is taken by reCAPTCHA Mailhide - the e-mail is revealed only after solving a CAPTCHA (same type as for normal reCAPTCHA). This is less convenient for the user, but practically safe against robots. A disadvantage of this is that it depends on reCAPTCHA's servers (in essence, on Google) - some people are dead-set against any external dependencies.
This would be a very simple and effective way:
Scramble email addresses
All it does is convert it into ASCII, and all you need to do is insert it where your email address would go!
Although there are more (crazily) secure ways you can choose, this would be the simply option. You can also try this solution, it uses JavaScript to protect your email.
Hope this helps!

Email obfuscation question

Yes, I realize this question was asked and answered, but I have specific questions about this that I feel were not clear on that thread and I'd prefer not to get lost in the shuffle on another thread as well.
Previous threads said that rendering the email address to an image the way Facebook does is overkill and unprofessional user experience for business/professional websites. And it seems that the general consensus is to use a JavaScript document.write solution using html entities or some other method that breaks up and/or makes the string unreadable by a simple bot. The application I'm building doesn't even need the "mailto:" functionality, I just need to display the email address. Also, this is a business web application, so it needs to look/act as professional as possible. Here are my questions:
If I go the document.write route and pass the html entity version of each character, are there no web crawlers sophisticated enough to execute the javascript and pull the rendered text anyway? Or is this considered best practice and completely (or almost completely) spammer proof?
What's so unprofessional about the image solution? If Facebook is one of the highest trafficked applications in the world and not at all run by amateurs, why is their method completely dismissed in the other thread about this subject?
If your answer (as in the other thread) is to not bother myself with this issue and let the users' spam filters do all the work, please explain why you feel this way. We are displaying our users' email addresses that they have given us, and I feel responsible to protect them as much as I can. If you feel this is unnecessary, please explain why.
Thanks.
It is not spammer proof. If someone looks at the code for your site and determines the pattern that you are using for your email addresses, then specific code can be written to try and decipher that.
I don't know that I would say it is unprofessional, but it prevents copy-and-paste functionality, which is quite a big deal. With images, you simply don't get that functionality. What if you want to copy a relatively complex email address to your address book in Outlook? You have to resort to typing it out which is prone to error.
Moving the responsibility to the users spam filters is really a poor response. While I believe that users should be diligent in guarding against spam, that doesn't absolve the person publishing the address from responsibility.
To that end, trying to do this in an absolutely secure manner is nearly impossible. The only way to do that is to have a shared secret which the code uses to decipher the encoded email address. The problem with this is that because the javascript is interpreted on the client side, there isn't anything that you can keep a secret from scrapers.
Encoders for email addresses nowadays generally work because most email bot harvesters aren't going to concern themselves with coding specifically for every site. They are going to try and have a minimal algorithm which will get maximum results (the payoff isn't worth it otherwise). Because of this, simple encoders will defeat most bots. But if someone REALLY wants to get at the emails on your site, then they can and probably easily as well, since the code that writes the addresses is publically available.
Taking all this into consideration, it makes sense that Facebook went the image route. Because they can alter the image to make OCR all but impossible, they can virtually guarantee that email addresses won't be harvested. Given that they are probably one of the largest email address repositories in the world, it could be argued that they carry a heavier burden than any of us, and while inconvenient, are forced down that route to ensure security and privacy for their vast user base.
Quite a few reasons Javascript is a good solution for now (that may change as the landscape evolves).
Javascript obfuscation is a better mouse trap for now
You just need to outrun the others. As long as there are low hanging fruit, spammers will go for those. So unless everyone starts moving to javascript, you're okay for now at least
most spammers use http based scripts which GET and parse using regex. using a javascript engine to parse is certainly possible but will slow things down
Regarding the facebook solution, I don't consider it unprofessional but I can clearly see why purists may disagree.
It breaks accessibility standards (cannot be parsed by browsers, voice readers or be clicked.
It breaks semantic construct (it's an image, not a mailto link anymore)
It breaks the presentational layer. If you increase browser default font size or use high contrast custom CSS, it won't apply to the email.
Here is a nice blog post comparing a few methods, with benchmarks.
http://techblog.tilllate.com/2008/07/20/ten-methods-to-obfuscate-e-mail-addresses-compared/

Programmatically Fax from Internet form

I'm new to programming, and my only area of expertise is web design/simple development on platforms like wordpress/expression engine. (Yea, you guys can laugh).
I have a new client who currently receives medical faxes through an online form (the user fills out a form concerning their prescriptions and once submitted, it faxes the info).
I'm completely redesigning their site, and I'm not sure how online faxing works.
Has anybody dealt with internet faxing? How does it work? Does/can it go through email?
And is it possible to send a fax through a form with javascript/php or route it through email?
Don't pay for it! All you need is a modem on the server and a standard phone line. Then set up a fax print driver under your os (you can do it on windows and unix).
The unix way is mgetty/sendfax : http://mgetty.greenie.net/doc/mgetty_3.html#SEC3
The Windows way : http://support.microsoft.com/kb/306657
There are other ways but unless you can't get a phone line you'd be mad to pay fees for it.
Would it not be helpful to look at how it is currently being done, that way you can learn a thing or two about the process before trying to go do it again? That way you can find if it is using any special libraries or techniques or services to send the fax and you can then either duplicate the code or use it as a template to get started on your own solution.
All of what your asking is possible. I would recommend finding a service provider who can send the fax for you. They all have different interfaces requirements and pricing. I used to use DataOnCall which is now called Fax.com
They had a web service which we would post the document to be faxed plus additional information. They were a preety reasonable service. This was several years ago so I can't speak how they currently fair.
Take a look at eFax's SDK. I haven't used it, but it looks like it might be useful to you.
Yes, you can send faxes via email through several services; this link seems to have some useful information. I worked at a company previously that did this same sort of thing, and while I don't recall the exact service we used, most of them are very similar, and they work reasonably well.

Getting a grasp of how many people use my software

We have a very small, specialized user base.
No community.
My boss wants to find out who is using it. And his approach is to simply make a hidden connection, maybe an auto update function, enabled by default WITHOUT notification when there is no update ...
I don't really like the idea and try to come up with something different.
There is a registration, then you can download a free trial. No other limitations, but the time limit.
Sold licenses are usable across an ip-range - universities.
So the registration and licensing itself is no indicator of usage. Not to speak of that the devs have no feedback about sold licenses whatsoever.
I would like to have some advice how you would, or better have actually, approached a problem like this.
"Simply call home" to notify you that someone is using your software is probably not a good idea, indeed : users don't tend to like that. And it can be bad for the reputation of your company/software.
A solution would be having some kind of good reason to "call home" ;-)
For instance, what about some kind of auto-update-mecanism ? That users could disable, of course, if they want (so not 100% percent efficient) ; but most won't disable it.
And it's really a good idea of reason to do a request to your server :-)
Just don't send anything that could identify the user ; some unique-id key, maybe (to make a distinction between users), but that cannot be used to identify a user ?
I don't like when software I use say to people "hello, this guy is using me!", but I really like the auto-update feature in Firefox, for instance... Event if it says I'm using the software ;-)
This is extremely subjective, and I'd strongly suggest you go and ask some of your actual users how they feel about it, instead of a bunch of opinionated programmers (unless your program is oriented towards programmers who frequents stackoverflow.com). If you make clear it's anonymous, light-weight, and your users like your program to begin with, maybe they'll be just fine with contributing data to build a better version. But there's no other way to know, then to simply ask them.
Concealing (to use a loaded phrase) your activities under some unrelated pre-text seems highly disingenuous.
If you're selling to anywhere that might have a competent IT setup, like a university, then I wouldn't even think about a sneaky don't-tell-them route. If you do, you're lining yourself up for bad publicity as soon as someone's firewall spots the unexpected connections
I start almost all my programs with a shell script that emails me who is using the program, what version they're running, and some other stuff. If nothing else, it's useful for the bean counters who want to track software usage to see if your job is worth keeping.
My software has a licensing scheme where each installed copy generates a unique product ID, and I then email the customer a matching code that unlocks the full program. So I know exactly how many (paying) customers I have.
This doesn't count people using cracked versions, but I'd rather not know how many of them there are anyway.
Since you can have multiple users on a single license, the only thing you can really do is add something to your software that sends a notification to your server every time the application starts. Obviously this won't catch people who aren't connected to the Intertubes, but there's no way to measure them anyway (short of calling them, as you've mentioned already).
Well I would certainly hope you know who you're selling your software to if you're keeping licenses like that, and that you have their phone numbers. Give them a call, sit on the phone with them for a while, ask them what they'd change, what they don't like, what bothers them.
That would truly be going the extra mile, and would most likely impress whoever is using the software. When you call, make sure to let them know you aren't some 3rd party calling on your company's behalf, let them know you actually work on the software that they're using, and that you really want to know what they think, and that their opinions have some form of influence on future versions and features.
You could also send out a mass e-mail to do the same thing, but that's lazy, imo.
Auto-Update w/ usage stats is a GREAT idea.