How to change a ringtone programatically

Login to reply to this topic.
Fri, 2003-08-01 14:32
NewLC AdministratorSymbian AccreditedForum Nokia Champion
Joined: 2003-01-14
Forum posts: 2025
Hi there,

Does someone know whether a public API exists to change or get the active profile and ringtone ? or is it like the idle bitmap and no way for us to access all those settings ?

Tx
Eric

Eric Bustarret
NewLC Founder & CEO / Professional Symbian OS Consultant


Fri, 2003-08-01 15:06
Joined: 2003-07-25
Forum posts: 31
How to change a ringtone programatically
For Nokia phones, the API for this has not been made public. You can try hacking into the API though Wink I dunno about the others.


If anyone knows how to control the ringing tone volume, I'll be interested to know how to.
Fri, 2003-08-01 16:44
Joined: 2003-05-27
Forum posts: 363
How to change a ringtone programatically
Yes, profile API seems to be private but fortunately it's all there in (almost) plaintext if you search the .LIB files. The rest is left as an exercise to the reader  Smiley.

Best Regards,
Pawel
Fri, 2003-08-01 17:49
Joined: 2003-07-25
Forum posts: 31
How to change a ringtone programatically
Could u please point me out to these libraries? I have been looking up the APIs for more than a week for some clue as to changing the profile OR changing the ringing tone of my mobile phone (for my thesis). Any help is greatly appreciated.
Sat, 2003-08-02 09:28
NewLC AdministratorSymbian AccreditedForum Nokia Champion
Joined: 2003-01-14
Forum posts: 2025
How to change a ringtone programatically
The ProfileEngine.lib and CProfileAPI class  looks promising....

To use the lib, I assume:
- I have to reconstruct a header file based on the info I can found in it (class, function name and parameters)
- use h and lib like "standard" files
- try and guess how I can use the API

am I right ?

Eric Bustarret
NewLC Founder & CEO / Professional Symbian OS Consultant

Sat, 2003-08-02 14:32
Joined: 2003-07-25
Forum posts: 31
How to change a ringtone programatically
Eric pls post your results once u have succeeded with it.
Thu, 2003-09-11 17:07
Joined: 2003-09-11
Forum posts: 29
any luck?
did you suceed in this?
Thu, 2003-09-18 20:59
NewLC AdministratorSymbian AccreditedForum Nokia Champion
Joined: 2003-01-14
Forum posts: 2025
How to change a ringtone programatically
yes.  but unfortunately I cannot post the result.

sorry for this.

Eric

Eric Bustarret
NewLC Founder & CEO / Professional Symbian OS Consultant

Thu, 2003-09-25 05:50
Joined: 2003-08-12
Forum posts: 67
How to change a ringtone programatically
I think  Roll Eyes there are two classes 4 doing this, CProfileAPI and CProfileDb. But doesn't shows help on any of these  Sad

Eric you can @least give us some pointers as to how to do it  Huh:

 Cheezy

Regards,
Ashish Bhatia

Thu, 2003-09-25 07:13
NewLC AdministratorSymbian AccreditedForum Nokia Champion
Joined: 2003-01-14
Forum posts: 2025
How to change a ringtone programatically
You are right on the classes. But I did not succeed in reverse engineering them. The arguments were too complex to analyze. Found some other and much more simpler way.

As the dev is for a customer which intend to launch an innovative product based on this development, I cannot comment on this so that they keep a competitive advantage and buy more development from me. Maybe I will make some things public one day but not before 2004.

Sorry for this but I also have to earn money ! Wink

Eric

Eric Bustarret
NewLC Founder & CEO / Professional Symbian OS Consultant

Fri, 2003-10-03 08:50
Anonymous (not verified)
Forum posts: 2043
How to change a ringtone programatically
To put some ideas around - I see two other ways of doing this ...


1. Get your program to write an SMS which tells the phone to use xyz ringtone.  Put this SMS into the inbox and let the phone do the rest

2.  The ringtone of the currently active profile will most likely be held in a database somewhere - find this database and just change it
Fri, 2003-10-03 09:35
NewLC AdministratorSymbian AccreditedForum Nokia Champion
Joined: 2003-01-14
Forum posts: 2025
How to change a ringtone programatically
Take 2).
Wink

Eric Bustarret
NewLC Founder & CEO / Professional Symbian OS Consultant

Sun, 2003-10-05 18:28
Joined: 2003-09-11
Forum posts: 29
How to change a ringtone programatically
Yes - I thought just finding the database would be the way forward (actually - it's blindingly obvious in hindsight) - however when I try to open it with "RDbNamedDatabase.Open(RDbs,profileDatabaseName)" it fails with -5 (which translates to something like feature not supported I think.  So  - what kind of database is this?  By leaving format blank it would default to a store database - which I assume is therefore wrong?

Again - I'm assuming I want to open it via the DBMS rather than  the file server so that other programs will correctly get modification notifications?

hum ... so close but so far ;(
Mon, 2003-10-06 02:37
Anonymous (not verified)
Forum posts: 2043
eric
i have tried both the approaches, Roll Eyes

in CProfileAPI REngg is very difficult, and i m also getting the same -5 error code as return value. Any help is well appreciated, i need some consultancy on this issue any one who can help me out can mail me at the following address, pricing is negotiable.

my email id: dveez  <at> yahoo <dot> com

cheers,
Pradeep Sharma
Mon, 2003-10-06 09:43
Joined: 2003-09-11
Forum posts: 29
How to change a ringtone programatically
Well - the default database type is "epoc" - I guess we just need to know the type of dbProfile.db .

Also - need to remember that the wins target (emulator) doesn't appear to have all the profile stuff on it - so we might not be able to open this database on the emulator - but only on a real device.

The database is definitely not encrypted (look at it in a hex editor)

hum ....
Mon, 2003-10-06 09:48
Joined: 2003-09-11
Forum posts: 29
How to change a ringtone programatically
of course - as the class CProfileDb is available for accessing this database - maybe the database type is called "profile" or something.  Haven't got a phone on me to try at the moment but ...

What is a type of the communications database called?  This is encapsulated using the CCommsDatabase class - maybe something like this could help?
  • Login to reply to this topic.