Exemple #1
0
 def get_all_secondary_bridges(self, bridge):
     self._cursor.execute(
         'SELECT * FROM secondary_bridge WHERE primary_tg_id = ?',
         (bridge.tg_group_id, ))
     lines = self._cursor.fetchall()
     secondary_bridges = {}
     for line in lines:
         secondary_bridges[line['tg_id']] = Bridge.SecondaryBridge(
             line['tg_id'], line['validated'], line['token'], bridge)
     return secondary_bridges
Exemple #2
0
    def secondary_bridge(self, bot, update, user_data):
        if update.message.text == 'yes':
            user_data['token'] = ''.join(
                random.SystemRandom().choice(string.ascii_uppercase + string.digits) for _ in range(6))
            dbc = DatabaseConnection()
            primary_tg_id = dbc.get_primary_group_id_by_irc_data(user_data['channel'],
                                                                 user_data['irc_server_description'])
            secondary_bridge = Bridge.SecondaryBridge(user_data['tg_group_id'], False, user_data['token'],
                                                      self.bridges[primary_tg_id])
            dbc.add_secondary_bridge(secondary_bridge)
            update.message.reply_text(
                'To validate this secondary bridge, someone with +o has to paste this code into the channel: !token %s' %
                user_data['token'])
            return ConversationHandler.END

        elif update.message.text == 'no':
            update.message.reply_text('No? Ok... Abort!')
            return ConversationHandler.END
        else:
            update.message.reply_text('Can\'t understand you.')
            return self.CREATE_SECONDARY_BRIDGE
        return ConversationHandler.END