示例#1
0
文件: walog.py 项目: marcoh00/walog
def setup_stack(credentials, target_dir):
    stack_builder = YowStackBuilder()
    stack = stack_builder.pushDefaultLayers(
        axolotl=True).push(LogLayer).build()
    stack.setCredentials(credentials)
    stack.setProp(LogLayer.PROP_TARGET, target_dir)
    return stack
示例#2
0
    def __init__(self, credentials, encryptionEnabled = False):
        stackBuilder = YowStackBuilder()


        self.stack = stackBuilder.pushDefaultLayers(encryptionEnabled).push(SendLayer).build()
        # self.stack.setProp(YowAuthenticationProtocolLayer.PROP_PASSIVE, True)
        self.stack.setCredentials(credentials)
示例#3
0
    def start(self,config):
        yowsupConfig = config['Yowsup']
        credentials = (yowsupConfig["Username"], yowsupConfig["Password"])  # replace with your phone and password
        sendQueue = queue.Queue()
        stackBuilder = YowStackBuilder()
        self.stack = stackBuilder \
            .pushDefaultLayers(True) \
            .push(QueueLayer(sendQueue)) \
            .push(YowMediaProtocolLayer) \
            .build()

        beanstalkdConfig = config['Beanstalkd']
        beanstalkdStack = BeanstalkStack()
        beanstalkdStack.setConnectParams(beanstalkdConfig["Host"], beanstalkdConfig["Port"], sendQueue, self.stack)

        beanstalkdStack.daemon = True
        beanstalkdStack.start()

        self.stack.setCredentials(credentials)
        connectEvent = YowLayerEvent(YowNetworkLayer.EVENT_STATE_CONNECT)
        self.stack.broadcastEvent(connectEvent)

        while 1:
            try:
                #self.stack.loop(timeout = 0.5, discrete = 0.5)
                self.stack.loop(timeout = 0.5)
            except AuthError as e:
                print("Auth Error, reason %s" % e)
            # Bugfix for : https://github.com/tgalal/yowsup/issues/978
            except DuplicateMessageException as e:
                print('Please delete .yowsup/<yournumber>/axolotl.db')
                break
                pass
示例#4
0
    def start(self, incoming, outgoing):
        # TODO: Is encryption possible with groups?
        use_encryption = False
        self.incoming = incoming

        stackBuilder = YowStackBuilder()
        self.stack = stackBuilder \
            .pushDefaultLayers(use_encryption) \
            .push(MsgCenterLayer) \
            .build()

        self.stack.setCredentials(self.credentials)
        self.stack.setProp(MsgCenterLayer.PROP_OUTGOING, outgoing)
        self.stack.setProp(MsgCenterLayer.PROP_BACKEND_NAME, self.name)
        self.stack.broadcastEvent(YowLayerEvent(YowNetworkLayer.EVENT_STATE_CONNECT))

        # TODO:Use multiprocessing. There seems to be a problem with yowsup:
        # https://github.com/tgalal/yowsup/issues/717
        p = Thread(target=self.wait_incoming_msgs)
        p.start()

        try:            
            self.stack.loop()                
        except AuthError as e:
            print("Authentication Error: %s" % e)
示例#5
0
    def __init__(self, encryptionEnabled=True):
        stackBuilder = YowStackBuilder()

        self.stack = stackBuilder\
            .pushDefaultLayers(encryptionEnabled)\
            .push(YowsupWebLayer)\
            .build()
        self.stack.setProp(PROP_IDENTITY_AUTOTRUST, True)
示例#6
0
 def __init__(self, credentials, messages, encryptionEnabled=True):
     stackBuilder = YowStackBuilder()
     self.stack = stackBuilder\
         .pushDefaultLayers(encryptionEnabled)\
         .push(SendMediaLayer)\
         .build()
     self.stack.setProp(SendMediaLayer.PROP_MESSAGES, messages)
     self.stack.setProp(YowAuthenticationProtocolLayer.PROP_PASSIVE, True)
     self.stack.setCredentials(credentials)
示例#7
0
    def __init__(self, credentials=None, encryptionEnabled=True):
        stackBuilder = YowStackBuilder()

        self.stack = stackBuilder\
            .pushDefaultLayers(encryptionEnabled)\
            .push(layer.Insulter)\
            .build()

        self.stack.setCredentials(CREDENTIALS)
示例#8
0
    def __init__(self, profile):
        stackBuilder = YowStackBuilder()

        self._stack = stackBuilder\
            .pushDefaultLayers()\
            .push(EchoLayer)\
            .build()
        print(dir(self._stack))
        self._stack.setCredentials(profile, )
示例#9
0
    def __init__(self, profile, storage_dir=None):
        stackBuilder = YowStackBuilder()

        self._stack = stackBuilder\
            .pushDefaultLayers()\
            .push(MediaSinkLayer)\
            .build()
        self._stack.setProp(MediaSinkLayer.PROP_STORAGE_DIR, storage_dir)
        self._stack.setProfile(profile)
示例#10
0
文件: stack.py 项目: leoluk/plcmon
    def __init__(self, profile):
        stackBuilder = YowStackBuilder()

        self._stack = (stackBuilder
                       .pushDefaultLayers()
                       .push(SendLayer)
                       .build())

        self._stack.setProfile(profile)
示例#11
0
    def __init__(self, credentials):
        stackBuilder = YowStackBuilder()

        self._stack = stackBuilder\
            .pushDefaultLayers()\
            .push(EchoLayer)\
            .build()

        self._stack.setCredentials(credentials)
示例#12
0
    def __init__(self, profile):
        stackBuilder = YowStackBuilder()

        self._stack = stackBuilder\
            .pushDefaultLayers()\
            .push(EchoLayer)\
            .build()

        self._stack.setProfile(profile)
示例#13
0
    def __init__(self, credentials, encryptionEnabled=True):
        stackBuilder = YowStackBuilder()

        self.stack = stackBuilder\
            .pushDefaultLayers(encryptionEnabled)\
            .push(BridgeLayer)\
            .build()

        self.stack.setCredentials(credentials)
示例#14
0
 def __init__(self, credentials, encryptionEnabled=True):
     stackBuilder = YowStackBuilder()
     self.stack = stackBuilder\
         .pushDefaultLayers(encryptionEnabled)\
         .push(IncomingLayer)\
         .push(OutgoingLayer)\
         .build()
     self.stack.setCredentials(credentials)
     self.stack.setProp(YowAxolotlLayer.PROP_IDENTITY_AUTOTRUST, True)
示例#15
0
    def __init__(self):
        builder = YowStackBuilder()

        self.stack = builder \
            .pushDefaultLayers() \
            .push(MacLayer) \
            .build()
        self.stack.setCredentials(credentials)
        self.stack.setProp(MacLayer.PROP_CONTACTS, list(config.contacts.keys()))
        self.stack.setProp(PROP_IDENTITY_AUTOTRUST, True)
示例#16
0
    def __init__(self, encryptionEnabled = True):
	CREDENTIALS = credentials.get_credentials()
        stackBuilder = YowStackBuilder()

        self.stack = stackBuilder\
            .pushDefaultLayers(encryptionEnabled)\
            .push(EchoLayer)\
            .build()

        self.stack.setCredentials(CREDENTIALS)
示例#17
0
    def __init__(self, profile):
        stackBuilder = YowStackBuilder()

        self._stack = stackBuilder\
            .pushDefaultLayers()\
            .push(YowsupCliLayer)\
            .build()

        self._stack.setProfile(profile)
        self._stack.setProp(PROP_IDENTITY_AUTOTRUST, True)
示例#18
0
    def __init__(self, credentials, encryptionEnabled=True):
        stackBuilder = YowStackBuilder()

        self.stack = stackBuilder\
            .pushDefaultLayers(encryptionEnabled)\
            .push(WhatsAppGatewayLayer)\
            .build()

        # Set the credentials set in the config/creds.py
        self.stack.setCredentials(credentials)
示例#19
0
    def __init__(self, credentials):
        stackBuilder = YowStackBuilder()

        self._stack = stackBuilder\
            .pushDefaultLayers()\
            .push(YowsupCliLayer)\
            .build()

        self._stack.setCredentials(credentials)
        self._stack.setProp(PROP_IDENTITY_AUTOTRUST, True)
示例#20
0
def workerwhatsapp():
    stackBuilder = YowStackBuilder()
    stack = stackBuilder.pushDefaultLayers(True).push(laye).build()
    stack.setCredentials(CREDENTIALS)
    stack.broadcastEvent(YowLayerEvent(YowNetworkLayer.EVENT_STATE_CONNECT))
    stack.setProp(YowNetworkLayer.PROP_ENDPOINT, YowConstants.ENDPOINTS[0])
    stack.setProp(YowCoderLayer.PROP_DOMAIN, YowConstants.DOMAIN)
    stack.setProp(YowCoderLayer.PROP_RESOURCE,
                  YowsupEnv.getCurrent().getResource())
    stack.loop(timeout=0.5, discrete=0.5)
示例#21
0
 def __init__(self, credentials, encryptionEnabled = True):
     stackBuilder = YowStackBuilder()
     self.stack = stackBuilder\
         .pushDefaultLayers(encryptionEnabled)\
         .push(WhaLayer)\
         .build()
     self.stack.setCredentials(credentials)
     self.stack.setProp(PROP_IDENTITY_AUTOTRUST, True) #not in jlguardi
     self.wantReconnect = True
     self.abortReconnectWait = queue.Queue()
示例#22
0
    def __init__(self, credentials, image_path, encryptionEnabled=True):
        stackBuilder = YowStackBuilder()

        self.stack = stackBuilder\
            .pushDefaultLayers(encryptionEnabled)\
            .push(WhatsappImageSendLayer)\
            .build()

        self.stack.setCredentials(credentials)
        self.stack.setProp(PROP_IDENTITY_AUTOTRUST, True)
示例#23
0
    def __init__(self, credentials):
        "Creates the stacks of the Yowsup Server,"
        self.credentials = credentials
        stack_builder = YowStackBuilder().pushDefaultLayers(True)

        # on the top stack, the two layers that controls the bot and respond to messages and notifications
        # see both of classes for more documentation
        stack_builder.push(YowParallelLayer([EchoLayer]))
        ##        stack_builder.push(YowParallelLayer([RouteLayer, NotificationsLayer]))
        self.stack = stack_builder.build()
        self.stack.setCredentials(credentials)
示例#24
0
    def __init__(self, credentials, number, path, encryptionEnabled=True):
        stackBuilder = YowStackBuilder()

        self.stack = stackBuilder\
            .pushDefaultLayers(encryptionEnabled)\
            .push(YowsupCliLayer)\
            .build()
        myLayer = self.stack.getLayer(7)
        myLayer.queueCmd('/login %s %s' % credentials)
        myLayer.queueCmd('/image send %s %s' % (number, path))
        self.stack.setCredentials(credentials)
    def prepare_stack(self, credentials, messages):
        stackBuilder = YowStackBuilder()
        stack = stackBuilder.pushDefaultLayers(True).push(EchoLayer).build()

        stack.setProp("messages", messages)
        stack.setCredentials(credentials)

        stack.broadcastEvent(YowLayerEvent(
            YowNetworkLayer.EVENT_STATE_CONNECT))

        return stack
示例#26
0
    def __init__(self):
        builder = YowStackBuilder()

        self.stack = builder\
            .pushDefaultLayers(encryption)\
            .push(BotLayer)\
            .build()

        self.stack.setCredentials(credentials)
        self.stack.setProp(BotLayer.PROP_CONTACTS, contacts_numbers)
        self.stack.setProp(PROP_IDENTITY_AUTOTRUST, True)
示例#27
0
    def __init__(self):
        stackBuilder = YowStackBuilder()
        self.profile = os.environ['phone_number']

        self._stack = stackBuilder\
            .pushDefaultLayers()\
            .push(MainStrongFastSuperBot)\
            .build()

        self._stack.setProfile(self.profile)
        self._stack.setProp(PROP_IDENTITY_AUTOTRUST, True)
示例#28
0
    def __init__(self, credentials, encryptionEnabled=False):
        stackBuilder = YowStackBuilder()

        if not encryptionEnabled:
            env.CURRENT_ENV = S40YowsupEnv()

        self.stack = stackBuilder\
            .pushDefaultLayers(encryptionEnabled)\
            .push(BridgeMPPCliLayer)\
            .build()

        self.stack.setCredentials(credentials)
示例#29
0
    def __init__(self,
                 credentials,
                 date,
                 encryptionEnabled=True,
                 verbose=False):
        stackBuilder = YowStackBuilder()

        self.stack = stackBuilder.pushDefaultLayers(encryptionEnabled).push(
            YowsupNewsbotLayer(date, verbose)).build()

        self.stack.setCredentials(credentials)
        self.stack.setProp(PROP_IDENTITY_AUTOTRUST, True)
示例#30
0
    def __init__(self, credentials, encryptionEnabled=True):
        stackBuilder = YowStackBuilder()

        self.stack = stackBuilder\
            .pushDefaultLayers(encryptionEnabled)\
            .push(EchoLayer)\
            .build()

        self.stack.setCredentials(credentials)

        self.stack.broadcastEvent(
            YowLayerEvent(YowNetworkLayer.EVENT_STATE_CONNECT))