I like it, sounds good, I'm all for free-as-in-beer ways to talk to my free-as-in-speech phone :)
G -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Richard Bennett Sent: 07 February 2007 11:17 To: [email protected] Subject: Missed call communication protocol Hi all, In keeping with moving the control advantage away from the network operators, and to the users, I wonder what you think of this suggestion: When you use a SIP server, like Openser.org , you can set the CLI (Calling line identifier) to any value you like when you send the call on to a PSTN gateway. That means the 'from' number you see on your mobile screen when I call you from a SIP proxy can be any numeric value I like. (most PSTN termination gateways will require a valid e164 number http://www.answers.com/topic/e-164). So I can send a call to my openmoko number, using a CLI set to +10 followed by 13 arbitrary numbers, which should satisfy the e164 requirement . No real phone numbers start with +10 , so I could program my openmoko to reject any calls arriving with a CLI starting with +10, and to process the next 13 numbers of the CLI as a message, hiding this call from the missed calls list. As far as I know there is no networks charge for a rejected call from a mobile, and initiating a call from the openmoko to a number that always returns a 'busy' would also be free of charge. This gives us a free up/down communication channel that can take a payload of 13 numbers in each packet. This could be used for: * Push email notification. * Presence. Like the 'online' indicator in a chat app that shows your status. This is the next big area carriers are looking to charge us for, with their new IM platforms. It can also be used in the routing logic of your own SIP proxy/PBX, for instance: "Forward calls to mobile unless GSM presence is 'meeting' in that case send calling number by SMS, if SMS presence is 'available', and forward calls to secretary". * Ultra Short Message Service (SMSes that use a phrase-book on both sender and receiver, so you send the number that identifies a pre-formatted message i.e.: 112='Please call home when you're free'). * Trigger predefined macros (shell scripts) on the phone, like "Send GPS coords by SMS". * Sync applications, like 'mark meeting14 as postponed', or "New updates available, do you want to sync now?" etc Unless our list lawyers shoot this idea down from the start, we could start thinking about the best way to define a missed-call protocol. I'm thinking of using 4 of the numbers as a identifying pincode, then a 3 digit action identifier, and use the next 6 digits as payload depending on what action was selected . For instance update our presence info from the Openmoko to a server: Call server: +122334455 send CLI +101234999100100 That is: +1 = Required valid international code 0 = protocol identifier that never occurs in real calls. 1234= pincode to identify the caller, and assign access rights. (Many different servers could send MCP (missed call protocol) messages to the same phone, a bit like the bluetooth pincode/identifier) 999 = matches 'update presence information' 1 = GSM available. 0 = GPRS offline 0 = Bluetooth offline 1 = SMS available 0 = reserved 0 = reserved. What do you think? Richard. _______________________________________________ OpenMoko community mailing list [email protected] https://lists.openmoko.org/mailman/listinfo/community _______________________________________________ OpenMoko community mailing list [email protected] https://lists.openmoko.org/mailman/listinfo/community

