예제 #1
0
 def notify_restaurant(self):
     if self.restaurant.has_gps_printer:
         # Send GPS push
         pass
         return True
     elif self.restaurant.has_merchant_app:
         # Send GCM Push
         pass
         return True
     else:
         try:
             for contact in self.restaurant.numbers.all():
                 if contact.number_type == NUMBER_TYPE[1][0]:
                     s = SMS()
                     s.send(mobile_number=contact.number, sms_text=self.order_text())
                     OrderLog.objects.create(order=self, message="Restaurant notified via SMS, to"
                                                                 " be followed up by a call",
                                             owner_type='system', owner_id=self.agent.id)
                     return True
         except ObjectDoesNotExist:
             Logger.log_ticket(order=self, message=dict(STOCK_MESSAGES)['failed_to_notify'],
                               owner=self.agent, owner_type='system', ticket_type=TICKET_TYPE[1][0])
             return False
예제 #2
0
    def should_call(self):
        ticket_id, numbers = None, None

        if self.restaurant.has_to_be_called:
            numbers = [c.number for c in self.restaurant.numbers.all() if c.number_type == NUMBER_TYPE[2][0]]
            ticket_id = Logger.log_ticket(order=self, message="System ticket created to place order via "
                                                  "outbound call with restaurant", owner=self.agent,
                              owner_type="Agent", ticket_type='place_order')
        #else:
        #self.notify_restaurant()

        return {
                "order": self,
                "estimated_delivery_time": 20, #abs((self.expected_delivery_time - datetime.now()).minutes),
                "contact_numbers": numbers,
                "ticket_id": ticket_id
                }