12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- import xmpp
- from xmpp import cli
- import config
- from BotClass import JabberBot
- import json
- #раскомментировать, когда перейдем на разные пароли
- from datetime import datetime
- import time
- #test
- import jsonAndRequest as jsreq
- def proceed_status(self, recipient, ticket):
- #тут могут быть различные проверки дополнительные, а так вообще эта функция нужна для передачи заявки на обработку следующему
- jsonTicket = json.dumps(ticket.__dict__)
- self.conn.send(xmpp.Message(recipient, jsonTicket))
- self.bot_log("Message sent successfully"+" "+recipient+" "+jsonTicket)
- # обработчик входящих сообщений
- def message_handler(self, conn, mess):
- text = mess.getBody()#текст сообщения боту
- user = mess.getFrom()#отправитель сообщения
-
- #проверка на возможность получения сообщений от данного обработчика
- print (str(user).split("/")[0])
- if (str(user).split("/")[0]) in listen_to:
- print(text)
- print(mess)
- if text is not None:
- orderObj = jsreq.jsonToOrderTicket(text)
- print (orderObj)
- tasklist.append(orderObj)
- self.bot_log(str(datetime.now())+" Поступивший заказ успешно добавлен в очередь обработки\n")
- #TODO - для обработчиков Ticket скорее надо будет функции вынести в отдельную библиотеку, они типовые же
- def pending_wait(self, period, localtask, proceed_to):
- self.bot_log(botname+" "+str(datetime.now())+" "+"Заказ ожидает пользовательской реакции\n")
- time.sleep(period)
-
- #ВАЖНО! НАДО ВСТАВИТЬ ИЗМЕНЕНИЕ СТАТУСА ЧЕРЕЗ API
- #обязательно данный обработчик должен заканчиваться передачей заказа куда-то на обработку дальше - обратно или другому, иначе оно потеряется
- self.proceed_status(proceed_to,localtask)
- self.bot_log(botname+" "+str(datetime.now())+" "+"Заказ отправлен в очередь "+proceed_to+"\n")
- def order_close(self, localtask):
- #тут надо вызов API с удалением
- self.bot_log(botname+" "+str(datetime.now())+" "+"Заказ удален\n")
|