Esempio n. 1
0
def send_broadcast():
    users = Firebase('https://bott-a9c49.firebaseio.com/users/').get()
    for user in users:
        trackings = Firebase('https://bott-a9c49.firebaseio.com/users/' +
                             user).get()
        for track in trackings:
            status = Firebase('https://bott-a9c49.firebaseio.com/users/' +
                              user + '/' + track).get()
            if (u"NOT FOUND" in status['tag']):
                if status.has_key('courier_link'):
                    retval = get_tracking_by_courier(status['courier_link'])
                else:
                    if track.startswith("SP"):
                        retval = get_tracking_shippop(track)
                    else:
                        retval = get_tracking(track)
                if retval != 0 and retval != None:
                    if retval['tag'] != status['tag']:
                        print retval
                        tag = Firebase(
                            'https://bott-a9c49.firebaseio.com/users/' + user +
                            '/' + track)
                        if status.has_key('subscribe'):
                            tag.set({
                                'tag': retval['tag'],
                                'subscribe': 'true',
                                'updated_at': str(datetime.datetime.now())
                            })
                        else:
                            tag.set({
                                'tag': retval['tag'],
                                'updated_at': str(datetime.datetime.now())
                            })
                        send_message(user, retval, track)
            elif status.has_key(
                    'subscribe') and u"Delivered" not in status['tag']:
                print user, track, status['subscribe']
                if "true" in status['subscribe']:
                    if status.has_key('courier_link'):
                        retval = get_tracking_by_courier(
                            status['courier_link'])
                    else:
                        if track.startswith("SP"):
                            retval = get_tracking_shippop(track)
                        else:
                            retval = get_tracking(track)
                    if retval != 0 and retval != None:
                        if retval['tag'] != status['tag']:
                            print retval
                            tag = Firebase(
                                'https://bott-a9c49.firebaseio.com/users/' +
                                user + '/' + track)
                            tag.set({
                                'tag': retval['tag'],
                                'subscribe': 'true',
                                'updated_at': str(datetime.datetime.now())
                            })
                            send_message(user, retval, track)