SAC Pro is equipped with the following action and filter hooks. Absolutely loaded with filter hooks. Action hooks not so much.

Action Hooks

SAC Pro currently does not include any action hooks. Let us know if you need a specific action hook added to the plugin.

Filter Hooks

Filter Description
sacpro_options_general filters the default general options
sacpro_options_appearance filters the default appearance options
sacpro_options_notifications filters the default notification options
sacpro_options_security filters the default security options
sacpro_options_shortcuts filters the default shortcuts options
sacpro_options_emojis filters the default emoji list
sacpro_locale filters the i18n locale (for translations)
sacpro_online_users_interval filters interval (in minutes) for expiry of online-users widget (default: 10)
sacpro_online_temp_name filters temp name for online-users widget (default: “Lurker (that’s you)”)
sacpro_none_online_message filters the message displayed for online-users widget when no active users (default: “Ghost town..”)
sacpro_online_users filters the final output/markup of the online-users widget
sacpro_user_id filters the current user ID
sacpro_user_role filters the current user role
sacpro_user_roles filters the set of current user roles
sacpro_user_url filters the current user URL
sacpro_default_url filters the default site URL
sacpro_current_time filters the current time (on server)
sacpro_get_date filters the current date
sacpro_get_domain filters the current site domain
sacpro_get_request filter the current request
sacpro_get_refer filter the current referrer
sacpro_enable_host_check filter to enable or disable the host lookup via gethostbyaddr() (default: true)
sacpro_get_host filters the current host name (when sacpro_enable_host_check is enabled)
sacpro_get_ua filters the current user agent
sacpro_get_key_length filters the length of the user key ID (default: 500)
sacpro_time_since filters the output of the time-since function, simple_ajax_chat_pro_time_since()
sacpro_remove_chars_name_regex filters the regex set of characters allowed in user names, when applicable (default: [^A-Za-z0-9-_@+,. ])
sacpro_remove_chars_name filters the user name after disallowed characters have been removed
sacpro_remove_chars_text_regex_str filters some characters not allowed in chat messages, when applicable (default: removes backslashes \)
sacpro_remove_chars_text_regex_preg filters some characters not allowed in chat messages, when applicable (default: removes angle brackets < >)
sacpro_remove_chars_text filters the chat message after disallowed characters have been removed
sacpro_read_only_message_default filters the default message displayed to non-logged users, when in read-only mode (default: “Log in to join this chat!”)
sacpro_read_only_message filters the message displayed to non-logged users, when in read-only mode (default: “Log in to join this chat!”)
sacpro_login_required_message_default filters the default message displayed to non-logged users, when login is required (default: “You must be logged in to join this chat.”)
sacpro_login_required_message filters the message displayed to non-logged users, when login is required (default: “You must be logged in to join this chat.”)
sacpro_shortcode_filter filters the chat message after it is filtered with character and shortcode replacements
sacpro_wp_login_url filters the URL for the WordPress Login Page
sacpro_random_string_length filters the length of the random string generator (default: 5)
sacpro_random_string_chars filters the set of characters used by the random string generator (default: 0123456789)
sacpro_random_string filters the output string for the random string generator
sacpro_secret_iv filters the seed for secret key (very advanced, experts only)
sacpro_secret_key filters the secret key (very advanced, experts only)
sacpro_recaptcha_query filters the query string for the reCaptcha request (default: none/empty)
sacpro_remove_chars_name_regex_js filters the regex set of characters allowed in user names (inline JavaScript), when applicable (default: [^A-Za-z0-9-_@+,. ])
sacpro_ip filters the current IP address
sacpro_ip_keys filters the array of keys used for IP address validation
sacpro_ip_filter filters the array of filter flags used for IP address validation
sacpro_validate_ip_log filters the log message for IP address errors (default: “Invalid IP Address: 123.123.123”)
sacpro_dashboard_chat filters the shortcode used for the dashboard chat (default: [sacpro form_id="dashchat" chat_theme="classic" user_name="display_name" user_url="edit_url" user_avatar="true" display_meta="true"])
sacpro_name_prefix_regex filters validation regex for allowed characters in generated name prefix (default: [^A-Za-z0-9-_])
sacpro_allowedposttags filters allowed tags for validation of custom content settings (defaults located @ simple_ajax_chat_pro_allowedposttags())
sacpro_meta filters the array of collected user data (e.g., IP address, user agent, etc.)
sacpro_latest_message filters output/markup for the “latest message” information
sacpro_showing_message filters output/markup for the “showing message” information
sacpro_showing_message_plain filters output/text for the “showing message” information
sacpro_banned_phrases_replace filters the replacement for removed banned phrases in chat messages (default: empty/blank)
sacpro_check_user_protocol filters HTTP header for banned users (default: HTTP/1.1 403 Forbidden)
sacpro_check_user_connection filters HTTP header for banned users (default: Connection: Close)
sacpro_check_user_message filters message for banned users (default: “You are banned.”)
sacpro_recaptcha_score filters the minimal acceptable score for reCaptcha (default: 0.5)
sacpro_filter_text_output filters default allowed markup for chat messages, when applicable (default: <code>, <del>, <em>, <ins>, <strong>)
sacpro_max_chars_url filters max number of characters in user URLs (default: 1000)
sacpro_max_users filters the maximum number of users allowed in a chat room (possible values: a number or default for unlimited users)
sacpro_private_chat filters to determine whether or not the chat is private (possible values: comma-separated usernames or false for not private)
auto_clear filters to determine auto-clear functionality (possible values: one_week, three_days, one_day, eight_hours, sixty_minutes, thirty_minutes, three_minutes, sixty_seconds, null or empty = no auto-clear)
auto_clear_alert filters the email address used for auto-clear alerts (possible values: any valid email address or empty/none to disable alerts)
sacpro_login_required_message_display filters the output/markup for the login-required message
sacpro_max_users_message filters the message when chat reaches maximum number of users (default: “Chat closed (user limit reached).”)
sacpro_max_users_message_display filters the output/markup when chat reaches maximum number of users
sacpro_private_chat_message filters the message for users not included in private chats (default: “Private chat (access not allowed).”)
sacpro_private_chat_message_display filters the output/markup for users not included in private chats
sacpro_display_read_only_message_display filters output displayed to non-logged users, when in read-only mode
sacpro_display_name_title filters to determine whether or not the title attribute should be included in the hyperlink, when user URL is enabled (default: “Visit this website (opens new tab)”)
sacpro_display_chat_sep filters the character(s) displayed between the chat user name and the chat message (default: colon :)
sacpro_online_class_interval filters the interval (in minutes) for expiry of online-user class attribute (default: 10)
sacpro_user_avatar_default filters the default avatar for chat users, when applicable (default: /img/sacpro-icon-200.png)
sacpro_user_avatar_sacpro filters the avatar for the chat “welcome” message (default: /img/sacpro-icon-200.png)
sacpro_user_avatar_args filters the size and other arguments for user avatars, via WordPress function get_avatar_url() (default: array('size' => '100', 'rating' => 'PG'))
sacpro_submit_button filters the text of the chat submit button (default: “Submit”)
sacpro_text_label filters the label and placeholder of the chat Message field (default: “Message”)
sacpro_name_label filters the label and placeholder of the chat Name field (default: “Name”)
sacpro_url_label filters the label of the chat URL field (default: “URL”)
sacpro_url_placeholder filters the placeholder of the chat URL field (default: https://example.com/)
sacpro_user_name_registered filters the registered user name, when applicable
sacpro_user_name_generated filters the auto-generated user name, when applicable
sacpro_user_name_defined filters the user-defined user name, when applicable
sacpro_audio_alert_mp3 filters the URL for the MP3 file used when audio alerts are enabled
sacpro_audio_alert_ogg filters the URL for the OGG file used when audio alerts are enabled
sacpro_audio_alert_markup filters the output/markup for audio alerts
sacpro_email_alerts_site filters the site/blog name included in email alerts (default: get_bloginfo('name'))
sacpro_email_alerts_subject filters the subject line for email alerts (default: “SAC Pro : New chat @ Your Site Name”)
sacpro_email_alerts_send filters the headers included in email alerts (defaults @ simple_ajax_chat_pro_email_alerts_send())
sacpro_email_alerts_data_sep filters the characters used to separate lines of information in email alerts (default: ===)
sacpro_email_alerts_data filters the message included in email alerts (defaults @ simple_ajax_chat_pro_email_alerts_data())
sacpro_process_url_filter filters to determine whether banned phrases should be checked while pre-processing chat messages (default: false)

I will be adding more hooks in future versions on an as-needed basis, so let me know if you have any requests and it shall be done :)