Skype API Wrapper with WIndows 8 Store App - windows-8

I need to integrate Skype deep into one of my Windows 8 Store application for Windows 8 Pro. We need to show the online status of the user and trace if the call was placed successfully.
We have tried to use Skype4COM but apparently, Win8 Store Apps can only access limited set of COM components.
I am not open to use to use Skype URIs as i would require to trace the status of the call also.
Any pointers or any help would be awesome!!!

At this time, the Skype API is not a Windows Runtime Component so it can't be used in a Windows Store app. Even though COM objects are similar, they don't work in Windows Store apps because they have a different interface, security model, etc.
Right now, Skype URIs are your only option for a Windows Store app. You can find more information on Skype URIs and Windows Store apps # http://dev.skype.com/skype-uri/skype-uri-tutorial-win8.

Related

establish communication between metro and desktop

I'm trying to make my store app communication with desktop app through websockets.
I know we can make metro app as a client and do WinRT way of communicating over.
For the desktop server part, i'm planning to write a dll that will contain server code and receive metro texts being sent over.
Can someone please tell if this is possible and how to write server code in a dll and if so should we be using winhttp for wbesockets in server side ?
Windows Store (WInRT) apps are executing in a sandbox which isolates them from network communication with other applications on the local machine (localhost). That being said, this protection can be disabled using CheckNetIsolation.exe. Visual Studio automatically does the same for debugging purposes, allowing you to call e.g. a web service on your local machine during development.
As for the desktop side; to communicate with web sockets client, you can make advantage of WinHTTP. There's a working example on MSDN.
Keep in mind, though, that any application communicating with localhost will not be certified for Windows Store and will require several additional steps to install it:
The Windows Store application package will need to be sideloaded since it won't be published in Windows Store.
Any desktop component it communicates with will need to be installed separately the same way as any other desktop application.
Using CheckNetIsolation.exe loopback exemption will need to be added for the Windows Store app.
If you can avoid it, I definitely suggest you don't try communicating directly with a desktop application from you Windows Store app.

Windows-8 browse url,local storage

I have searched around a lot but have not found much of anything in regards to local storage for Windows 8, Windows RT, and Windows Phone apps.
I want to display the browser on a page surf and search webpages. When I find the specified webpage, I want to store the url on a local storage of the device.
On another page, I want to display the URLs in a list for fast select and direct surf to the url. I am developing with visual studio 2012 and vb.net.
Local storage options for Windows Store apps is pretty well covered in the dev center topic Accessing app data with the Windows Runtime
In Windows 8 (Windows Store apps), you could use app settings (registry based), local application data (file-based and sandboxed) as well as the roaming versions thereof.
Since you mentioned Windows Phone 8, I'll add that while the same Windows Storage APIs are surfaced for Windows Phone, only local application data will work directly. In Windows Phone 8, local application data is another way of handling isolated storage; however, there is no built-in roaming data option. Additionally, app settings as implemented in Windows 8 is not available in Windows Phone, but you can use isolated storage settings which is semantically equivalent.
I have gone through the web browser terms and conditions, and there it is clearly mentioned that you cannot use the web browser for general browsing, and if you are doing the same, your app would be rejected by the microsoft app store
For reference please go through
http://blogs.msdn.com/b/wsdevsol/archive/2012/10/18/nine-things-you-need-to-know-about-webview.aspx#AN6

Windows 8 roaming storage in WPF desktop application?

I planned to create a Windows 8 Store App but reluctantly had to switch to desktop application. I found that Windows 8 Store Apps fail to detect second screen, which is necessary for me.
The intention still is to mimic the behaviour of Windows Store App as much as possible. Partly to educate myself but also to use a modern nice design.
I use WPF with very similar design (App bars, Navigation bar, snappy await-async pattern, etc)
Now I come to the point where I need to store settings!
I would really like to use the very convenient central storage available through Microsoft Live login. Is that possible even if I don't have Windows Store App?
Clients might be Windows 7 or Windows 8.
Can I make the user login to Microsoft Live and use these facilities?
Many WinRT APIs are available from desktop applications, in addition to Windows Store applications. Windows.Storage.ApplicationData appears to support desktop apps. Look under the "Requirements" section in the documentation:
Minimum supported client: Windows 8 [Windows Store apps, desktop apps]
Someone at Intel posted on how to use WinRT APIs from desktop apps. The post is from September, 2012, and the screenshots appear to be for an older version of the MSDN documentation. Just keep that in mind.
Dave Bennett of Microsoft has a useful blog post which will introduce you to roaming your app data.
I may have misunderstood you, but I think what I mention above is what you want instead of using the Live Connect APIs.

Listing and connecting WiFi using WinRt

In my office I have 10 WiFi routers.I want to list all those(similar to Network icon in the system tray on windows 8) and connect/disconnect to one of them through Win Rt.
I tried these API
Windows::Networking::Connectivity::NetworkInformation::GetLanIdentifiers();
Windows::Networking::Connectivity::NetworkInformation::GetConnectionProfiles();
NetworkInformation::GetInternetConnectionProfile();
but these Api only list connected one, it doesn't list others
I can achieve this using http://msdn.microsoft.com/en-us/library/windows/desktop/ms706716(v=vs.85).aspx. But I am not sure this Api will be supported on Windows 8 metro mode.
Does WinRt provides Api support for this ??
You cannot connect/disconnect to a network from a Windows App. You can only check informations. The reason is (for Microsoft) that the connection manager is accessible from your app through the charms bar.
This functionality is not exposed to Metro style applications. An operator's app can create profiles for their networks (with known SSIDs), but listing and connecting to visible networks is controlled by the user via the Windows connection management UI, not by an application. [Mike Bishop [MSFT], here]
The advanced connectivity functionnalities are present in Windows.Networking.NetworkOperators, which functionalities are only available to mobile operator apps and Windows Store apps given privileged access by mobile network operators.
Take a look at the Microsoft's Network information sample which shows what you can achieve with this API.

Interact with Metro application from Win32

I have a traditional Win32 program which gets some data using WMI (and it cannot be fetched using API available to Metro apps). Now I want to make a tile with part of this information. As I've understood, it's impossible to simply send this data from Win32 program to the Metro application. What's the preferred way to do such thing?
There is no direct app to app communication method. What you want to do can be accomplished in several ways, however. Your Win32 app could write data to a location on the file system that a Metro style has access to. Also, you could synchronize your Win32 app with your Metro style app using the cloud. You need to be careful, however, as this might violate some of the app certification requirements.
If you are simply writing something for yourself (not concerned with publish your app), you might consider taking the functionality that currently have within your desktop app and encapsulating it within a wcf service running on localhost. Metro apps can call wcf services.
One option would be to have your Win32 program create the tile XML and deposit in Windows Azure storage (or really anything accessible via a URI) and then your Windows 8 Store application could subscribe to that tile via a Periodic Notification.
There are some constraints here which may or may not be relevant to your application - like the refresh rate of the tile (discrete periods from 30 minutes to 1 day) and the machine must be connected to the network when the poll from the URL is made.
You might be able to incorporate a background task to do something similar.