Welcome, guest | Sign In | My Account | Store | Cart
import sys
import appuifw
import messaging
import positioning

class Worker(object):
    def tweet_position(self, position):
        def call_back(state):
            if state == messaging.ESent:
                sys.stdout.write(u"Tweeted!\n")
            elif state == messaging.ESendFailed:
                sys.stdout.write(u"Something went wrong :(\n")
        
        sms = u"""%s
        I am here http://maps.google.com/maps?q=%s,%s
        """ % ((appuifw.query(u"tweet @, or cancel to tweet everybody:", "text") or ""),
            position['latitude'],position['longitude'])
        
        sys.stdout.write(u"Tweeting position ... ")
        messaging.sms_send(u"+8988", sms, callback=call_back) # +8988 -- Twitter number
    
    def get_position(self):
        positioning.select_module(270526860) # A-GPS -- you need at least a working GPRS connection
        positioning.set_requestors([{"type":"service","format":"application","data":"iamhere"}])
        sys.stdout.write(u"Retrieving position ...\n")
        return positioning.position()['position']
        
def main():
    worker = Worker()
    worker.tweet_position(worker.get_position())
    
if __name__ == '__main__':
    main()

Diff to Previous Revision

--- revision 9 2011-03-20 14:44:43
+++ revision 10 2012-11-27 04:13:29
@@ -1,4 +1,5 @@
 import sys
+import appuifw
 import messaging
 import positioning
 
@@ -10,9 +11,10 @@
             elif state == messaging.ESendFailed:
                 sys.stdout.write(u"Something went wrong :(\n")
         
-        sms = u"""
+        sms = u"""%s
         I am here http://maps.google.com/maps?q=%s,%s
-        """ % (position['latitude'],position['longitude'])
+        """ % ((appuifw.query(u"tweet @, or cancel to tweet everybody:", "text") or ""),
+            position['latitude'],position['longitude'])
         
         sys.stdout.write(u"Tweeting position ... ")
         messaging.sms_send(u"+8988", sms, callback=call_back) # +8988 -- Twitter number

History