For this to work we would require a jail-broken iPhone, iFile cydia app and iTunes installed on PC or Mac.
The first step is to choose the sms ringtone you want to set as your custom ringtone for sms. It is advised that the ringtone should be less than 5 seconds. The second step is to add this music file to iTunes music folder and covert it into AAC format. After the file has been converted save its copy on the desktop and delete the original file (for easier identification). When the file has been copied to the Desktop change its format to .m4r or .m4a to .aif. Then comes the tricky part. To place this file in your iPhone you need iPhoneBrowser or iPhone PC Suite which gives you remote access to the iPhone. Connect your iPhone to the PC and open iPhoneBrowser. Go into the sms ringtones tab and replace the an existing sms ringtone file with the one you have saved. Keep in mind that the names should be exactly the same. For eg if you replace sms-received1 and name your customized ringtone file as that name only. Also, don’t replace the sms-received1 file and do no try to add more rintones by placing sms-received10 or something. Files can only be replaced not added. If you do so, this will cause the iPhone to switch off.
After, replacing the file,go to setting app/sounds/sms and check the ringtone. It should work. If you have any problems please feel free to post a comment on the link below.