Making a phone call without giving control to default dialer - Windows Mobile Development and Hacking General

Hello.
I'm trying to make a phone call from my application, and it works, but when it calls, it opens the dialer of my pda, and when i hang up, the application doesn't recover the control. I'd like to make a call without giving control to dialer.
I've been using PhoneMakeCall, and I've seen the cedialer sample from windows mobile 5 sdk, but I'd like to know if there is an easier solution than this last one.
Thank you very much.
Enrique

Hi !
I was playing with this also, and the only solution i found is the one in WM5 SDK. So my answer would be NO, there's no other way.
GL

Related

Turn Xda to an answering machine

Anyone find a way for Macro Programming Xda (Execute apps. one by one)?
Why? Because I have an idea to turn Xda to become an Answering Machine...
Detect incoming call ----->Auto connect ----->Play a .wav file greeting message ----->Start "Note" app. ----->Start Recording ----->Save message in .wav/.mp3 format
More advance...----->Put a voice mail notice in Today screen.
See, acturally all the function are already there, only thing we have to do is how to put them together in order...
What do you think? Possible or impossible?

			
				
Impossible, sorry. As has been explained in several of my articles, most Pocket PC's simply don't let for recording the other party and, therefore, can't run an answering machine decently either.
But some pda can record the other party voice, with or without activation of the speakers.
For instance, the xda Flame is able to record other party voice without activation of speakers.
If you develop this software, I will be interested. I will use it instead of the sins answering I use presently.

Intercepting and rewriting phone # before dial

Hi!
I'm a new windows mobile user, developer by trade. I have a need for an application that will intercept a dial attempt from contacts or smart dialing and apply some re-write rules to the number then proceeding with the dial as normal. I've not found such a program for WM (I use TakePhone to do it on Treo 650) so I decided to try to write it!
This is for Windows Mobile 5 (on a wizard, if it matters).
I'm a Java developer, and rarely use Windows so I'm not so up on the technology used for this kind of thing, but no matter. I orderd the Windows Mobile 5 developer thing from MS and have it all installed. Using the managed code Microsoft.WindowsMobile.Telephony stuff I can dial a phone number. I suppose I could even add a menu to the contact that would specifically run my code and then I could use the Phone.Talk thing to place the call, however, I'd really like to enable the program and just have it work in the background when it is enabled.
First, can this be done with managed code? If so, how! Any input would be appreciated. Also, if you know of software that does this already, I'll just go buy it.
Thanks in advance!
this should be possible to be done with managed code, but the only idea I have now is hooking RIL.DLL or COM-port communications. And the easiest way to hook something - is to use C/C++.
Thanks for the reply! I've done some searching on RIL and RILGSM and found minimal info regarding "hooking" it. It seems that the person most likely to have done it is "itsme" who has posted a bit of information regarding the entry points and functions available in said DLL.
I'll keep looking...

Answering machine

Hello
I wrote an answering machine program (mortscript) for WM5 but I encountered a strange problem, when a call is answered all sounds playing in my phone was silent.
Does anyone know a tweak how to disable the silent feature in WN5?
Thanks
Do you have a cab file program for WM6? really need this program !!!
NO, Not yet.
When it's done there will be no need of cab file, it is a very light script file.
The only problem I have now is that my greeting message can't be heard by the caller because, as I said all sounds are silent.
There are no other problems, the caller can leave his message as usual.
You can even determine the length of the recording.
I hate to disappoint you, but an answering machine can not be written for many WM based phones in native C, let alone using mortscript.
Ahh if it was only that easy...
When a call is answered the sound is routed differently to and from the phone on the OS / Hardware level and as far as we know short of faking a BT deriver there is no way to record from the phone or play sound to the person at the other end.
There have been a lot of discussion on this subject in the forum, please use google and search the forum for "answering machine".
Thanks for your answer.
I have searched this form and the internet for such software and encountered your answer – B U T - I have noticed that in my phone (ETEN X500) I HAVE NO PROBLEMS WITH RECORDING CONVERSATIONS - the caller and my voice, (I even wrote a recording script and assigned it to the record button).
The only problem with my answering machine is that after the device automatically answer the call, the caller can't hear my greeting message, actually no sound cab be played because when there is an incoming call, the device mutes all other sounds.after that I can record the caller voice with no problems.
BTW – If a song is playing and a call comes, the song mutes, but when the call end, the song voice comes again.
So I thought there must be a registry value that orders the device to mute all sounds when a call comes.
tweak
i know there are some tweaks (programs) ,only i cant remember wich ones... that will let you choose between muting sound/notification in call or just let it play. i think phone alarm from pocketmax.net has that option. and maybe i can come up with some others if you give some time.....at this moment i cant remember any .... but i will let you know. i know for sure that there are some options for this!!
Thanks man
That what i thought. There must be some tweak for it.
Looking forward to your reply
This is interesting. As I wrote in my answer the problem is with "many" not all WM based phones.
So far I only knew about one that came with a built in answering machine - the g-smart.
I assumed you had an HTC phone, but if ETENs have recording and playback capability during calls too this may be very interesting.
Unfortunately, I do not know of any specific tweak for what you ask, but check out Tweaks2k2 and Pocket hack master perhaps one of them will have it.
Thanks, but no luck in both of them.
Still looking for the desired tweak...
So u need to press the record button to activate recording?
No,
The script detect an incoming call, if the call doesn't answered after X seconds (you define the X), the device answers the call, play the greeting message (which for now can't be heard by the caller – that until I find the desired tweak), after that the device opens Notes and starts recording for Y seconds (once again - you define the Y).
When the recording is done it sends a missing call notification – so you know you have missing calls.
Hi there,
Perhaps I'm getting the wrong end of the stick....but how is this any better than the answerphone function you get with mobile operators??
It’s not.
But it has its benefit. You save all messages on your phone (and can forward them to your PC), you don’t have to call your operator to listen to your messages, you can control on the activation and the parameters of your answering machine and most of all – you save a lot of money (at least here we pay for each call to cellular operator)
Guys, go read http://forum.xda-developers.com/showthread.php?p=1798169
Ah I think an answering machine is possible using SK Schema
I found the article on the internet and it was quite a joy as it worked perfectly for me on my Imate Jam
Played back the prerecorded message nicely and then ran Resco audio recorder to record the sound very nicely as well
If interested I can post the whole script here
Oh
Please do
Thanks
Check this out guys: http://www.freewarepocketpc.net/ppc-download-isecretary-v1-1.html
Haven't tried it yet, it looks too "simple", but ok
http://forum.xda-developers.com/showthread.php?t=357635
this should indeed answer all your questions in regaurds to an answering service for you ppc
The beginning to visual voicemail?
This would be pretty sweet...good luck man.
The below mentioned article was written by andason:
Here is a how to on the answering machine... thanks to "testdebug".
first change
HKEY_CURRENT_USER->control panal->sound categories-> attenuation
0 -------- 0x0(1)
then.
how to generate and save script file= open skchema. cleck tools. click script. click new. select command. and select phone then answer at the top. click ok. click new again. select command. choose multimadia then play a wave file. select parameters. and choose file. browse and select the wav file u created by yourself using the windows default note application. choose tools again. click context menu. and click save to file. This is the script file that your are going to select and execute at the below mentioned.
from skchema, go to watch mode, type new, select watch for windows then choose phone at the top. select event title, choose phone ring on top. select ring number and put your dersired number of ring time before pickup. select execute and choose the script files that you saved at above.
Download latest version freeware PMrecorder. and create a shortcut n throw it into startup. it will record all your calls. to playback calls. just click on call list. select the logs and click play. You can set skschema to execute file when exit so that skschema will not expire. the file is a freeware mortscript, set it to delete skschema registry at hkey_current_usersoftwaresksks chemmain.Just save the file as RegDelete HKCU,Softwareskschema,main
Now u have an aswering machine that will auto answer your call at a specified number of rings which specified from u. then it will playback wav file from your recorded voice. And recording the calls. i see the pmrecorder does not record using the mic but through internal phone module as it is loud even recording othe party.
Ta-ta.........answering machine!
i even set skschme to monitor my sms. if specified number or sms words is recognised. it will excute script tp start cell profiler. scan the cell id then sms me back the cell location then format or delete all the files in case of thief.
~~~End of original post~~~
Note that in order for the above script to work correctly on my Imate Jam i needed to add a delay of 3 secs [after receiving the call and before playing back the greetings wav file: in parameters put #d(3)] in the original answering machine script by testdebug.
Instead of PMrecorder I used Resco audio recorder and the quality of the other party is simply "wow", very loud.

Recording telephone call

I would like to be able to record an telephone call by pushing a softkey.
I have HTC voice recorder installed, but it is not easy to activate recording while in a call.
Also as far as I know, there is only the possibility to program ONE hardwarekey (longpress off hook), and that one is already occupied by another program.
So I wondered whether it is somehow possible to program the softkeys that appear when I am involved in a call?
Or do you know another possiblity to activate call recording simply?
im interested too!
Action Screen
Hi there,
I don't know if this helps ur case but when you use actionscreen you can program your softkeys under the today tab, might be possible te get a record button then, not sure but i thought i mention it mine are set to left Action and right Shutdown, anyway hope this helps..
Caved
Can the diamond record both sides of a telephonic call ?
I think no... plz someone can contradicts me ?
However you need Softkey Manager for diamond
It should be invented.
When you record a call using the voice recorder it only records your own voice, but when you put the call on speakerphone it will record both parties. Probably because of the sound from speaker loops back in to the mic.
I'm already searching so long for a good working call recording tool but still no eureka.
can somebody not create a program that will record every phone call, in and out, from both parties, id love to have something like that. much better than the standard.
it's an hardware limitation af all windows mobile based pdas
resco audio recorder can auto record, but the other party voice will be slightly softer
You could also try Vito Audio Notes Touch. It also has an option to record all calls automatically. http://www.iwindowsmobile.com/mobile-audio-recorder.html
SkizZO said:
it's an hardware limitation af all windows mobile based pdas
Click to expand...
Click to collapse
Its a hardware limitation of all HTC based Windows mobile based PDAs... Some others can do it but not many. It's enough to drive a user to symbian
Evoluti0n said:
resco audio recorder can auto record, but the other party voice will be slightly softer
Click to expand...
Click to collapse
I just installed this one.
The loudness of the recording of the other party seems just enough.
I don't want to record all calls.
THe program also offers the possibility to assign actions like 'start recording' to a hardware button. I tried several buttons (off hook, left, action, home), but none of them work, or have already another function, during a call.
A possible option could be to have an extra touch button on the screen when you are involved in a call (just like the button to put a call on hold). But I don't know how that could be done.
ANy ideas?
Today I discovered another unwanted side effect of this recording program.
When I made an phonecaal it appeard that the other party could not hear my voice.
The cause appeared that the recording program was still running in the background. AFter I closed this application the sound was OK again.
On my old nokia phone recording voice calls could be done with one key press
think u can try to turn off recording in background so u can view the recording screen during a caqll n stop the recording. i dont have such issue of others no hearing my voice during the recording
it's strange that such little feature, that so many other phones have had in the past, is so hard to get on an htc device. and funnily enough, i remember reading in manual for the original touch, that before recording a call you have to check whether it's legal and inform the other side... so there's gotta be a way
maybe someone feels like taking a challenge of making a simple app, that would allow you to record the conversations?
the only htc device i ive used that supports recording of both sides is htc startrek
there must be a way to record both sides of a phone call (without a speaker...)
there must be a way to do this, if the audio stream cannot be accessed programatically how do bluetooth headsets work?
i'm sure there would be lots of cool applications for this if someone could work it out, but it never seems to arouse much interest in the techie experts on here when i've mentioned it in the past.
in my very old WM5 smartphone SP5 it can record the call of both sides with a good quality by using this program
(not tested in the diamond try it if you want)
tesing it..
installed it on my diamond - it seems to work - but there is no option to record phone calls...
+ \there is an automates answering machine caleled: "isecretary" - it canrecord incommind phonecalls- maybe they have found a solution??

New audio switch program for skype and others.

This program is an evolution of the first I made. It will route the audio to the earpiece when an certain program is running.
I put the program here because I have test it in wizard, if people test this in others phones and it works, please post here and maybe move this this thread to an more "generic" forum.
the program MUST be under "\($program files)\audioswitch" folder, you must unzip the contents to this folder.
the configuration file (command.txt) is under this format:
1000
skype
fring
etc
the first line is the delay(in miliseconds) in witch the program will "look" if a program in the list is in the top level window, faster phone, smaller delays, I recommend 1000 ms.
the next 20 lines are the programs you want the audio to be routed to the earpiece(max 20 lines for now).
Again the program is under the "do it on your own risk" and "I am not responsible for anything" licence. And,of course, it is free!! Do not sell it!
It is manly intended for little expert users, as it is still in "beta" fase, hehehe.
How it works:
the program runs in an eternal loop and look for the title of the current window that is displayed for the user in a time interval.
When the program mach the title window with one of the names user configured it it will switch the audio, when the program is not running anymore, the audio will swich back.
Do not launch two or more instances of the program at the same time, could really mess things up. -- se the forum (thanks tucahara)
To stop the program, u must use a process manager.
it would be good if someone could make a cab to install it. -- done see the forum (thanks tucahara)
this is still a beta, I intend to make ajustments as people give feedback.
Thanks,
hope u like.
-----first update---
now, an file called "audioswitch_error.txt" in the root directory will hold the error messages.
------------ List - Working ------------
wizard - I tested
P3301 or P3300 - I tested
att tilt - I tested
touch 3452 and 3450
touch dual
touch cruise
touch HD
Sony Ericsson Xperia X1
BenQ E72
Titan --> see the forum
------------ List - NOT working ------------
T-Mobile Diamond
HTC Touch by Sprint
Samsung SGH-i780
------------------------------------------------------------------------------------
check the new thread at:
http://forum.xda-developers.com/showthread.php?t=502361
new aproach to do the switch and now open source, even with an class that others can improve and put in other apps...
Some people complain about me not openning the source of the app, I have just made this way because there was proprietary code inside and I had no time to rewrite it without the proprietary code.
I have made the best I could, and now I had some time and rewrite the app in open source, to those who only complain about it, get the code and make it better instead of complaining!
Thanks for all that encourage me to continue the work and helped the development.
will retire this project for while...
thanks u all.
Audioswitch for Skype
On HTC Touch by Sprint (CDMA, also known as Vogue), audioswitch does switch the audio in the Skype 2.5 windows mobile PPC from external speaker to handset. Unfortunately, the microphone is then also disabled. I hope you'll be able to tweak your audioswitch to resolve this.
Thank you so much for developing this wonderful applet. I'm sure you will have the gratitude of many frustrated Skype windows mobile users.
What really happens is that when the sound output is switched in some phones, the microphone gain changes too. This happens because the phone thinks it is a "normal call".
Most of the times the mic gain increases, but in your phone it must be decreasing. Try to figure out in registry where the mic gain controls are recorded and chage all of then to the same value. I had this issue with my P3301 and solved this way, but there is quite a time now and I do not remenber where are the reg keys to change, but I have found the information here in the forum.
I will try to figure out for other "hack" to solve this issue... thanks for reply.
doesn't work at T-Mobile Compact IV (aka Diamond)
Sound went to loudspeaker....
PS: fring last version working fine with sound at mine phone (without any additional programms). Sound is going to correct destination automatically
I just tried the latest version of Fring, which automatically switches audio to earpiece when call is connected.
The same issue occurs with the new Fring as I described above with your audioswitch program: I can hear audio through earpiece, but microphone doesn't work (or is inaudible).
I couldn't find a tweak or registry hack to correct this. Any help would be greatly appreciated.
MarceloFB said:
This program is an evolution of the first I made. It will route the audio to the earpiece when an certain program is running.
I put the program here because I have test it in wizard, if people test this in others phones and it works, please post here and maybe move this this thread to an more "generic" forum.
the program MUST be under "\($program files)\audioswitch" folder, you must unzip the contents to this folder.
the configuration file (command.txt) is under this format:
1000
skype
fring
etc
the first line is the delay(in miliseconds) in witch the program will "look" if a program in the list is in the top level window, faster phone, smaller delays, I recommend 1000 ms.
the next 20 lines are the programs you want the audio to be routed to the earpiece(max 20 lines for now).
Again the program is under the "do it on your own risk" and "I am not responsible for anything" licence. And,of course, it is free!! Do not sell it!
It is manly intended for little expert users, as it is still in "beta" fase, hehehe.
How it works:
the program runs in an eternal loop and look for the title of the current window that is displayed for the user in a time interval.
When the program mach the title window with one of the names user configured it it will switch the audio, when the program is not running anymore, the audio will swich back.
it would be good if someone could make a cab to install it.
this is still a beta, I intend to make ajustments as people give feedback.
If someone like this program and wants to make an donation...
https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=4WLQVA6LTKWSL&lc=GB&item_name=marcelofb&item_number=marcelofbxdadonations&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG_global%2egif%3aNonHosted
Thanks,
hope u like.
Click to expand...
Click to collapse
I have an idea. Rather than regularly polling to see what the current windows is, why not use a windows hook to monitor windows messages. When you see a message indicating a window has come to the foreground test it against your list of windows and enable/disable audio switch as necessary. Use SetWindowsHookEx and hook for WH_CBT messages. If you are unfamiliar with using SetWindowsHookEx I could supply you with the hooking code and all you would need to do is insert the code to check the window names, enable the audio switch, and disable the audio switch. Or you could send me the enable/disable routines.
Another tip, I noticed that skype places an icon in the notification area during a call. If there is someway of detecting the notification icon that could be another great way to trigger the switch.
Great program though. Works beautifully.
OOOH
If this program works on the new BenQ E72 I'm getting in a couple of days I'll certainly donate!
THANKYOUTHANKYOUTHANKYOU
hello,
it does not work on hermes (tytn).
by the way "troca2" does work on hermes! - maybe you guys want to work together?
baal_zebub said:
hello,
it does not work on hermes (tytn).
by the way "troca2" does work on hermes! - maybe you guys want to work together?
Click to expand...
Click to collapse
hehhehe, I made troca2, I will see if the switch code is the same or if I have made some mistake...
are u sure you have put the program in the correct directory?? I will make some modifications to have an error feedback. So u can see if something is wrong...
JKingDev said:
I have an idea. Rather than regularly polling to see what the current windows is, why not use a windows hook to monitor windows messages. When you see a message indicating a window has come to the foreground test it against your list of windows and enable/disable audio switch as necessary. Use SetWindowsHookEx and hook for WH_CBT messages. If you are unfamiliar with using SetWindowsHookEx I could supply you with the hooking code and all you would need to do is insert the code to check the window names, enable the audio switch, and disable the audio switch. Or you could send me the enable/disable routines.
Another tip, I noticed that skype places an icon in the notification area during a call. If there is someway of detecting the notification icon that could be another great way to trigger the switch.
Great program though. Works beautifully.
Click to expand...
Click to collapse
It is a good idea to use hook, I have not think of it!
I use a proprietary code included in a lib at the company I work for to make the "switch" but it is not different of what u find here in the forum.
Maybe we can make an effort to re-make it with hooks...
so this program must run all the time? after every softreset you have to start it?
is it not easier with mortscript (for example) to make an shortcut that opens skype as well as the audioswitch program? and closes the audioswithc program when you close skype?
I am using it right now and it seems to work perfect:
i used this script after installing mortscript (http://www.sto-helit.de/):
run( "\Windows\SkypeSoundSwitch.exe" )
runwait( "\Program Files\Skype\Skype.exe" )
close( "troca2" )
(see that in my case i downloaded your original program and renamed it to skypesoundswitch.exe and put it in the windows map)
I renamed it so i could remember what the purpose the file had.. changed nothing but the name!
Thanks for the program by the way! it always worked perfect!!
so to sum up the way i have it now (most files included) on my xperia x1:
1) installed skype
2) installed mortscript
3) add skypesoundswitch to \windows\....
3) add skype.mscr to \.... (root)
4) overwrite skype.lnk with the new skype.lnk in \windows\start menu\programs\..
in the way whenever i open skype(.lnk), it opens skype.mscr, this opens skypesoundswitch.exe and than skype.exe... when you close skype.exe it closes skypesoundswitch.exe...
it seems to work perfect.. but hey maybe i am doing something totally wrong here.. than just shout!
by the way, the .mscr and the .lnk files are offcourse edit-able .. so you can put the files everywhere you like..
madhijs said:
so this program must run all the time? after every softreset you have to start it?
is it not easier with mortscript (for example) to make an shortcut that opens skype as well as the audioswitch program? and closes the audioswithc program when you close skype?
I am using it right now and it seems to work perfect:
i used this script after installing mortscript (http://www.sto-helit.de/):
run( "\Windows\SkypeSoundSwitch.exe" )
runwait( "\Program Files\Skype\Skype.exe" )
close( "troca2" )
(see that in my case i downloaded your original program and renamed it to skypesoundswitch.exe and put it in the windows map)
I renamed it so i could remember what the purpose the file had.. changed nothing but the name!
Thanks for the program by the way! it always worked perfect!!
Click to expand...
Click to collapse
That works great too. The advantage of this new program is that it will only reroute the audio when skype is in the foreground. You could minimize skype and leave it running, and audioswitch will automatically restore your sound. Get a call and open up skype and your sound goes back to the earpiece.
I will create the code to do it with a windows hook when I get a chance MarceloFB. Please pm me your email address. All you will have to do is insert the code to read the config file, check the window names, and when necessary enable or disable the switch. Or please show me where to find details on how to code this myself. Thanks!
Hat off to both of you and really glad that we will have a much improved solution.
JKingDev said:
That works great too. The advantage of this new program is that it will only reroute the audio when skype is in the foreground. You could minimize skype and leave it running, and audioswitch will automatically restore your sound. Get a call and open up skype and your sound goes back to the earpiece.
I will create the code to do it with a windows hook when I get a chance MarceloFB. Please pm me your email address. All you have to do is insert the code to read the config file, check the window names, and when necessary enable or disable the switch.
Click to expand...
Click to collapse
okay! I only used skype to make calls and than get offline so this way did the trick for me! but i have to admit it would be much better when i can keep skype online!
this new program does the trick indeed! it changes the output back when i minimize skype!
But still my question above, you have to start this program on every startup isn't it? what does it do with the battery?
madhijs said:
okay! I only used skype to make calls and than get offline so this way did the trick for me! but i have to admit it would be much better when i can keep skype online!
this new program does the trick indeed! it changes the output back when i minimize skype!
But still my question above, you have to start this program on every startup isn't it? what does it do with the battery?
Click to expand...
Click to collapse
Yes it must be run at startup but placing a link in your startup folder will make everything transparent to the user. I don't think there will be an effect at startup. In it's current form it must check every second (or whatever you set the timeout to), but its only a little bit of code. I am not really sure if that will really have an effect. The more often it checks the faster it will switch when you open skype, but also the more processor use. Check less often and it uses less processor, but there might be a delay in switching the audio. I proposed doing it by hooks though because this would use even less processor. The app will only check when a new window takes focus, rather than just periodically checking. This way it only checks when it needs to and will always switch instantly.
I am glad u liked the program.
I will try to answer most of the questions...
1- JKingDev:
I have though in your idea of using hooks, but if I use a hook, the program will have a loop anyway to check for the messages(hidden loop ;-) ), and it would have to have an "fake window" or something to process the messages. This way we have only one loop, in a very simple command line program with high optimization, so we have to think what is really the best way of doing it... I will pm u as soon I have any time to "program" again. hehe
2- people that uses mortscript with the old "troca2"
I will try to make a way to make this program work the same way as troca2, maybe with an "argc argv", wait the next update.
3- the battery life??
if u notice any battery life decreasing with the usage of the program, configure a bigger delay, maybe 5000ms, it is a matter of adjust the "timming" for each processor. Post your results here so others can find the optimum value for the delay in their phones.
4- have to start the program every reset?
yes, just put it in the startup folder.
maybe someone can make an cab that put the program in the right place and a link in the startup, it would be cool! I dont have an easy program to deal with cabs, and the vs projects for cabs.... I really cant make that thing work!!
well it is only the batterylife i was worried about. but i'll try running the phone this weekend with the program running and doing some skype.. lets see how it turns out!
For folks who have issues of mic on using this program, there is a quick solution for this problem. You can try sjphone. It provides a internal mic volume control. However, the major setback is that it's only working in wm5.
my 2 cents
weekendli said:
For folks who have issues of mic on using this program, there is a quick solution for this problem. You can try sjphone. It provides a internal mic volume control. However, the major setback is that it's only working in wm5.
my 2 cents
Click to expand...
Click to collapse
will check this, but people reported that worked in xperia... and it is running in my P3301... anyway, will check and post an wm6 build if it is the case... check the error file and see if it tells anything.
Other thing, this program uses low level api`s, so your windows MUST be fully unlocked for it to work in wm6.

Categories

Resources