U
    @6^
                     @   s8   d dl Z d dlZd dlmZmZmZ G dd deZdS )    N)
SpiderFootSpiderFootPluginSpiderFootEventc                   @   sJ   e Zd ZdZi Zi ZdZe fddZdd Z	dd Z
d	d
 Zdd ZdS )	sfp_venmozYVenmo:Footprint,Investigate,Passive:Social Media::Gather user information from Venmo API.Nc                 C   s4   || _ |  | _t| D ]}|| | j|< qd S )N)sftempStorageresultslistkeysopts)selfsfcuserOptsopt r   4/var/www/spiderfoot.crq.systems/modules/sfp_venmo.pysetup   s    
zsfp_venmo.setupc                 C   s   dgS )NUSERNAMEr   r   r   r   r   watchedEvents%   s    zsfp_venmo.watchedEventsc                 C   s   dgS )NRAW_RIR_DATAr   r   r   r   r   producedEvents)   s    zsfp_venmo.producedEventsc              
   C   s   | j jd| | jd | jd d}td |d d krH| j d d S zt|d }W n< tk
r } z| j dt	|  W Y d S d }~X Y nX |
d	}|s| j |d
  d S |S )Nzhttps://api.venmo.com/v1/users/_fetchtimeout
_useragent)timeout	useragent   contentzNo response from api.venmo.comz Error processing JSON response: dataz is not a valid Venmo username)r   fetchUrlr   timesleepdebugjsonloadsBaseExceptionstrget)r   qryresr   e	json_datar   r   r   query-   s$    

zsfp_venmo.queryc           	      C   s   |j }|j}|j}|| jkr d S d| j|< | jd| d |  | |}|sTd S tdt|| j	|}| 
| |d}|rtdd| | j	|}| 
| d S )NTzReceived event, z, from r   display_namezPossible full name: )	eventTypemoduler   r   r   r"   r,   r   r&   __name__notifyListenersr'   )	r   event	eventNamesrcModuleName	eventDatar   r*   r-   evtr   r   r   handleEventG   s(    




 zsfp_venmo.handleEvent)r0   
__module____qualname____doc__r   optdescsr   dictr   r   r   r,   r7   r   r   r   r   r      s   r   )r#   r    sflibr   r   r   r   r   r   r   r   <module>   s   