コード例 #1
0
ファイル: media.py プロジェクト: KarimJedda/whatsapp-bot-seed
class MediaViews:
    def __init__(self, interface_layer):
        """
            Creates the regex routes and callbacks to handle media messages
        """
        self.image_sender = ImageSender(interface_layer)
        self.video_sender = VideoSender(interface_layer)
        self.yt_sender = YoutubeSender(interface_layer)
        self.url_print_sender = UrlPrintSender(interface_layer)
        self.google_tts_sender = GoogleTtsSender(interface_layer)
        self.routes = [
            ("https?:\/\/(?:[\w\-]+\.)+[a-z]{2,6}(?:\/[^\/#?]+)+\.(?:jpe?g|gif|png)($|\?[^\s]+$)", self.send_image),
            ("https?:\/\/(?:[\w\-]+\.)+[a-z]{2,6}(?:\/[^\/#?]+)+\.(?:mp4|webm)($|\?[^\s]+$)", self.send_video),
            ("https?:\/\/(?:www\.)?youtu(?:be.com\/watch\?v=|\.be/)(?P<video_id>[\w-]+)(&\S*)?$", self.send_yt_video),
            ("^https?:\/\/(?:www\.)?[^$]+$", self.send_url_print),
            ("/tts\s(?P<text>[^\[]{1,500})\s?\[?(?P<lang>[A-Za-z\-]{2,6})?\]?$", self.send_tts),
        ]

    def send_video(self, message, match):
        self.video_sender.send_by_url(jid=message.getFrom(), file_url=message.getBody())

    def send_yt_video(self, message, match):
        self.yt_sender.send_by_url(jid=message.getFrom(), file_url=match.group("video_id"))

    def send_image(self, message, match):
        self.image_sender.send_by_url(jid=message.getFrom(), file_url=message.getBody())

    def send_url_print(self, message, match):
        self.url_print_sender.send_by_url(jid=message.getFrom(), file_url=message.getBody())

    def send_tts(self, message, match):
        self.google_tts_sender.send(jid=message.getFrom(), text=match.group("text"), lang=match.group("lang"))
コード例 #2
0
ファイル: routes.py プロジェクト: beevelop/whatsappcli
class MediaViews():
    def __init__(self, interface_layer):

        self.image_sender = ImageSender(interface_layer)
        self.google_tts_sender = GoogleTtsSender(interface_layer)
        self.routes = [
            ("^sendimage\s(?P<image>[^$]+)", self.send_image),
            ("^say\s(?P<say>[^$]+)", self.send_tts)
        ]

    def send_image(self, message, match):
        self.image_sender.send_by_path(jid=message.getFrom(), path= os.getcwd() + '/images/' + match.group('image'))

    def send_tts(self, message, match):
        self.google_tts_sender.send(jid=message.getFrom(), text=match.group("say"), lang='en')
コード例 #3
0
ファイル: routes.py プロジェクト: beevelop/whatsappcli
    def __init__(self, interface_layer):

        self.image_sender = ImageSender(interface_layer)
        self.google_tts_sender = GoogleTtsSender(interface_layer)
        self.routes = [
            ("^sendimage\s(?P<image>[^$]+)", self.send_image),
            ("^say\s(?P<say>[^$]+)", self.send_tts)
        ]
コード例 #4
0
class MediaViews():
    def __init__(self, interface_layer):

        self.image_sender = ImageSender(interface_layer)
        self.google_tts_sender = GoogleTtsSender(interface_layer)
        self.routes = [("^sendimage\s(?P<image>[^$]+)", self.send_image),
                       ("^say\s(?P<say>[^$]+)", self.send_tts)]

    def send_image(self, message, match):
        self.image_sender.send_by_path(jid=message.getFrom(),
                                       path=os.getcwd() + '/images/' +
                                       match.group('image'))

    def send_tts(self, message, match):
        self.google_tts_sender.send(jid=message.getFrom(),
                                    text=match.group("say"),
                                    lang='en')
コード例 #5
0
ファイル: media.py プロジェクト: KarimJedda/whatsapp-bot-seed
 def __init__(self, interface_layer):
     """
         Creates the regex routes and callbacks to handle media messages
     """
     self.image_sender = ImageSender(interface_layer)
     self.video_sender = VideoSender(interface_layer)
     self.yt_sender = YoutubeSender(interface_layer)
     self.url_print_sender = UrlPrintSender(interface_layer)
     self.google_tts_sender = GoogleTtsSender(interface_layer)
     self.routes = [
         ("https?:\/\/(?:[\w\-]+\.)+[a-z]{2,6}(?:\/[^\/#?]+)+\.(?:jpe?g|gif|png)($|\?[^\s]+$)", self.send_image),
         ("https?:\/\/(?:[\w\-]+\.)+[a-z]{2,6}(?:\/[^\/#?]+)+\.(?:mp4|webm)($|\?[^\s]+$)", self.send_video),
         ("https?:\/\/(?:www\.)?youtu(?:be.com\/watch\?v=|\.be/)(?P<video_id>[\w-]+)(&\S*)?$", self.send_yt_video),
         ("^https?:\/\/(?:www\.)?[^$]+$", self.send_url_print),
         ("/tts\s(?P<text>[^\[]{1,500})\s?\[?(?P<lang>[A-Za-z\-]{2,6})?\]?$", self.send_tts),
     ]
コード例 #6
0
    def __init__(self, interface_layer):

        self.image_sender = ImageSender(interface_layer)
        self.google_tts_sender = GoogleTtsSender(interface_layer)
        self.routes = [("^sendimage\s(?P<image>[^$]+)", self.send_image),
                       ("^say\s(?P<say>[^$]+)", self.send_tts)]