When making call in codename one application (tested in android), the application is dialing without '#'. How can I correct this? Also I want to make direct call instead of opening Dialer first. Here is a piece of code I have used:
Display.getInstance().dial(*100#);
Any help please.
We invoke the native dialer intent which removes the # key.
Dialing directly is problematic in most platforms including Android, you can access that for Android only using native interfaces:
http://www.codenameone.com/how-do-i---access-native-device-functionality-invoke-native-interfaces.html
Related
I would like to know if it's possible to access my phone settings using CodeNameOne. For example, if I want to get my EMEI( International Mobile Equiment Identity) or the serial number of my phone, is there a way to get it using codeNameOne?
If yes how ? if not, what alternative can I use?
thanks
We have Display.getMsisdn() & Display.getUdid() but those only work on Android and produce scary looking permission prompts.
Since this is Android specific it would make sense to code EMEI & similar calls with a native interface anyway.
Question: 1
I want to use fingerprint scanner in codename one. Can anybody tell me is it available in codename one or not? If yes, how to use and if no, then how can I code it in codename one ?
Question: 2
How to get the maximum device info in codename one like android version, mobile model, or other stuff ?
Thanks,
No. Fingerprint scanning isn't available at this time.
You can use native interfaces to integrate native device functionality check out this quick video and the advanced section in the developer guide.
Device information is available in Display.getProperty() as well as some other methods in that class. Notice that if you get things such as UDID you will get a permission prompt.
I am working on project in which I use Sipek Voip for connecting to Freeswitch. Here is the situation:
I have a Sangoma A400 hard. I compiled Freeswitch for Windows and now it works perfectly.
I have also created a Softphone using Sipek Voip SDK and it works well with Freeswitch.
The problem is that, when I have an incoming call, instead of showing the callers number, I get mod_sofia.
I looked at Sipek and all it gets from pjsip is a string containing <sip:mod_sofia#192.168.2.10:5060>.
So I went to pjsip and tried to pass the actual phone number to Sipek. I found out there is a function called pjsua_call_on_incoming which handles an incoming call.
It takes an argument of type pjsip_rx_data. It has a string field (rdata->msg_info.msg_buf) which contains the whole message. I tried to replace <sip:mod_sofia#192.168.2.10:5060> with the actual number, but it has no effect.
Does anyone have any idea how to fix this?
You can check this link for tracking the issue. Unfortunately there are hardly any people who can help you out with Open source projects "for free" even on a forum. I just speak from my personal experience. I am facing the same problem, and cannot figure it out till now, though I have solved many issues that I used to face with SIPEK, all on my own.
I've not understood the root of your problem is in FreeSWITCH or in sipek/pjsip.
This entry on FreeSWITCH wiki could help you debug the sip stack in FreeSWITCH:
http://wiki.freeswitch.org/wiki/Mod_sofia#Debugging_Sofia-SIP
in a way similar to a wireshark capture.
I'm sorry I don't know how to help you trace down the parsing/rendering of msg_info.msg_buf in pjsip.
Add sip_contact_user=xxxx in your dialstring.
I know people have asked this before, but i see no answer nor people even commenting about it.
So, i'm trying to make SHOUTcast streaming in WP7, anyone have done it? I know i have to use MediaStreamSource with my MediaElement, but how exactly can i skip that header from SHOUTcast and just get the stream and use it in a MediaStreamSource? Is there any app that has done it? Someone actually has some example working code?
There is a really good SHOUTcast Player called streamything (http://www.streamything.com/page/en/default.html) . Unfortunately it is not open source nor freeware but i shows that it is definitely a way to do that.
You need to setup a mechanism to get the stream of data to be passed to the application continuously. Here is a possible implementation. In order to be able to receive the stream directly (so that the application won't be treated as a web browser), you have to call the URL with a semicolon at the end. For example: http://00.00.00.00:8000/;
I'm also interested in other Symbian SDKs that allow to set their emulator's IMEI.
Emulator has hardcoded IMEI of '000000000000000'. Replace what with whatever you want to use and continue running your code.
Symbian C++:
TPlpVariantMachineId imei;
PlpVariant::GetMachineIdL(imei);
imei.Copy(_L("123456789012345"));
Python for S60 (PyS60):
import sysinfo
my_imei = sysinfo.imei()
my_imei = u"123456789012345"
My general approach to these kinds of things is do it in software.
Put the IMEI fetching code into one globally-accessible function, and only use this function for IMEI fetching.
#ifdef __WINS__ can be used in C++ code to selectively compile in the hard-coded IMEI you want to return in the emulator. In Java, you can probably tell you are in the emulator by other means (eg if the IMEI returned is a fixed weird value in the emulator), and act accordingly.
You can go one step further and have a dynamic IMEI. Once you do that, you will find that testing your code with different IMEIs becomes much easier.
I have never actually tried that but here's my best guess:
The emulator doesn't have a proper telephony implementation unless:
you link it to an actual phone over infrared/usb/serial. In which case the emulator telephony component will need configuration to use AT commands to pilot the phone (even if the phone isn't a Symbian phone). This allows you to make phone calls, send and receive SMS/MMS but certainly not change the IMEI.
you use the SIMTSY module. This is a component that uses configuration files to simulate telephony events. It can pretend to send SMS/MMS, pretend you are receiving a phone call...none of that actually creates any kind of network traffic, you understand. I assume the IMEI is in the configuration file but I don't expect you can properly change it without restarting the emulator. I have never seen SIMTSY used outside of Symbian itself so I don't know whether it is available to third-party developer. It should be open-sourced with the rest of the operating system within the next 2 years, though.
There is also the possibility that the way the SDK itself was built disabled most of the telephony framework for the emulator, using build-time macro. You should check http://forum.nokia.com