Sending MP3 over the internet to a phone via GSM - php

How do i send an MP3 file to a mobile phone directly from the internet over a GSM network, Will love to implement this using PHP, every response will be appreciated. Thank you.

Afaik, you need to use a Content Delivery Platform of a GSM provider for this.
I remember researching this a couple years back when mobile content, especially ringtones, had been all the rage. Things might have changed since then (especially with phones having WiFi access), but you had to have a contract with someone that actually has access to the GSM network to send the mobile content to cellphones.
You'd then use this providers API to manage your content and to send it to devices. For instance for the german Deutsche Telekom, there is a Zend_Service package that allows you to use some of their telecommunication services (for a charge). This particular one doesn't allow sending of digital content like MMS or MP3s, but it might given you an idea what to look for.
Edit: try googling for MMS Gateway and check with your country's GSM providers

directly from the internet over a GSM network
GSM is a low level network protocol, while it is possible to write a stream directly to a port on the device (yes, it uses ports, just like IP) or even compose individual packets, this pre-supposes that you have access to a gateway device in order to do this from an IP connected device. Why bother? It'd be really hard to find a phone which does not support WAP or iMode made in the last 10 years - and there is already an infrastructure and protocols in place to map the internet into the mobile networks (regardless if they are GSM, GPRS, Edge...).
And of course, unlike using a browser on your PC, the WAP protocol allows for push notifications - but this requires the services of a wap gateway (e.g. Kannel) rather than just a simple website.
This would deliver the content as a file if you want to stream audio over a telephone conversation - that's something different. Have a look at VOIP/PBX systems e.g. Asterisk

From the comments I am guessing you want to exchange sound files between two people, one on an ordinary Internet connection, the other on GSM. Or else you could just design a mobile-friendly web site where GSM/GPRS users can download their music.
Under this assumption, XMPP (a.k.a Jabber) might be a solution.There are even XMPP libraries for JavaME and most certainly for iPhone and Android. Of course, both users must have an active Internet connection.

Related

How to implement file sharing for mobile app over wireless network

I’m developing an app using Adobe Air. I want my users to be able to transfer files from a computer into the internal storage of the mobile app, but over a wireless router.
Question:
How to operate like a web server using my AIR app (turn the current smartphone into a web server)? I want run server-side scripts like PHP from device.
When the smart phone and the desktop (Mac/PC) are connected to the same wi-fi network, each one has an IP address like 192.168.1.xxx. Using the app, a PHP script will handle the file upload operation.
I am open to other (more correct or efficient) methods about transferring files between two devices, since the PHP way might be only solving an X/Y problem.
You could leverage the Adobe Cirrus technology (and you won't need any PHP).
Using Cirrus, you can create the functionality that you describe even if the devices are not on the same WiFi network (having in mind both the PC and the mobile device are running AIR applications). AIR is needed on the PC side in order to be able to access the files without user intervention. You won't enter the IP in order to link the PC app with the mobile app, although you'll need to provide the address received from the Cirrus service.
It is not trivial to write and test the apps, but they're definitely doable.
At the link above you should find all the info and resources in order to get started including how to get a developer key, an overview of RTMFP Groups and a sample app.

How to make a call to Telephone by TAPI?

I need to design an API that enables phone number, when clicked, make a call via TAPI system. How should it be achieved via Programming?
I am using CakePHP application. Also, the user needs to enable Call in Desktops, mobile and Tablets. Is there any apis available for such Interfacing?
I tried using:
Call 800-555-0199
But I got the following error in firefox:
The address wasn't understood
Firefox doesn't know how to open this address, because one of the following protocols (tel) isn't associated with any program or is not allowed in this context.
You can't.
TAPI is not an applicable technology here. It is only available to Windows desktop applications, and can only be used there to control voice modems and PBX systems. As such, it is not usable even on most Windows desktop systems, as they are not connected to the appropriate phone hardware. It is certainly not usable in a web page, or in a CakePHP application.
The only generally available way to initiate a telephone call from a web page is by creating a tel: link, e.g.
Call 800-555-0199
Keep in mind that this will still only work on devices that have some sort of access to the telephone network, either directly, e.g. on cell phones, or indirectly, e.g. via Skype or other VOIP applications.

How best to deliver notifications to various IM / notification services?

We have a website which provides time-critical updates on changes in the value of FOO, and want to deliver notifications of new data via various IM protocols.
For reasons best known to themselves (and their parents), the FOO-traders use Yahoo! Messenger, MSN, gTalk, AIM, you name it. They want to receive their updates on their desktops so they can buy and sell FOO realtime.
We want to deliver the updates to them via the various networks, without investing a huge amount of time in supporting new networks.
I'm aware of services like RPX (or whatever it's now called) and Gigya, which allow you to authenticate across multiple websites. I want something similar, but which allows us to deliver IM to the same various networks.
The service should be able to readily expose access to notifications coming from a PHP (Drupal 7) website.
The website is a paid subscription service; we are not after a cross-network spam solution. I say this (1) so you won't hate me (2) because if we wanted to send spam, that would probably preclude gateway providers.
Self-hosted solutions like PHPurple are an option also, but I haven't found much online to recommend it as an option yet.
Support for other networks will be a bonus, although I haven't seen any of the FOO-traders use Twitter yet. We will also include SMS and email notification for added old-school cred.
Through Jabber server.
Set up Jabber server
Register accounts for all the services you going to use
Register gateways, all jabber servers support them
Test through GUI jabber client
Write a daemon (or get somewhere), which logs into jabber, starts up gateways, reads messages from somewhere and sends them right away.
There are command-line utilities, but they won't work, because server won't keep gateways connected unless on it's own.
XMPP protocol is quite straightforward and has many libraries.
For reliable SMS you might need to use other, 3rd party protocols or utilities.

SIP subscription in PHP

I have several Snom VoIP phones in the office running off a virtual phone system in London somewhere.
I've written a small PHP app that lets me control the phone remotely - all it does in the background is cURL into my handset's web interface and control it that way.
However now I'd like my PHP app to know what other phones on the system are available/busy. I think the phone handsets do this by way of a SIP subscription with the virtual phone system, whereby my handset subscribes to feeds from all other handsets on the system and can then light/extinguish the busy lamp.
Am I going about this the right way? Is there any way I can have a PHP script subscribe to those notifications?
Many thanks in advance
This is not likely, but really depends on what you mean by a "PHP app". If it's a standard web-based application, you can't do anything about it. SIP communication is done over UDP sockets and requires you to listen all the time for responses.
If you mean an actual application, running all the time, then you need to implement the SUBSCRIBE/NOTIFY part of SIP spec and it is of course possible.
If you want to pull the statuses of other phones into your web application, I'd recommend setting up a server which will handle the standard SIP communication and subscribe to the phone's presence, then update the information in a local database. In the web app you can simply read the current status from the database and present it to the user.

Contact information web standard

Is the a standard which I can use for our contacts? I want to build an application which hosts our clients contact information. Is there a standard I should use so it is possible to sync with as many clients as possible?
In Outlook I can find something about "LDAP" can you give any tutorials maybe?
I would want to support 2 way syncing so that I can edit something in outlook for example and it uploads it to our servers. Like with calendars the CalDAV
The hCard (or older vCard) formats sound like what you're looking for.
Check out Microformats. I'm not sure if they're supported in the places you want, but they're an interesting little bit of bootstrapped markup. They have a contact info format called hCard.
CardDAV is the emerging standard. It's like CalDAV, but stores the contact resources in vCard files and makes them accessible using extensions to WebDAV. So far, only Apple have implemented it on the server with Mac OS X Server 10.6's Address Book Server, and on the client with Address Book on Mac OS X 10.6.
iPhone Support is still lacking (as of firmware 3.1), and there are still several limitations with Apple's implementation of Address Book server, namely no Organisation-wide contacts (like public folders), and no delegation/permissions can be set on the accounts.
There is also no web interface for viewing/editing them, so unless your clients are all on 10.6, they're left in the cold.
An alternative approach would be to use Exchange 2007 and EWS (Exchange web services) to store and access centralized contacts, that will sync back to clients.

Categories