I'm a developer, mainly (or only) in Microsoft dot Net platform. Mainly worked on dot Net Framework 2.0, venturing into dot Net Framework 4.0 as well. Would like to develops for other platforms as well such as Android for mobile platform, APEX on cloud computing, Google Apps and even Java on PC platforms.
2011-06-01
Salesforce Blog
Shivasoft
2011-05-28
Auto Response Email, A Lotus Notes Agent
Contacted the Domino support team and the Domino head suggested to use Lotus Notes Agent instead. She managed to do a test and demonstrated it. It seems to worked as per what I wanted. Unfortunately, the teaching-one-to-fish-instead-of-feeding-one-with-fish philosophy was used on myself this time. Hence I had to spend extra miles to do research on this to perfecting this auto-reply to make it seems legit.
What I would want to achieve is something like this.
|
fake_email@abc.com
Technical details of permanent failure:
Google tried to deliver your message, but it was rejected by the recipient domain. We recommend contacting the other email provider for further information about the cause of this error. The error that the other server returned was: 550 550 5.1.1 <fake_email@abc.com>... User unknown (state 14).
----- Original message -----
MIME-Version: 1.0
Received: by 10.216.91.17 with SMTP id g17mr1347436wef.1.
27 May 2011 20:18:47 -0700 (PDT)
Received: by 10.216.55.145 with HTTP; Fri, 27 May 2011 20:18:47 -0700 (PDT)
Date: Sat, 28 May 2011 11:18:47 +0800
Message-ID: <BANLkTimrR3ZgANSc76ZFEL1z8x4-
Subject: Test email bounce
From: =?UTF-8?B?Q8+JIFRoYW0=?= <myemail@gmail.com>
To: fake_email@abc.com
Content-Type: multipart/alternative; boundary=
This is a test for email rebounce.
And this was what I have achieved
|
valid_email@testemail.com
Technical details of permanent failure:
We tried to deliver your message, but it was rejected by the recipient
domain. We recommend contacting the other email provider for further
information about the cause of this error. The error that the other
server returned was: 550 550 5.1.1 <valid_email@testemail.com>.
User unknown (state 14).
I think this is quite acceptable, although it wasn't exactly as per a legit bounced email like. As long as the recipient could understood that their email went into an invalid mailbox.
The working code for this in Lotus Script
Sub Initialize Dim session As New NotesSession Dim db As NotesDatabase Set session = New NotesSession Set db = session.CurrentDatabase Set docs = db.UnprocessedDocuments Count = docs.Count REM if we have new mail start processing If docs.Count > 0 Then For n = 1 To docs.Count Set memo = docs.GetNthDocument(n) If Not( memo.SentByAgent ) Then REM if attachemetns were stripped, send a reply Set reply = memo.CreateReplyMessage( False ) reply.From = "Mail Delivery Subsystem" reply.Principal = "daemon@testemail.com" reply.Subject = "Delivery Status Notification (Failure)" reply.Body = "Delivery to the following recipient failed permanently:" & Chr(13) & Chr(10) reply.Body = reply.Body & "" & Chr(13) & Chr(10) reply.Body = reply.Body & " valid_email@testemail.com" & Chr(13) & Chr(10) reply.Body = reply.Body & "" & Chr(13) & Chr(10) reply.Body = reply.Body & "Technical details of permanent failure:" & Chr(13) & Chr(10) reply.Body = reply.Body & "We tried to deliver your message, but it was rejected by the recipient" & Chr(13) & Chr(10) reply.Body = reply.Body & "domain. We recommend contacting the other email provider for further" & Chr(13) & Chr(10) reply.Body = reply.Body & "information about the cause of this error. The error that the other" & Chr(13) & Chr(10) reply.Body = reply.Body & "server returned was: 550 550 5.1.1 <valid_email@testemail.com>..." & Chr(13) & Chr(10) reply.Body = reply.Body & "User unknown (state 14)." Call reply.Send( False ) End If Call session.UpdateProcessedDoc(memo) Next End If End Sub
2011-05-23
Simple (Sweet) Honey v3.5 Revolution - Part 2
I have tested the GPS earlier. It seems to locked within seconds as well, outdoor. I guess that's the miracle of Gingerbread kernel on SGS phones. It was a good thing to know that it locks quick and well, but accuracy remained much to be desired. Luckily my Holux external GPS mouse still kicking.
During the testing period, around 1 hour, my phone was connected to HSDPA with GPS on all the time. The power drain was around 10% - 15%, which I was glad to see. As with CM7 Nightly, it would have at least dropped 20% or more, even the connection was sustained at 3G only.
Will keep this ROM for a week and decide later this weekend whether I will be switching ROMs again. This ROM wasn't exactly fast/smooth/quick in response. It was very much like the original Gingerbread ROM for SGS. Nothing to shout about, other than the pretty eye candy. Perhaps I should throw in the animated wallpaper as well to fully compare them both, in term of power drain.
Some forummers claimed that the power drain was an issue of JVK ROM. But I doubt so, cause I have used the leaked ROM based on XXJVK, which doesn't seem to drain as quickly as CM7 Nightly's. I guess it's just the Android OS bug, which claimed by another group of people. It's just ironic as that Android mascot was called the Android bug.
Shoot me if you will, I really like some of the bundled apps made by Samsung. Such as the built-in ScreenCapture (back+home button) service. The integrated contact list. The search-on-the-fly dialer, which is very easy to find out who's the person of a phone number from your contact list. Lastly, it would be the camera software, which I have get used to, with all the camera tweak settings and all.
Finally, my verdict on this ROM is, it doesn't deserve the title ROM at all. It felt like a Theme instead. Just imagine you have the official ROM installed, then you apply a theme. This is what you get, basically. No performance improvement, or not much on those low level coding (kernel level) to tweak the ROM. It just performed like official ROM, with steroid on its UI. That's it.
Part 1: Simple (Sweet) Honey v3.5 Revolution
2011-05-22
Simple (Sweet) Honey v3.5 Revolution
Though there are some minor stuff missing from this ROM. I can't seem to choose XME code, though the individual ISP codes are available, such as CCM, DGI and MIS. I wanted XME so that if I changed sim card, I'm automatically configured to use data network. Hmm...
2011-05-21
New Rom: Insanity v8.5
Unfortunately, I have yet to find the download link of the ROM.
2011-05-22:
Insanity v8.5 was a failure. It can't be flashed directly over my existing CM7 Nightly. So I tried reverting back to EZbase 2.0 (FroYo 2.2.1). After updating Insanity via CWM, my phone stuck at Galaxy S boot screen (before animation). Checked the forum for some advice, it needed to be flashed from Gingerbread JVH kernel.
Blew me. Flashed Samsung's leaked ROM XXJVK over my phone again, then hunt for JVH kernel. The best bet was Supercurio's Voodoo kernel, which uses JVH kernel. Unfortunately, I can't use Hardcore's Speedmod kernel, as it requires JVH kernel, instead of providing JVH kernel. Voodoo kernel did an automatic conversion for me from RFS to EXT4, which I was shocked cause the booting the phone takes very long. Thanks to the audible EXT4 conversion, so I know what I'm waiting for.
Finally booted into Insanity, but the DPI was shit. There were some FC with existing apps, especially Nitrality. It was really a stupid ROM. Even I can't connects to my own Wifi AP. Urgh!
Downloading Sweet Honey v3.5 Evolution now. Hope this is a good ROM with good battery life.
2011-05-20
Battery Status on CM7
Look at the hilly-hills, despite I was charging the phone using its power adapter and left the phone idling at 1 side.
2011-05-18
MaxLength on TextArea Input
<TextArea MaxLength="30" /></TextArea>to limit the size of a text input area.
When I tried it just now, then only I realised, in a pain way, that MaxLength wouldn't work for TextArea input! Oh my god! Now I have to resort to JavaScripts, which is very client dependent. Found a quick fix which raises event on keypress. Unfortunately, as I expected, you could still paste your long text into it. OnChange event just won't work.
What can I do now? :(
The code I have so far:
<script type="text/javascript"> function imposeMaxLength(Object,MaxLen) { return (Object.value.length <= MaxLen); } </script>and on TextArea input:
2011-05-17
1-day Experience With CM7
My phone keeps draining battery despite having the power adapter plugged in. I guess the screen was draining too much? It will charge, provided I off the screen. A short brunch just now, about less than 2 hours, my battery dropped from 78% till 28%. A whopping 50% drops! I think I won't stay with this ROM long enough to find out how good it was.
Some info from the About:
New Post via Mobile
Why wouldn't Google allow users outside of US of A to install the Blogger app on their Android device? With a little tweak, we are good to go. Thanks to Market Enabler, Google sees that I'm in America, hence allowed me to install those forbidden apps, which includes the Blogger app which I just use to write this post.
How I wish there's similar workaround for Android Market on the web as well. I prefer to install apps remotely, at the comfort of my PC. At least this is something those Appleist can't do. HA HA.
Next, I really neeeed to get my Swype back into my phone. All these typos I did using this GB keyboard is getting annoying.
PS: Note the location, cool, right?
Cyanogenmod 7 GingerBread 2.3.4
Spent a lot of time reinstalling Google Apps and configuring the phone. Patch GTalk to v1.3, hoping that video call would work. Unfortunately, it failed, despite I was having GB 2.3.4. Urgh! Then proceed with installing Maps 5.4, which was a lot a lot easier than I thought. There are some other apps which I needed to install, but I can't recall them now. It's time to install Blogger app so that I could update this blog easily, aside form my Wordpress accounts.
I bad factor, the battery drain seems devastating. I guess I won't stick to this ROM for long, despite the speedy response from the ROM itself. Somehow, there are still some glitches in the menu animations. Not sure if it was caused by Spare Parts app settings which I made into the phone. Finally, ADB was not working despite updating USB driver with the latest USB drivers from Google, which was meant for Nexus S.
On a side note, I have installed the Force.com IDE into my Eclipse 3.6. Finally managed to deploy the updates in the Apex Classes which I made to cater for spaces in registration numbers from users input. Doing all these while watching Google I/O 2011 video, downloaded off Youtube.
From:
regNoto:
regNo.replace(' ','').toUpperCase()
Sleepy and tired. I guess it's time to logout.
Adios.
2011-05-16
Public Holiday Eve
Probably cause I was working in a pigsty?
It is really hot here. I wished I have an a/c room right this moment. Should I just proceed to SFCC in The Sphere and stay there the whole day? But the parking fee gonna kill me and my battery supply for my notebook only lasts 2 hours, top. I should just get naked...
... and flash my phone into CM7 Gingerbread 2.3.4.
No pun intended. :P
PS: Backing up some apps on my phone. What's with the random icons post-backup on Titanium Backup? It's funny.
Hello World!
I remembered back when I was in my college days, the first true programming language used for displaying "Hello World!" was Unix Pascal. I can't remember much on the syntaxes any longer because that was eons ago. Somehow there are some which I still keep fresh in my mind.
Visual Basic:
PRINT "Hello World!"
VB.NET:
Module HelloWorld Sub Main() System.Console.WriteLine("Hello World!") End Sub End Module
C:
int main() { printf("Hello World!\n"); return 0; }
C#:
public class HelloWorld { Public static void Main() { System.Console.WriteLine("Hello World!"); } }
Java:
class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } }
I wished I could remember more and know more. But these are all I could manage right now.
Hope this journey is a fruitful one and I won't be too busy to update this blog with my software developments.