Location Based profiles - Windows Mobile Development and Hacking General

Hey All,
I had an idea... for a long time I haven't seen a good location based rule actions program for my ppc:
1) Program can determine location by CellSite ID, Bluetooth neighbours, or WIFI available AP, Activesync connection, nearby IP detected (joined a network).
2) In response to entering/Leaving zone, software will do all kinds of stuff - backlight change, volume change, run another program...
What do you say?
Anyone want to "Pick up the glove"?
--Summoner

I'm pretty sure PhoneAlarm does everything that you're looking for! The Cell ID location based profiles is awesome. It can even use the GPS if you want even finer control of your location based profiles.
You can download a trial version at http://www.pocketmax.net/phoneAlarm.html
It's the first application I install on my device. I have profiles based on location (Cell ID), bluetooth handsfree connection, activesync connection, time of day/week, as well as "busy" status from appointments.

Related

Develop a Remote control client on PocketPC? Anyone up to it

Guys,
As I'm reading the threads I see over and over "what is this value", "please upload this file", etc. Is there a remote client like PCanywhere, telnet, Timbuk2 that would allow poepl on XDA to give up control of there machines for guys like itsme or others who have developed tools without even touching a device.
Any way to do this over the internet with home routers and everything else in the way?
We could do this by going PC-PC with timbuktu and then controlling active sync to load or pull files. How could you find the IP address through the router? With ipconfig -all all I get is my router assigned IP with no indication of how to access the machine from the internet.
Anyone know a way to do this?
What´s wrong with "Pocket controller"?
There is no other program that has it´s superb features.
You can completely remote controll your XDA/XDAII/XDAIII.
If you are asking to remote controll an xda thru the internet, id say forget
about it. It´s to complicated and to bulky to use. And by the way, what is it supposed to be used for?
If you want to remotely control your computer with your XDA thru the internet, there is good software for this already.
My wife had mapopillis installed on her phone and could not get it up and going or get the GPS to show her position: I would like to have a program icon that she can click on which would (automatically) connect to the internet, display an IP address of her connection and activate remote control. I would then use the IP that she gives me to log onto her phone and setup and test her Mapopillis and GPS.
All I get from her is "I don't know, it just doesn't work" and I can't debug much with this response.
What would be nicer is to have the IP address automatically SMS'd to my phone when my number was preprogramed in. This way her required actions would be less. She just wants me to make the thing work.
here's another vote for Pocket Controller.
it truely is a wonderous utility packed with cool features
no need for anything else !

XDA2:Is there some software handler possible on GSM voice?

There's a need in mobile PC/GSM device which allows to put a software filter on voice which is transmitted via GSM network when talking.
Can it be done on XDA2 and if not which models will you suggest?
The filtering needs to be done on digital signal not packed to GSM packets, in both directions, during the talk - in realtime.
Thanks in advance.
Re: XDA2:Is there some software handler possible on GSM voic
This is impossible on XDA1,2,3 and Anextek SP230. Probably this is a limitation of PocketPC 2003 (even SE) OS. Wait for a device with a PPC 2005, maybe it would support this.
sure
it IS possible.
but you must delete default Phone application and services. and then you can run your own implementation of phone features with filter or anything other inside the voice channels.
please note: default Phone is invoked by several services, you have to lock all these ways.

Recognising Wifi on WM5

Hello,
I've developed an application on WM4 that associates with 802.11 access-points and also establishes GPRS connections. Connections created with my app work just fine on PocketPC 2002 (WM4). When I ported to PocketPC 2005 (WM5) the application still creates the 802.11 and GPRS connections without error but the device will not recognise the 802.11 connection and always wants to create a connection using GPRS when I open IE or attempt any other IP connection. The only way around this that I've found is to put the phone into flight mode, but since my software is supposed to run on phones, that is not an option since users probably want to recieve calls while they browse. I've seen threads related to this on user forums but so far the only solution I've seen is to disable the phone.
Everything works just fine when WZC creates the 802.11 connection which leads me to believe that there's some IOCTL out there that tells the device to use the 802.11 connection.
Does anyone know the true magic to get around this?
litewoheat said:
Hello,
I've developed an application on WM4 that associates with 802.11 access-points and also establishes GPRS connections. Connections created with my app work just fine on PocketPC 2002 (WM4). When I ported to PocketPC 2005 (WM5) the application still creates the 802.11 and GPRS connections without error but the device will not recognise the 802.11 connection and always wants to create a connection using GPRS when I open IE or attempt any other IP connection. The only way around this that I've found is to put the phone into flight mode, but since my software is supposed to run on phones, that is not an option since users probably want to recieve calls while they browse. I've seen threads related to this on user forums but so far the only solution I've seen is to disable the phone.
Everything works just fine when WZC creates the 802.11 connection which leads me to believe that there's some IOCTL out there that tells the device to use the 802.11 connection.
Does anyone know the true magic to get around this?
Click to expand...
Click to collapse
Have you disable WZC ? If you disable the WZC of device, the Connection Manager can not detect the WiFi card and it use GPRS connection. IE use the service of Connection Manager for detect if a device is connected or no to internet.
WZC
WZC is disabled. With it enabled I cannot control the 802.11 device with NDISUIO.
litewoheat said:
WZC is disabled. With it enabled I cannot control the 802.11 device with NDISUIO.
Click to expand...
Click to collapse
Yes and no.
You can query and set OID value of 802.11 also if NDISUIO is locked by WZC.
IOCTL_NDISUIO_QUERY_OID_VALUE accept NDISUIO_QUERY_OID struct that in WinCE is present the ptcDeviceName variable. Set it with name of device and you can query OID value also if NDISUIO is locket by WZC.
You can select the access point with WZC and prefered network. The functions is WZCQueryInterface and WZCSetInterface.
Ciao Massimo
Really can't use WZC
Thanks for the informative reply. We'd like to turn WZC off for other reasons, mainly the notifications it displays when a new access point is in range. In places where there's metro wifi or just a large concentration of wifi access the notifications are extreeeeemly annoying when they constantly pop up(thanks Microsoft).
Is there a way to disable Connection Manager entirely so that it doesn't get in the way?
litewoheat said:
Thanks for the informative reply. We'd like to turn WZC off for other reasons, mainly the notifications it displays when a new access point is in range. In places where there's metro wifi or just a large concentration of wifi access the notifications are extreeeeemly annoying when they constantly pop up(thanks Microsoft).
Is there a way to disable Connection Manager entirely so that it doesn't get in the way?
Click to expand...
Click to collapse
For notification,you can simply disable from panel control->sound & notification.
For disable Connecion Manager, you must kill the process connmgr.exe with a task manager. Without connecion manager, the wifi remains enabled also you syncronize the device with activesync. The collateral effect is that IE don't work. The Connection Manager is a wrapper between applications and socket. Without CM, the applications can not establish a connection also is the device is effectively connected to network.
You can also disable WZC with DeactivateDevice API.
if I can give a suggestion to you, don't disable WZC or Connection Manager... the negative effect is more of positive effect. Try to use my prev solution.
I am developing a advanced manager of wireless with thie solution posted and work very well. I can select a my prefered AP, retrive RSSI and search SSID without disable WZC a CM.
Ciao Massimo
I'll give it a try, but...
OK, I think you've convinced me. Can I programatically disable the notifications? I can't really expect our users to do that.
litewoheat said:
OK, I think you've convinced me. Can I programatically disable the notifications? I can't really expect our users to do that.
Click to expand...
Click to collapse
For disable notifications edit the registry:
HKCU\ControlPanel\Notifications\{DDBD3B44-80B0-4b24-9DC4-839FEA6E559E}
and set
Options = 0
Ciao Massimo
How to link in wzcsapi.lib?
So I guess I'm not smart enough to figure out how to link in the library wzcsapi.lib. I'm using VS2005. I have Platform Builder so I do indeed have the correct files. I don't get a cannot file file linker error but I do get linker errors for every WZC function in my app. I tried the wzctool sample with the same outcome.
From what I can tell the wzcsapi.lib does have the exports I need but I just can't get VS2005 to link.
Is there some magic to use the WZC functions?
If you use Platform Builder, add into your catalog platform "Wireless LAN (802.11) STA - Automatic Configuration and 802.1x". After sysgen, you found wzcsapi.lib into $(_PROJECTROOT)\cesysgen\oak\lib\$(_CPUINDPATH)\ folder.
No using PB
I'm not using Platform Builder. I'm using VC2005.
Is there a solution for this issue
Using a dll without the correct lib file.
First my guess at the problem, and then a couple of questions.
Library files are compiler specific. The one you're using is for Platform Builder. Platform Builder's compiler probably differs from the one in VS2005.
Another way to use wzcsapi.dll is to link to it at run time using LoadLibrary and GetProcAddress like so
Code:
INTFS_KEY_TABLE GuidTable;
PINTFS_KEY_TABLE pGuidTable;
pGuidTable = &GuidTable;
HMODULE hMod = LoadLibrary (_T("wzcsapi.dll"));
if (hMod==NULL) {
_stprintf(buff, , ErrorCode);
MessageBox(NULL, _T("Failed to load wzcsapi.dll"), _T("ERROR"), MB_OK);
return;
}
_WZCEnumInterfaces pfnWZCEnumInterfaces = (_WZCEnumInterfaces) GetProcAddress (hMod, _T("WZCEnumInterfaces"));
if (pfnWZCEnumInterfaces == NULL) {
MessageBox(NULL, _T("Failed find function"), _T("ERROR"), MB_OK);
return;
}
DWORD ErrorCode = pfnWZCEnumInterfaces(NULL, pGuidTable);
if (ErrorCode!= ERROR_SUCCESS )
{
ErrorCode=GetLastError();
_stprintf(buff, _T("WZCEnumInterfaces Failed--error code %d"), ErrorCode);
MessageBox(NULL, buff, _T("ERROR"), MB_OK);
return;
}
Now for the question part .
How does a miniport driver originally tell the connection manager to consider using the miniport when making and IP connection?
Also, I'd like to be able to request 802.11 scans and set OID_802_11_BSSID to force association with a particular access point. Is this best done using CreateFile/DeviceIoControl or using the WZC funtions? I'll guess using DeviceIoControl, since it doesn't look possible using WZC functions? Can I do this with connection manager running? Anyone have sample code for getting/setting one of the OID_802_11 oid's?
Thanks,
SetoK
Thanks
SetoK

"My location" - how exactly does it work?

Hi everyone!
You know everyone's worrying about privacy these days and I was just thinking about the "my location" service on our mobiles.
Does anyone know for sure how it works? As far as I know it seems to take the Cell ID and get the name and weather through an Internet connection. Is that right?
Which database is it connecting to? I know for sure that the place I live at isn't on accuweather, where the weather on Sense is usually taken from and the weather displayed under "my location" is different from the weather for the nearest place that's on accuweather.
Moreover is it possible to find out which data exactly is sent to that database (which seems to be something "Google" because you have to accept some terms initially)?
The phone masts send out a cellID which is passed to google and it triangulates you based on your nearest towers.
Rmour has it google has a huge database of tower names and locations, so once it has a location it can pull up a post code and pass that to accuweather to get back the weather for that area.
It seems that google dont have a complete list of cell id's, and some towers dont transmit their cellid, hence some areas giving my location problems.
google also uses the info for traffic updates and traffic congestion calculations
Is there a way to disable the my location?, i sort of found it in the tweaks thread but i dont understand how to do it.
gamecore said:
Is there a way to disable the my location?, i sort of found it in the tweaks thread but i dont understand how to do it.
Click to expand...
Click to collapse
Just go to settings/location and you can disable it there.
you can do it in regstry.... current user/software/htc/manila.... enablecurrentlocation set to 0 (zero)
The database is by Google. It is supposed to be anonymous, as long as you don't turn Latitude on in Google maps. You can even store history of your location, but that is turned of by default, and can be controlled via web interface of your Google account.
Also note that your service provider can detect your location independently. In some countries this location can, or even must, be archived for some time.
Furthermore if you have Wifi enabled My Location will sniff for wireless packets and depending on the APs MAC addresses will be able to detemine a more accurate location as the Street View vans sniffed packets and uploaded MAC adresses along with GPS co-ordinates to aid their service.
since we're onto wifi sniffing etc for location finding, heres an off topic but interesting proof of concept page that can pin your home pc down to a pretty narrow area just from your home ip address, and which works using googles location service.
Its not nearly as acurate as the real location service, but still got my house to within 500 yards, using my virginmedia ip address.
http://samy.pl/mapxss/
Note test page is for firefox, but the exploit if done for real would work on all browsers.

[Jun 24][G] Use the phone's GPS data with your PC (google earth) or other phones/apps

You want to get your internal GPS to send data to other applets, be that on a PC (like google earth or google maps for realtime tracking) or on another phone, UNDER WINDOWS MOBILE environment.
Methods:
1 - Franson GPS Gate (Simpler, less space requirements, GPS data multiplexing)
2 - _LEM_'s Trackme app (more features) he already has detalied info on that, please follow instructions Here on his website or Here on his post.
Franson's GPS Gate
uses:
- For noobs: Realtime tracking with google earth/maps
- For pros: share the GPS data (NMEA) with other applets within your phone, other phones (over bluetooth) and/or with a PC application over bluetooth or Activesync or serial port. Data logging, transport, etc etc.
- Requirements:
a. latest ActiveSync software (x86 or x64, pay attention to that) x86 here, x64 here.
b. Franson's GPS Gate Client for Windows Mobile, use .CAB or .exe Active Sync install as you please.
c. GPS Gate free Client for PC/Windows
- Instructions:
a. Set your phone to interact through 'Active Sync' (HTC LEO 'USB to PC' --> Activesync). When the ActiveSync pop-up comes up on your PC screen, click 'connect Without Setting up your phone'. Uncheck 'Allow connections through one of the following' if you dont want to enable bluetooth.
b. Install and configure the Windows Mobile Client on your phone (in my case, an HTC LEO). PLease check this very nice guide. Be sure to check 'Share over Active Sync', and be sure to uncheck 'share over Bluetooth', since you dont need bluetooth active. You are gonna be using your phone USB-attached to your PC to avoid battery issues (long trips).
c. Install and configure the Windows PC Client. Check here for detalied instructions. Attention: Be sure to check 'Search for Pocket PC through ActiveSync'. This is mandatory. Also, be sure to have 'Input' set as ActiveSync. In 'Output', be sure to include 'Google earth' and ActiveSync.
d. Configure GPS gate to send data to Google Earth
check Franson's guide on this. Remember, you have to turn on your GPS (open digital compass or Google maps applet on your phone) in order for Fransons Plugin to start passing data to your PC.
Well, that's it for now. I decided to link each step to external sites due to them already have detailed instructions. Suggestions, reply here.
This post was tested for HTC LEO (T8585). If this method works for other phones, please reply here.
I, actually, was looking for this.
But unfortunately Im running android.
There used to be a way to do this but it was costly.
anyway, thanks
well, while checking out stuff i pretty much bumped into some quite amount of stuff that messed with the GPS within the Android OS.
have you checked the marketplace thoroughly?
this forum also has some info on that...

Categories

Resources