Discussion Board

Results 1 to 11 of 11
  1. #1
    Registered User zed1's Avatar
    Join Date
    Jun 2006
    Posts
    26
    Hi,

    Is it possible to code the discovery of WiFi hotspots using any mobile platform? i.e. in a similar way to Bluetooth device discovery in JSR-82? (inquiry)

    I've found similar queries like this have come up over the last couple of years but nobody seems to have an answer...

    Zed

  2. #2
    Nokia Developer Moderator wizard_hu_'s Avatar
    Join Date
    Feb 2006
    Location
    Mallorca, Holiday
    Posts
    27,683
    Quote Originally Posted by zed1
    Is it possible to code the discovery of WiFi hotspots using any mobile platform? i.e. in a similar way to Bluetooth device discovery in JSR-82? (inquiry)
    Yes, Symbian phones with WiFi support can discover hotspots.
    I've found similar queries like this have come up over the last couple of years but nobody seems to have an answer...
    Yes, phones usually did not support WiFi in the last couple of years.

  3. #3
    Registered User Tremor69's Avatar
    Join Date
    Jun 2006
    Posts
    2
    Quote Originally Posted by wizard_hu_
    Yes, Symbian phones with WiFi support can discover hotspots.

    Sorry, if the question is stupid, but I am just starting with Series 60 development.

    What API do I have to use if I want to discover WLAN APs and get their MAC adress and SSID?

  4. #4
    Registered User zed1's Avatar
    Join Date
    Jun 2006
    Posts
    26
    Yes, Symbian phones with WiFi support can discover hotspots.
    wizard_hu_ many thanks for the reply. Could you elaborate on this, is it possible to access an API to do this via code. Is it possible to access the same calls as the device menu does?

    e.g. on Nokia N80: select Connect. > Conn mgr > Availab. WLAN

  5. #5
    Regular Contributor nmittal's Avatar
    Join Date
    Mar 2003
    Posts
    393
    Hi,

    Recommendation: Check for availability of pre-defined IAPs on the phone that use Wifi. Scanning for networks will consumer high battery power and may also be against Symbian signed criteria.

    To scan:
    RConnectionMonitor class can be used to check for available networks' names using GetPckgAttribute with EBearerIdWLAN connection id KNetworkNames attribute.

    Similarly, check for availability of a WLAN IAP set on the device using attributes like KIAPId etc. Refer to rconnmon.h. This is the recommended way for detecting hotspots from third party apps (ofcourse in this case an IAP has to exist for the hotspot)

    Look at rconnmon.h.

    Nitin

  6. #6
    Nokia Developer Moderator petrib's Avatar
    Join Date
    Mar 2003
    Posts
    9,412
    Quote Originally Posted by nmittal
    Recommendation: Check for availability of pre-defined IAPs on the phone that use Wifi. Scanning for networks will consumer high battery power and may also be against Symbian signed criteria.
    The Psiloc Hotspot Finder app does scan for WLAN networks, and is signed.

  7. #7
    Regular Contributor nmittal's Avatar
    Join Date
    Mar 2003
    Posts
    393
    Hi,

    Given a business case and nature of application there can be exceptions made.

    For example, enterprise applications may not require that the end user be informed of connections being made, SMS being sent etc as would be expected with consumer apps. This is possible because the enterprise users may get trained in using the application or connection costs may not be of much concern..etc.
    Cheers,
    Nitin

  8. #8
    Registered User emurai's Avatar
    Join Date
    Sep 2006
    Posts
    20
    Hi guys,

    I also was in need of such feature. I found out a working solution in a chinese post which is copied here. Thanks to Hoolee contributor!

    I have successfully tested it on a nokia N80, S60 3rd edition.

    --------------------------------------------------------------------
    #include <rconnmon.h>

    void CWlanTest:: ListNetworksAndSignalL(CDesCArraySeg& aNetworks)

    {

    _LIT(KNetInfo, "Network: %S\tSignal: %d");

    TBuf<32> netName;

    TBuf<100> line;

    RConnectionMonitor monitor;

    TPckgBuf<TConnMonNetworkNames> pkgNetworks;

    // establish connection with the monitor server

    monitor.ConnectL();

    // prepare leave clean-up

    CleanupClosePushL(monitor);

    TRequestStatus status;

    // get the list of available networks

    monitor.GetPckgAttribute(EBearerIdWLAN, 0, KNetworkNames, pkgNetworks, status);

    // suspend thread until the info is retrieved

    // production code should use active objects

    User::WaitForRequest( status ) ;

    // leave if the asynchronous method returned an error

    User::LeaveIfError(status.Int());

    // reset networks list

    aNetworks.Reset();

    // add retrieved networks to the list

    for(TUint i=0; i<pkgNetworks().iCount; i++)

    {

    netName.Copy(pkgNetworks().iNetwork[i].iName);

    line.Format(KNetInfo, &netName, pkgNetworks().iNetwork[i].iSignalStrength);

    aNetworks.AppendL(line);

    }

    // close server session

    CleanupStack::PopAndDestroy(&monitor);

    }

    Note:
    - Link against: ConnMon.lib
    - S60 3rd Edition-specific capability needed: NetworkServices

  9. #9
    Registered User elektrohase's Avatar
    Join Date
    Nov 2006
    Location
    Germany
    Posts
    1
    You have successfully tested it?

    I have a problem with the function call. How did you define the "CDesCArraySeg"?

    I get the following error:
    function call '[CDesCArraySeg].CDesC16ArraySeg()' does not match 'CDesC16ArraySeg::CDesCArraySeg(int)' 'CDesC16ArraySeg::CDesC16ArraySeg(const CDesC16ArraySeg&)'

    I hope you can help me.THX

  10. #10
    Nokia Developer Moderator wizard_hu_'s Avatar
    Join Date
    Feb 2006
    Location
    Mallorca, Holiday
    Posts
    27,683
    Check CDesC16ArraySeg in the SDK Help. Its constructor requires a granularity parameter (increment size of the dynamic buffer), for example you can try 1:
    Code:
    CDesCArraySeg *array=new (ELeave) CDesCArraySeg (1);

  11. #11
    Super Contributor mayankkedia's Avatar
    Join Date
    Mar 2004
    Location
    Bangalore,India
    Posts
    2,146
    To achieve the same u dont even require to pass CDesCArraySeg as a paramater, u can simply make the pkgnetworks as a member variable and after checking for signal strength above the threshold limit, u could update the same and use it in your code.

    Cheers

Similar Threads

  1. WAP and WIFI ? confused
    By karfei00 in forum Mobile Web Site Development
    Replies: 4
    Last Post: 2009-03-10, 11:45
  2. WiFi Hotspot discovery..is it possible?
    By zed1 in forum Mobile Java Networking & Messaging & Security
    Replies: 5
    Last Post: 2007-01-30, 08:08
  3. java bluetooth service discovery with 6600
    By jdevmo in forum Bluetooth Technology
    Replies: 7
    Last Post: 2006-05-26, 16:08
  4. Service Discovery
    By jimdeal in forum Bluetooth Technology
    Replies: 1
    Last Post: 2003-09-25, 09:41
  5. Blue Tooth service discovery
    By cgforero in forum Bluetooth Technology
    Replies: 0
    Last Post: 2003-02-26, 10:21

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved