I am running the latest version of GTalk (using the Talk installer from the market) on my Gingerbread Galaxy Tab P1000.
I now want to programatically initiate a video call provided that the related contact is online and available.
As I didn't found any documentation for that I looked in the related XML and found the following interesting part:
<activity-alias android:icon="@drawable/ic_launcher_google_videochat" android:name="PublicCallIntentDispatcher" android:targetActivity="PublicIntentDispatcher">
<intent-filter>
<action android:name="android.intent.action.SENDTO" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/video-chat-address" android:scheme="xmpp" />
</intent-filter>
</activity-alias>
As it is a "Send-To" action, I don't need a special permission, do I? My problem is, that I don't know how to get an item of the type vnd.android.cursor.item/video-chat-address. Do you have any idea or hint what I might try?
Thanks in advance!
You might say, "I know this out of the blue, but do you feel up for a FaceTime call?" or "I'd love to 'meet' you, even if it's just virtually. Would you like to do Skype call?"
You can now start a video call directly from where you call or text message your friends, through your Phone, Contacts, and Android Messages apps.
Edit:
Had to do a bit of hacking around disassembling but I got this (where email is the address you want):
Uri imUri = new Uri.Builder().scheme("xmpp").authority("gtalk").query("call;type=video").appendPath(email).build();
Intent IM = new Intent(Intent.ACTION_SENDTO);
IM.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
IM.setData(imUri);
startActivity(IM);
This works, but still gives a prompt on whether you want to start a video chat, which is not quite what I need. Hope this helps some other people.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With