Advertisement
a888mm

Untitled

Jan 23rd, 2020
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.17 KB | None | 0 0
  1. # coding=utf-8
  2. import telebot
  3. import os
  4. import sqlite3 as sql
  5.  
  6. from telebot import types
  7.  
  8. # connection = sql.connect('user.sqlite', check_same_thread=False)
  9. # q = connection.cursor()
  10.  
  11. # q.execute('''CREATE TABLE user
  12. # (id int auto_increment primary key,
  13. # IDIS varchar(100),
  14. # Name varchar(100),
  15. # Number varchar(100),
  16. # Date varchar(100),
  17. # Time varchar(100),
  18. # People varchar(100),
  19. # Koment varchar(100))''')
  20. # connection.commit()
  21.  
  22. TOKEN = 'ТОКЕН'
  23. PHOTO_ZA1 = 'AgADAgADIasxGwxc0Em0g6bONWDWW0VCXw8ABIJmNSCXSDyOaMYAAgI'
  24. PHOTO_ZA2 = 'AgADAgADvKkxGwxc2EljbPgn3Gpiy_-cOQ8ABAfnUhaBhEt0XpUDAAEC'
  25. PHOTO_INT1 = 'AgADAgADxakxGwxc2EkORu3mO5vSPYlnXw8ABI3DjdW2WqBvCMcAAgI'
  26. PHOTO_INT2 = 'AgADAgADxqkxGwxc2EkU8NY1YgtJS0ukOQ8ABI9Pf_7PynwBsqADAAEC'
  27. PHOTO_INT3 = 'AgADAgADx6kxGwxc2EnRpV0tIctxXIxZOQ8ABGUOYXmNeDfavY0BAAEC'
  28. PHOTO_INT4 = 'AgADAgADyakxGwxc2EnaZmHx02hjXGLktw4ABFLzvSWU9gwL-7kFAAEC'
  29.  
  30. bot = telebot.TeleBot(TOKEN)
  31.  
  32. @bot.message_handler(commands = ['start'])
  33. def first(message):
  34. key = types.ReplyKeyboardMarkup(True, False)
  35. key.row('ℹ О нас', '📖 Меню')
  36. key.row('🛋 Интерьер')
  37. key.row('🍽 Забронировать столик')
  38. key.row('🚗 Доставка')
  39. bot.send_message(message.chat.id, 'Выберите действие ⤵', reply_markup=key)
  40.  
  41.  
  42. @bot.message_handler(content_types =['text', 'contact'])
  43. def main(message):
  44. if message.text == 'ℹ О нас':
  45. keyboard = telebot.types.ReplyKeyboardMarkup(True, False)
  46. keyboard.row('Ⓜ Главное меню')
  47. bot.send_message(message.chat.id, '▫️LOFT - это новый ресторан со смешанной кухней!\n\nУ нас вы можете попробовать мясные/крабовые бургеры и пиццу.\nВ меню всегда есть свежие морепродукты, а также изысканные блюда из фермерских продуктов!\nМы подаем лучшие сорта разливного и бутылочного пива, различные согревающие и соблазняющие коктейли.\n\nLOFT - это место, где проходят вечеринки, кулинарные мастер-классы и анимационные игры для детей. Каждую среду и\nвоскресенье мы собираемся на увлекательную игру Мафия!\nВ День Рождения скидка 20%\n\n🏡 Люберцы, ул Кирова 3\n☎️ 8 (495) 784-07-27\n🕘 12:00 - 00:00\n🌐 www.instagram.com/resto_loft')
  48. send = bot.send_message(message.chat.id, 'Выберите действие ⤵', reply_markup=keyboard)
  49. bot.register_next_step_handler(send, main)
  50. elif message.text == '📖 Меню':
  51. keyboard = telebot.types.ReplyKeyboardMarkup(True, False)
  52. keyboard.row('🍽 Забронировать столик')
  53. keyboard.row('🚗 Доставка')
  54. keyboard.row('Ⓜ Главное меню')
  55. bot.send_photo(message.chat.id, PHOTO_ZA1)
  56. bot.send_photo(message.chat.id, PHOTO_ZA2)
  57. bot.send_message(message.chat.id, 'Выберите действие ⤵', reply_markup=keyboard)
  58. elif message.text == '🛋 Интерьер':
  59. keyboard = types.ReplyKeyboardMarkup(True, False)
  60. keyboard.row('Ⓜ Главное меню')
  61. bot.send_photo(message.chat.id, PHOTO_INT1)
  62. bot.send_photo(message.chat.id, PHOTO_INT2)
  63. bot.send_photo(message.chat.id, PHOTO_INT3)
  64. bot.send_photo(message.chat.id, PHOTO_INT4)
  65. send = bot.send_message(message.chat.id, 'Выберите действие ⤵', reply_markup=keyboard)
  66. bot.register_next_step_handler(send, main)
  67. elif message.text == '🍽 Забронировать столик':
  68. keyboard = types.ReplyKeyboardMarkup(True, False)
  69. keyboard.row('Ⓜ Главное меню')
  70. send = bot.send_message(message.chat.id, 'Пожалуйста, представтесь:', reply_markup=keyboard)
  71. bot.register_next_step_handler(send, next2)
  72. elif message.text == '🚗 Доставка':
  73. keyboard = types.ReplyKeyboardMarkup(True, False)
  74. keyboard.row('Ⓜ Главное меню')
  75. send = bot.send_message(message.chat.id, 'Пожалуйста, представтесь:', reply_markup=keyboard)
  76. bot.register_next_step_handler(send, a1)
  77. elif message.text == 'Ⓜ Главное меню':
  78. first(message)
  79.  
  80. def next2(message):
  81. if message.text == 'Ⓜ Главное меню':
  82. first(message)
  83. elif message.text:
  84. # global user_id
  85. # global user_name
  86. # user_id = message.from_user.id
  87. # user_name = message.text
  88. # print('Id Пользователя =', message.from_user.id)
  89. # print('Имя =', message.text)
  90. keyboard = types.ReplyKeyboardMarkup(True, False)
  91. button_phone = types.KeyboardButton(text='Оставить номер', request_contact=True)
  92. keyboard.add(button_phone)
  93. keyboard.row('Ⓜ Главное меню')
  94. send = bot.send_message(message.chat.id, 'Очень приятно, {name}. Оставьте, пожалуйста, Ваш номер телефона:'.format(name=message.text), reply_markup=keyboard)
  95. bot.register_next_step_handler(send, next3)
  96.  
  97. def next3(message):
  98. if message.text == 'Ⓜ Главное меню':
  99. first(message)
  100. elif message.contact:
  101. # global user_phone
  102. # user_phone = message.contact.phone_number
  103. keyboard = types.ReplyKeyboardMarkup(True, False)
  104. keyboard.row('Ⓜ Главное меню')
  105. send = bot.send_message(message.chat.id, 'Напишите желаемую дату:', reply_markup=keyboard)
  106. bot.register_next_step_handler(send, next4)
  107. elif message.text:
  108. send = bot.send_message(message.chat.id, 'Оставьте, пожалуйста, ваш номер телефона.')
  109. bot.register_next_step_handler(send, next3)
  110.  
  111. def next4(message):
  112. if message.text == 'Ⓜ Главное меню':
  113. first(message)
  114. else:
  115. # global user_date
  116. # user_date = message.text
  117. keyboard = types.ReplyKeyboardMarkup(True, False)
  118. keyboard.row('12:00', '12:30')
  119. keyboard.row('13:00', '13:30')
  120. keyboard.row('14:00', '14:30')
  121. keyboard.row('15:00', '15:30')
  122. keyboard.row('16:00', '16:30')
  123. keyboard.row('17:00', '17:30')
  124. keyboard.row('18:00', '18:30')
  125. keyboard.row('19:00', '19:30')
  126. keyboard.row('20:00', '20:30')
  127. keyboard.row('21:00', '21:30')
  128. keyboard.row('Ⓜ Главное меню')
  129. send = bot.send_message(message.chat.id, 'Выберите время', reply_markup=keyboard)
  130. bot.register_next_step_handler(send, next6)
  131.  
  132. def next6(message):
  133. if message.text == 'Ⓜ Главное меню':
  134. first(message)
  135. else:
  136. # global user_time
  137. # user_time = message.text
  138. keyboard = types.ReplyKeyboardMarkup(True, False)
  139. keyboard.row('1', '2', '3', '4', '5', '6')
  140. keyboard.row('Ⓜ Главное меню')
  141. send = bot.send_message(message.chat.id, 'Укажите количество персон:', reply_markup=keyboard)
  142. bot.register_next_step_handler(send, next7)
  143.  
  144. def next7(message):
  145. if message.text == 'Ⓜ Главное меню':
  146. first(message)
  147. elif message.text:
  148. # global user_people
  149. # user_people = message.text
  150. keyboard = types.ReplyKeyboardMarkup(True, False)
  151. keyboard.row('Ⓜ Главное меню')
  152. send = bot.send_message(message.chat.id, 'Если нужно, оставьте комментарий:', reply_markup=keyboard)
  153. bot.register_next_step_handler(send, next8)
  154.  
  155. def next8(message):
  156. if message.text == 'Ⓜ Главное меню':
  157. first(message)
  158. elif message.text:
  159. # global user_koment
  160. # user_koment = message.text
  161. # q.execute("INSERT INTO user (IDIS, Name, Number, Date, Time, People, Koment) VALUES ('%s', '%s', '%s', '%s', '%s', '%s', '%s')"%(user_id, user_name, user_phone, user_date, user_time, user_people, user_koment))
  162. send = bot.send_message(message.chat.id, 'Спасибо, мы вскоре вам позвоним, чтобы уточнить бронь.')
  163. # q.execute("SELECT * FROM user")
  164. bot.register_next_step_handler(send, first)
  165. # q.close()
  166. # connection.commit()
  167. # connection.close()
  168.  
  169. def a1(message):
  170. if message.text == 'Ⓜ Главное меню':
  171. first(message)
  172. else:
  173. keyboard = types.ReplyKeyboardMarkup(True, False)
  174. button_phone = types.KeyboardButton(text='Оставить номер', request_contact=True)
  175. keyboard.add(button_phone)
  176. keyboard.row('Ⓜ Главное меню')
  177. send = bot.send_message(message.chat.id, 'Очень приятно, {name}. Оставьте, пожалуйста, Ваш номер телефона:'.format(name=message.text), reply_markup=keyboard)
  178. bot.register_next_step_handler(send, a2)
  179.  
  180. def a2(message):
  181. if message.text == 'Ⓜ Главное меню':
  182. first(message)
  183. elif message.contact:
  184. keyboard = types.ReplyKeyboardMarkup(True, False)
  185. keyboard.row('Ⓜ Главное меню')
  186. send = bot.send_message(message.chat.id, 'Укажите адрес доставки:', reply_markup=keyboard)
  187. bot.register_next_step_handler(send, a3)
  188. elif message.text:
  189. send = bot.send_message(message.chat.id, 'Оставьте, пожалуйста, ваш номер телефона.')
  190. bot.register_next_step_handler(send, a2)
  191.  
  192. def a3(message):
  193. if message.text == 'Ⓜ Главное меню':
  194. first(message)
  195. elif message.text:
  196. keyboard = types.ReplyKeyboardMarkup(True, False)
  197. keyboard.row('1', '2', '3', '4', '5', '6')
  198. keyboard.row('Больше')
  199. keyboard.row('Ⓜ Главное меню')
  200. send = bot.send_message(message.chat.id, 'Укажите количество персон:', reply_markup=keyboard)
  201. bot.register_next_step_handler(send, a4)
  202.  
  203. def a4(message):
  204. if message.text == 'Ⓜ Главное меню':
  205. first(message)
  206. elif message.text:
  207. keyboard = types.ReplyKeyboardMarkup(True, False)
  208. keyboard.row('Ⓜ Главное меню')
  209. send = bot.send_message(message.chat.id, 'Если нужно, оставьте комментарий:', reply_markup=keyboard)
  210. bot.register_next_step_handler(send, a5)
  211.  
  212. def a5(message):
  213. if message.text == 'Ⓜ Главное меню':
  214. first(message)
  215. elif message.text:
  216. send = bot.send_message(message.chat.id, 'Спасибо, Держите телефон при себе, оператор свяжется с Вами в ближайшее время для подтверждения заказа.')
  217. bot.register_next_step_handler(send, first)
  218.  
  219. bot.polling()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement