SYMBOL INDEX (151 symbols across 33 files) FILE: tests/test_func.py function _get_py_exe (line 43) | def _get_py_exe(): function get_test_subprocess (line 74) | def get_test_subprocess(cmd=None, **kwds): function wait_for_pid (line 109) | def wait_for_pid(pid): function wait_for_file (line 119) | def wait_for_file(fname, delete=True, empty=False): function safe_rmpath (line 130) | def safe_rmpath(path): FILE: tests/test_helpers.py class testPath (line 14) | class testPath(unittest.TestCase): method test_paths_exist (line 16) | def test_paths_exist(self): FILE: tests/test_kill_child_process.py class Testkill (line 15) | class Testkill(unittest.TestCase): method test_kill (line 17) | def test_kill(self): FILE: tests/test_logger.py class CaptureLogsExample (line 19) | class CaptureLogsExample(unittest.TestCase): method test_assert_logs (line 21) | def test_assert_logs(self): FILE: wplay/__main__.py function print_logo (line 32) | def print_logo(text_logo): function get_arg_parser (line 38) | def get_arg_parser(): function get_and_match_args (line 153) | async def get_and_match_args(parser): function main (line 204) | async def main(): FILE: wplay/about_changer.py function about_changer (line 17) | async def about_changer(): function change_about (line 26) | async def change_about(): function get_api_key (line 41) | async def get_api_key(): function about_changer_news (line 49) | async def about_changer_news(): function fetch_news (line 77) | def fetch_news(query): FILE: wplay/broadcast_message.py class InvalidNumber (line 19) | class InvalidNumber(Exception): function ProcessNumbers (line 23) | def ProcessNumbers(): function broadcast (line 40) | async def broadcast(): FILE: wplay/chat_intermediator.py function intermediary (line 13) | async def intermediary(sender, receiver): FILE: wplay/chatbot.py function Bot (line 6) | async def Bot(last_Message): function say_hi (line 58) | def say_hi(): function say_goodmorning (line 63) | def say_goodmorning(): function say_goodnight (line 68) | def say_goodnight(): function say_fine (line 73) | def say_fine(): function _help_commands (line 78) | def _help_commands(): function takeScreenshot (line 92) | async def takeScreenshot(qry): FILE: wplay/download_media.py function download_media (line 19) | async def download_media(target): FILE: wplay/get_media.py function get_profile_photos (line 16) | async def get_profile_photos(): FILE: wplay/get_news.py function get_news (line 24) | async def get_news(target): FILE: wplay/message_blast.py function message_blast (line 19) | async def message_blast(target: str): FILE: wplay/message_service.py function message_service (line 45) | async def message_service(): FILE: wplay/message_timer.py function message_timer (line 20) | async def message_timer(target): FILE: wplay/online_tracker.py function tracker (line 19) | async def tracker(target): FILE: wplay/profile_download.py function get_profile_picture (line 18) | async def get_profile_picture(target): FILE: wplay/save_chat.py function save_chat (line 17) | async def save_chat(target): FILE: wplay/schedule_message.py function schedule_message (line 20) | async def schedule_message(target): FILE: wplay/target_info.py function formatNumber (line 21) | def formatNumber(InputNumber): function localScan (line 25) | def localScan(InputNumber, print_results=True): function scanNumber (line 77) | def scanNumber(InputNumber): function target_contact_number (line 88) | def target_contact_number(num): function target_info (line 92) | async def target_info(target): FILE: wplay/telegram_bot.py function start_tkinter (line 21) | def start_tkinter(): function ask_where_are_the_status_file (line 26) | def ask_where_are_the_status_file(): function startmessage (line 39) | def startmessage(bot, update): function send_status (line 47) | def send_status(bot, update): function telegram_status (line 60) | def telegram_status(name): FILE: wplay/terminal_chat.py function chat (line 22) | async def chat(target): function getMessages (line 92) | async def getMessages(page, target): FILE: wplay/text_to_speech.py function text_to_speech (line 16) | async def text_to_speech(target): FILE: wplay/utils/Logger.py class Logger (line 8) | class Logger: method __init__ (line 17) | def __init__(self, script_name: str, level: int = logging.WARNING): method debug (line 39) | def debug(self, msg: str): method error (line 42) | def error(self, msg: str): method info (line 45) | def info(self, msg: str): FILE: wplay/utils/MessageStack.py class MessageStack (line 11) | class MessageStack(): method __init__ (line 12) | def __init__(self): method __create_json_file (line 19) | def __create_json_file(self, file_path: Path): method __write_json (line 24) | def __write_json(self, data: dict, file_path: Path): method __ensure_valid_json (line 28) | def __ensure_valid_json(self, file_path: Path): method append_message (line 39) | def append_message(self, message: dict, file_path: Path): method get_message (line 56) | def get_message( method get_all_messages (line 76) | def get_all_messages( method move_message (line 84) | def move_message(self, from_file_path: Path, to_file_path: Path, uuid:... method move_all_messages (line 92) | def move_all_messages(self, from_file_path: Path, to_file_path: Path): method remove_message (line 100) | def remove_message(self, uuid: str, file_path: Path): method remove_all_messages (line 109) | def remove_all_messages(self, file_path: Path): FILE: wplay/utils/SessionManager.py class SessionManager (line 30) | class SessionManager(object): method __init__ (line 31) | def __init__(self): method reset_fields (line 46) | def reset_fields(self): method get_user_data_filenames (line 54) | def get_user_data_filenames(self): method prepare_questions (line 57) | def prepare_questions(self): method get_answer_menu (line 105) | def get_answer_menu(self): method verify_answers (line 108) | def verify_answers(self): method __verify_if_session_file_exists (line 139) | def __verify_if_session_file_exists(self) -> bool: method __delete_session_data (line 147) | def __delete_session_data(self, path): method session_manager (line 157) | def session_manager(): FILE: wplay/utils/browser_config.py function configure_browser_and_load_whatsapp (line 49) | async def configure_browser_and_load_whatsapp() -> (Page, Browser): function get_pages (line 67) | async def get_pages(browser: Browser) -> List[Page]: function open_new_page (line 72) | async def open_new_page(browser: Browser): function config_page (line 80) | async def config_page(page: Page): function load_website (line 86) | async def load_website(page: Page, website: str): function exit_if_wrong_url (line 92) | def exit_if_wrong_url(page: Page, browser: Browser, url_to_check: str): function __patch_pyppeteer (line 104) | def __patch_pyppeteer(): function __config_browser (line 124) | async def __config_browser(username: str = None, save_session: bool = Fa... function __set_user_agent (line 132) | async def __set_user_agent(page: Page): function __set_view_port (line 136) | async def __set_view_port(page: Page): FILE: wplay/utils/helpers.py function create_dirs (line 90) | def create_dirs(): function kill_child_processes (line 104) | def kill_child_processes(parent_pid, sig=signal.SIGTERM): FILE: wplay/utils/io.py function ask_user_for_message (line 19) | def ask_user_for_message() -> str: function ask_user_for_message_breakline_mode (line 23) | def ask_user_for_message_breakline_mode() -> List[str]: function send_message (line 38) | async def send_message(page: Page, message: Union[List[str], str]): function send_file (line 49) | async def send_file(page): FILE: wplay/utils/target_data.py function get_last_seen_from_focused_target (line 18) | async def get_last_seen_from_focused_target(page: Page): FILE: wplay/utils/target_search.py function search_and_select_target_all_ways (line 45) | async def search_and_select_target_all_ways(page: Page, target: str, hid... function search_target_by_number (line 67) | async def search_target_by_number(page: Page, target: str): function search_and_select_target (line 77) | async def search_and_select_target(page: Page, target: str, hide_groups:... function search_and_select_target_without_new_chat_button (line 114) | async def search_and_select_target_without_new_chat_button(page: Page, t... function __accept_dialog (line 152) | async def __accept_dialog(dialog): function __try_load_contact_by_number (line 159) | async def __try_load_contact_by_number(page: Page, target: str) -> bool: function __get_number_of_filtered_contacts (line 182) | async def __get_number_of_filtered_contacts(page: Page, contact_name_ind... function __display_complete_target_info (line 196) | async def __display_complete_target_info(page, target_tuple, contact_tup... function __type_in_chat_or_message_search (line 211) | async def __type_in_chat_or_message_search(page, target): function __get_chats_messages_groups_elements (line 226) | async def __get_chats_messages_groups_elements(page: Page): function __get_contacts_matched_with_query (line 236) | async def __get_contacts_matched_with_query(chats_groups_messages_elemen... function __get_groups_matched_with_query (line 253) | async def __get_groups_matched_with_query(chats_groups_messages_elements... function __open_selected_chat (line 274) | async def __open_selected_chat(target_index: int, chats_messages_groups_... function __get_complete_info_on_target (line 282) | async def __get_complete_info_on_target(page: Page): function __get_complete_info_on_group (line 296) | async def __get_complete_info_on_group(page): function __get_target_group_name (line 310) | async def __get_target_group_name(element, complete_target_info): function __get_target_group_creation_info (line 318) | async def __get_target_group_creation_info(element, complete_target_info): function __get_target_group_description (line 327) | async def __get_target_group_description(element,complete_target_info): function __get_target_group_members (line 336) | async def __get_target_group_members(element, complete_target_info): function __open_target_chat_info_page (line 356) | async def __open_target_chat_info_page(page): function __get_contact_page_elements (line 368) | async def __get_contact_page_elements(page: Page): function __get_contact_name_info (line 382) | async def __get_contact_name_info(contact_name_element,complete_target_i... function __get_contact_about_and_phone (line 390) | async def __get_contact_about_and_phone(contact_name_element, complete_t... function __get_contact_groups_common_with_target (line 399) | async def __get_contact_groups_common_with_target(complete_target_info,p... function __close_contact_info_page (line 418) | async def __close_contact_info_page(page: Page): function __print_complete_target_info (line 430) | def __print_complete_target_info(complete_target_info): function __open_new_chat (line 439) | async def __open_new_chat(page: Page): function __type_in_new_chat_search_bar (line 449) | async def __type_in_new_chat_search_bar(page: Page, target: str): function __get_contacts_elements_filtered (line 460) | async def __get_contacts_elements_filtered(page: Page, target: str): function __get_groups_elements_filtered (line 476) | async def __get_groups_elements_filtered(page: Page, target: str, hide_g... function __get_contacts_titles_from_elements_unchecked (line 496) | async def __get_contacts_titles_from_elements_unchecked(page: Page, cont... function __get_groups_titles_from_elements_unchecked (line 503) | async def __get_groups_titles_from_elements_unchecked(page: Page, group_... function __zip_contact_titles_and_elements_unchecked (line 512) | def __zip_contact_titles_and_elements_unchecked(contact_titles_unchecked... function __zip_group_titles_and_elements_unchecked (line 517) | def __zip_group_titles_and_elements_unchecked(group_titles_unchecked, gr... function __check_contact_list (line 523) | def __check_contact_list(target: str, contact_list_unchecked): function __check_group_list (line 542) | def __check_group_list(target: str, group_list_unchecked): function __get_target_tuple (line 564) | def __get_target_tuple(contact_tuple, group_tuple): function __print_target_tuple (line 574) | def __print_target_tuple(target_tuple): function __ask_user_to_choose_the_filtered_target (line 595) | def __ask_user_to_choose_the_filtered_target(target_tuple): function __get_choosed_target (line 603) | def __get_choosed_target(target_tuple, target_index_choosed): function __navigate_to_target (line 624) | async def __navigate_to_target(page: Page, choosed_target): function __get_focused_target_title (line 633) | async def __get_focused_target_title(page: Page, target): function __print_selected_target_title (line 644) | def __print_selected_target_title(target_focused_title): function __check_target_focused_title (line 649) | def __check_target_focused_title(target, target_focused_title): function __wait_for_message_area (line 673) | async def __wait_for_message_area(page: Page): FILE: wplay/utils/target_select.py function manual_select_target (line 13) | async def manual_select_target(page: Page, hide_groups: bool = False): function __print_manual_selection_info (line 27) | def __print_manual_selection_info(): function __print_selected_target_title (line 31) | def __print_selected_target_title(target_focused_title: str): function __close_contact_info_page (line 35) | async def __close_contact_info_page(page: Page): function __open_new_chat (line 47) | async def __open_new_chat(page: Page): function __get_focused_target_title (line 55) | async def __get_focused_target_title(page: Page): function __wait_for_message_area (line 65) | async def __wait_for_message_area(page: Page): FILE: wplay/utils/verify_internet.py function internet_avalaible (line 4) | def internet_avalaible():