How can we implement incoming call in windows phone 8? - c#

I want to make a fake incoming call in windows phone 8. As we can compose a call can i do the same with incoming call.
For Making a call i am using following code:
PhoneCallTask phoneCallTask = new PhoneCallTask();
phoneCallTask.PhoneNumber = "8920383839";
phoneCallTask.DisplayName = "Gage";
phoneCallTask.Show();

You can't directly make a phone call (real & fake) in Windows Phone.However , if your app has ID_CAP_PHONEDIALER capability , you can show a popup for user to call the number you provided in your code.
In addition , there's no way to catch incoming calls.It's not permitted via Windows Phone API's.
You can create a fresh XAML page that strecthes to the screen and put some XAML controls inside it to get a fake incoming call screen , play a ringtone and achieve what you want.However , I doubt that application will go through Store :)

Related

Why ShareStatusTask don't share status via twitter's app and ShareMediaTask I can share media?

I'm trying share status in Windows Phone 8.1 via ShareStatusTask to Twitter's app and him don't appears in list of apps to share status.
See picture: (http://imgur.com/NVDoUXs,ZS2Ty9h#0)
But, when a I try share media via ShareMediaTask, "like a magic", him appears.
See picture: (http://imgur.com/NVDoUXs,ZS2Ty9h#1)
I can't understand the reason of this problem occurs.
Thanks!
According to this thread, if you do have Twitter configured within your device, then you should be able to view the Twitter option when using ShareStatusTask.
For more: Windows Phone 7 ShareStatusTask - Is it possible to customize it further?
I can solved my problem using this code:
WebBrowserTask wbt = new WebBrowserTask();
wbt.Uri = new Uri("twitter.com/intent/tweet?source=webclient&text=" + tbox_status.Text, UriKind.Absolute);
wbt.Show();

Reinstantiation issue using Inter App Communication with Windows Phone

I am developing an WP8 app that uses a webbrowser control that shows statefull server content. On WP8 you can switch between apps manually. E.g. if you want to copy&paste some information from one app into a browser input field. If you switch that way, the current app instance stays alive. That means the web session and the current page of the browser control will stay available.
Now I want another app to send some data directly into the app with the browser control - without restarting it...
From what I know, there are three ways to handle inter app communication:
register a file type that will open the app by launching that file from local storage
register an app protocol and use Launcher.LaunchUriAsync() to submit parameters in a query string
use a shared storage file
Detailed information can be found here.
I think the last approach is not usefull, because after you have started the second app, there is now way to activate the calling app or is there any usefull way to reactivate the webbrowser app?
I tried the second approach, but I am running in an issue, because it starts a new instance by design. That means InitializePhoneApplication is called. There is the entry point for the custom UriMapper that reads the incoming parameters. So the old app instance is killed and all session data, cookies and input fields are gone. With WP webbrowser control you are not able to store the cookie and page state, so a fast app resume is not possible also.
private void InitializePhoneApplication()
{
if (this.phoneApplicationInitialized)
{
return;
}
RootFrame = new TransitionFrame();
RootFrame.Navigated += this.CompleteInitializePhoneApplication;
RootFrame.UriMapper = new AssociationUriMapper();
//...
this.phoneApplicationInitialized = true;
}
Is there any other way or a possibility to use the shown approaches to send data between apps without restarting them using LanchUri()?
That means, to send some data back to a running instance without reinitializing the whole app, so that the page state and session state are still available on the target app.
Best regards
Holger
FastAppResume is the solution. I haven't used it and thought it also reinitiates the app. But it doesnt. This example shows how to reuse the existing instance.
Regards
Holger

execute SIP call to deskphone .net

Need to build a simple c# app that takes command line args and then sends/makes a call to a deskphone which is SIP based so that the desktop phone dials the number
The application that does this is frSIP free app but this is for android, I need to make a simple desktop version. The format is (I think)
"sip:" + username + "#" + domain
I also want to replace the "callto" in skype to use this app instead. How do I change the windows registry to override this callto function programatically?
I just want the desk phone to dial the number
In your registry under HKEY_LOCAL_MACHINE\SOFTWARE\Classes\skype.callto\ there are a few different options to help you play with that.
You can probably replace the Skyp.exe value inside HKEY_LOCAL_MACHINE\SOFTWARE\Classes\skype.callto\shell\open\command to your own .exe file. Just be sure to accept the same parameter input as Skype does when a link is clicked.

Windows phone 7 toast notification

in toast message in windows phone 7, when clicking on that message the
application opens thats fine,
i just want to navigate to specific page when the toast message is clicked,
is there any way to do it?
both in 7 and mango update???
or
in http://samidipbasu.com/2011/06/14/push-notification-payloads/ in this link when we read for toast notification, we have an extra parameter called wp:Param in xml format to send. How they were sending this wp:Param data in windows 7.0(before mango update). Any idea ??
Support for navigating to a particular page is supported in Mango. Below is an example that does not require an HTTP channel, but must be executed by a background agent (not the application itself):
var toast = new ShellToast
{
Title = "Title",
Content = "Toast content",
NavigationUri = new Uri("/SomeOtherView.xaml", UriKind.Relative)
};
toast.Show();
NOTE: The NavigationUri functionality is also supported by toast sent via HTTP push notifications
#curiosity .. Toast & Tile payloads are pre-defined so that the OS can process these bits coming from MPNS after your app registers shellToast/shellTile. The extra parameters in the payloads are supposed to supported starting with Mango. As your app's first page (or whichever XAML page is in the URL) launches from the deep-toast, the developer should be able to listen in on the OnNavigatedTo() event to do something special with the params in the incoming URL (query string). Please see some later posts on my blog for examples & let me know if it helps.
Thanks!
all the info you need to know about push notifications is here

C# How to programatically change the playback device

How can I programatically change the default audio device on a vista / win 7 system? Using C# or a Win API call?
The WinMM API should provide the functionality that you request.
You would use the DRVM_MAPPER_PREFERRED_SET message, which is sent with waveOutMessage() function.
Documentation: http://msdn.microsoft.com/en-us/library/aa909789.aspx
However, if you are trying to send the waveform sound out yourself, you should look at the WinMM.Net library.
http://winmm.codeplex.com
This can now (actually for quite some time already) be done very easily using the AudioSwitcher.AudioApi.CoreAudio NuGet package.
Simply create a new CoreAudioController:
var controller = new AudioSwitcher.AudioApi.CoreAudio.CoreAudioController();
Get hold of the desired device using its GUID:
var device = controller.GetDevice(Guid.Parse(...));
And lastly set it as the default playback device:
controller.DefaultPlaybackDevice = device;

Categories