Xxx chat 1 on

Since diaspora* 0.6.0.0 we moved from Vines to Prosody.

To make this work you have to remove in your every chat related configuration option except for: Proceed with the official integration guide: Integration/Chat#Installation.2FUpdate Have look at JSXC_Development to how to setup a development environment!

WEECHAT_RC_OK weechat.hook_process_hashtable("url:https://weechat.org/files/src/gz", , 30 * 1000, "my_process_cb", "")SCRIPT_NAME = "myscript" # ... [email protected] JOIN :#channel" server = signal.split(",")[0] msg = weechat.info_get_hashtable("irc_message_parse", ) buffer = weechat.info_get("irc_buffer", "%s,%s" % (server, msg["channel"])) if buffer: weechat.prnt(buffer, "%s (%s) has joined this channel! WEECHAT_RC_OK # it is useful here to use "*" as server, to catch JOIN messages on all IRC # servers weechat.hook_signal("*,irc_in2_join", "join_cb", "")def modifier_cb(data, modifier, modifier_data, string): # add server name to all messages received # (OK that's not very useful, but that's just an example!

def config_cb(data, option, value): """Callback called when a script option is changed.""" # for example, read all script options to script variables...

There are two options, an Attention Grabber which shows when your chatbox is online, and one which shows when you are offline.

You can use our dashboard to upload your own image, or to choose one from our library.

We often have holiday attention grabbers available!

If you don't want to restart the whole instance you can flush the new configuration by restarting the xmpp server only: Log into Diaspora and you should see the web client in the right corner.

┌──────────────────────┐ ╔══════════════════╗ │ python plugin │ ║ Wee Chat "core" ║ ├────────────┬─────────┤ ╟─────────┐ ║ ─────► │ script API │ C API │ ─────► ║ C API │ ║ └────────────┴─────────┘ ╚═════════╧════════╝╔══════════════════╗ ┌──────────────────────┐ ║ Wee Chat "core" ║ │ python plugin │ ║ ┌─────────╢ ├─────────┬────────────┤ ║ │ C API ║ ─────► │ C API │ script API │ ─────► ╚════════╧═════════╝ └─────────┴────────────┘charset_set iconv_to_internal iconv_from_internal gettext ngettext strlen_screen string_match string_has_highlight string_has_highlight_regex string_mask_to_regex string_remove_color string_is_command_char string_input_for_buffer string_eval_expression string_eval_path_homeconfig_new config_new_section config_search_section config_new_option config_search_option config_string_to_boolean config_option_reset config_option_set config_option_set_null config_option_unset config_option_rename config_option_is_null config_option_default_is_null config_boolean config_boolean_default config_integer config_integer_default config_string config_string_default config_color config_color_default config_write_option config_write_line config_write config_read config_reload config_option_free config_section_free_options config_section_free config_free config_get config_get_plugin config_is_set_plugin config_set_plugin config_set_desc_plugin config_unset_pluginhook_command hook_command_run hook_timer hook_fd hook_process hook_process_hashtable hook_connect hook_print hook_signal hook_signal_send hook_hsignal hook_hsignal_send hook_config hook_completion hook_completion_get_string hook_completion_list_add hook_modifier hook_modifier_exec hook_info hook_info_hashtable hook_infolist hook_focus hook_set unhook unhook_allbuffer_new current_buffer buffer_search buffer_search_main buffer_clear buffer_close buffer_merge buffer_unmerge buffer_get_integer buffer_get_string buffer_get_pointer buffer_set buffer_string_replace_local_var buffer_match_listnicklist_add_group nicklist_search_group nicklist_add_nick nicklist_search_nick nicklist_remove_group nicklist_remove_nick nicklist_remove_all nicklist_group_get_integer nicklist_group_get_string nicklist_group_get_pointer nicklist_group_set nicklist_nick_get_integer nicklist_nick_get_string nicklist_nick_get_pointer nicklist_nick_setinfolist_new infolist_new_item infolist_new_var_integer infolist_new_var_string infolist_new_var_pointer infolist_new_var_time infolist_get infolist_next infolist_prev infolist_reset_item_cursor infolist_search_var infolist_fields infolist_integer infolist_string infolist_pointer infolist_time infolist_freehdata_get hdata_get_var_offset hdata_get_var_type_string hdata_get_var_array_size hdata_get_var_array_size_string hdata_get_var_hdata hdata_get_list hdata_check_pointer hdata_move hdata_search hdata_char hdata_integer hdata_long hdata_string hdata_pointer hdata_time hdata_hashtable hdata_compare hdata_update hdata_get_string WEECHAT_CONFIG_READ_OK WEECHAT_CONFIG_READ_MEMORY_ERROR WEECHAT_CONFIG_READ_FILE_NOT_FOUND WEECHAT_CONFIG_WRITE_OK WEECHAT_CONFIG_WRITE_ERROR WEECHAT_CONFIG_WRITE_MEMORY_ERROR WEECHAT_CONFIG_OPTION_SET_OK_CHANGED WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE WEECHAT_CONFIG_OPTION_SET_ERROR WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET WEECHAT_CONFIG_OPTION_UNSET_OK_RESET WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED WEECHAT_CONFIG_OPTION_UNSET_ERRORWEECHAT_HOOK_CONNECT_OK WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED WEECHAT_HOOK_CONNECT_PROXY_ERROR WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR WEECHAT_HOOK_CONNECT_MEMORY_ERROR WEECHAT_HOOK_CONNECT_TIMEOUT WEECHAT_HOOK_CONNECT_SOCKET_ERROR\thello") # display error message on core buffer (with error prefix) weechat.prnt("", "%swrong arguments" % weechat.prefix("error")) # display message with color on core buffer weechat.prnt("", "text %syellow on blue" % weechat.color("yellow,blue")) # search buffer and display message # (full name of buffer is plugin.name, for example: "irc.freenode.#weechat") buffer = weechat.buffer_search("irc", "freenode.#weechat") weechat.prnt(buffer, "message on #weechat channel") # other solution to find an IRC buffer (better) # (note that server and channel are separated by a comma) buffer = weechat.info_get("irc_buffer", "freenode,#weechat") weechat.prnt(buffer, "message on #weechat channel")# execute command "/help" on current buffer (result is on core buffer) weechat.command("", "/help") # send "hello" to #weechat IRC channel (users on channel will see message) buffer = weechat.info_get("irc_buffer", "freenode,#weechat") weechat.command(buffer, "hello")# callback for data received in input def buffer_input_cb(data, buffer, input_data): # ... WEECHAT_RC_OK # callback called when buffer is closed def buffer_close_cb(data, buffer): # ... WEECHAT_RC_OK # create buffer buffer = weechat.buffer_new("mybuffer", "buffer_input_cb", "", "buffer_close_cb", "") # set title weechat.buffer_set(buffer, "title", "This is title for my buffer.") # disable logging, by setting local variable "no_log" to "1" weechat.buffer_set(buffer, "localvar_set_no_log", "1")# add local variable weechat.buffer_set(buffer, "localvar_set_myvar", "my_value") # read local variable myvar = weechat.buffer_get_string(buffer, "localvar_myvar") # delete local variable weechat.buffer_set(buffer, "localvar_del_myvar", "")def my_command_cb(data, buffer, args): # ... WEECHAT_RC_OK hook = weechat.hook_command("myfilter", "description of myfilter", "[list] | [enable|disable|toggle [name | [add name plugin.buffer tags regex] | [del name|-all]", "description of arguments...", "list" " || enable %(filters_names)" " || disable %(filters_names)" " || toggle %(filters_names)" " || add %(filters_names) %(buffers_plugins_names)|*" " || del %(filters_names)|-all", "my_command_cb", "")= 0: weechat.prnt("", "Current Wee Chat stable is: %s" % weechat_version) return weechat.

WEECHAT_RC_OK weechat.hook_process("url:https://weechat.org/dev/info/stable/", 30 * 1000, "weechat_process_cb", "")= 0: weechat.prnt("", "End of transfer (rc=%s)" % rc) return weechat. weechat.hook_config("python." SCRIPT_NAME ".*", "config_cb", "") # for other languages, change "python" with your language (perl/ruby/lua/tcl/guile/javascript)# string weechat.prnt("", "value of option item_time_format is: %s" % (weechat.config_string(weechat.config_get("item_time_format")))) # boolean weechat.prnt("", "value of option day_change is: %d" % (weechat.config_boolean(weechat.config_get("day_change")))) # integer weechat.prnt("", "value of option scroll_page_percent is: %d" % (weechat.config_integer(weechat.config_get("scroll_page_percent")))) # color weechat.prnt("", "value of option weechat.color.chat_delimiters is: %s" % (weechat.config_color(weechat.config_get("weechat.color.chat_delimiters"))))def join_cb(data, signal, signal_data): # signal is for example: "freenode,irc_in2_join" # signal_data is IRC message, for example: ":nick!

While we are proud to sponsor many venues, they are independently owned and operated.

Please contact them directly for information about tickets, events, policies or other specific questions and feedback.

||

If you don't want to restart the whole instance you can flush the new configuration by restarting the xmpp server only: Log into Diaspora and you should see the web client in the right corner.┌──────────────────────┐ ╔══════════════════╗ │ python plugin │ ║ Wee Chat "core" ║ ├────────────┬─────────┤ ╟─────────┐ ║ ─────► │ script API │ C API │ ─────► ║ C API │ ║ └────────────┴─────────┘ ╚═════════╧════════╝╔══════════════════╗ ┌──────────────────────┐ ║ Wee Chat "core" ║ │ python plugin │ ║ ┌─────────╢ ├─────────┬────────────┤ ║ │ C API ║ ─────► │ C API │ script API │ ─────► ╚════════╧═════════╝ └─────────┴────────────┘charset_set iconv_to_internal iconv_from_internal gettext ngettext strlen_screen string_match string_has_highlight string_has_highlight_regex string_mask_to_regex string_remove_color string_is_command_char string_input_for_buffer string_eval_expression string_eval_path_homeconfig_new config_new_section config_search_section config_new_option config_search_option config_string_to_boolean config_option_reset config_option_set config_option_set_null config_option_unset config_option_rename config_option_is_null config_option_default_is_null config_boolean config_boolean_default config_integer config_integer_default config_string config_string_default config_color config_color_default config_write_option config_write_line config_write config_read config_reload config_option_free config_section_free_options config_section_free config_free config_get config_get_plugin config_is_set_plugin config_set_plugin config_set_desc_plugin config_unset_pluginhook_command hook_command_run hook_timer hook_fd hook_process hook_process_hashtable hook_connect hook_print hook_signal hook_signal_send hook_hsignal hook_hsignal_send hook_config hook_completion hook_completion_get_string hook_completion_list_add hook_modifier hook_modifier_exec hook_info hook_info_hashtable hook_infolist hook_focus hook_set unhook unhook_allbuffer_new current_buffer buffer_search buffer_search_main buffer_clear buffer_close buffer_merge buffer_unmerge buffer_get_integer buffer_get_string buffer_get_pointer buffer_set buffer_string_replace_local_var buffer_match_listnicklist_add_group nicklist_search_group nicklist_add_nick nicklist_search_nick nicklist_remove_group nicklist_remove_nick nicklist_remove_all nicklist_group_get_integer nicklist_group_get_string nicklist_group_get_pointer nicklist_group_set nicklist_nick_get_integer nicklist_nick_get_string nicklist_nick_get_pointer nicklist_nick_setinfolist_new infolist_new_item infolist_new_var_integer infolist_new_var_string infolist_new_var_pointer infolist_new_var_time infolist_get infolist_next infolist_prev infolist_reset_item_cursor infolist_search_var infolist_fields infolist_integer infolist_string infolist_pointer infolist_time infolist_freehdata_get hdata_get_var_offset hdata_get_var_type_string hdata_get_var_array_size hdata_get_var_array_size_string hdata_get_var_hdata hdata_get_list hdata_check_pointer hdata_move hdata_search hdata_char hdata_integer hdata_long hdata_string hdata_pointer hdata_time hdata_hashtable hdata_compare hdata_update hdata_get_string WEECHAT_CONFIG_READ_OK WEECHAT_CONFIG_READ_MEMORY_ERROR WEECHAT_CONFIG_READ_FILE_NOT_FOUND WEECHAT_CONFIG_WRITE_OK WEECHAT_CONFIG_WRITE_ERROR WEECHAT_CONFIG_WRITE_MEMORY_ERROR WEECHAT_CONFIG_OPTION_SET_OK_CHANGED WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE WEECHAT_CONFIG_OPTION_SET_ERROR WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET WEECHAT_CONFIG_OPTION_UNSET_OK_RESET WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED WEECHAT_CONFIG_OPTION_UNSET_ERRORWEECHAT_HOOK_CONNECT_OK WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED WEECHAT_HOOK_CONNECT_PROXY_ERROR WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR WEECHAT_HOOK_CONNECT_MEMORY_ERROR WEECHAT_HOOK_CONNECT_TIMEOUT WEECHAT_HOOK_CONNECT_SOCKET_ERROR\thello") # display error message on core buffer (with error prefix) weechat.prnt("", "%swrong arguments" % weechat.prefix("error")) # display message with color on core buffer weechat.prnt("", "text %syellow on blue" % weechat.color("yellow,blue")) # search buffer and display message # (full name of buffer is plugin.name, for example: "irc.freenode.#weechat") buffer = weechat.buffer_search("irc", "freenode.#weechat") weechat.prnt(buffer, "message on #weechat channel") # other solution to find an IRC buffer (better) # (note that server and channel are separated by a comma) buffer = weechat.info_get("irc_buffer", "freenode,#weechat") weechat.prnt(buffer, "message on #weechat channel")# execute command "/help" on current buffer (result is on core buffer) weechat.command("", "/help") # send "hello" to #weechat IRC channel (users on channel will see message) buffer = weechat.info_get("irc_buffer", "freenode,#weechat") weechat.command(buffer, "hello")# callback for data received in input def buffer_input_cb(data, buffer, input_data): # ... WEECHAT_RC_OK # callback called when buffer is closed def buffer_close_cb(data, buffer): # ... WEECHAT_RC_OK # create buffer buffer = weechat.buffer_new("mybuffer", "buffer_input_cb", "", "buffer_close_cb", "") # set title weechat.buffer_set(buffer, "title", "This is title for my buffer.") # disable logging, by setting local variable "no_log" to "1" weechat.buffer_set(buffer, "localvar_set_no_log", "1")# add local variable weechat.buffer_set(buffer, "localvar_set_myvar", "my_value") # read local variable myvar = weechat.buffer_get_string(buffer, "localvar_myvar") # delete local variable weechat.buffer_set(buffer, "localvar_del_myvar", "")def my_command_cb(data, buffer, args): # ... WEECHAT_RC_OK hook = weechat.hook_command("myfilter", "description of myfilter", "[list] | [enable|disable|toggle [name]] | [add name plugin.buffer tags regex] | [del name|-all]", "description of arguments...", "list" " || enable %(filters_names)" " || disable %(filters_names)" " || toggle %(filters_names)" " || add %(filters_names) %(buffers_plugins_names)|*" " || del %(filters_names)|-all", "my_command_cb", "")= 0: weechat.prnt("", "Current Wee Chat stable is: %s" % weechat_version) return weechat.WEECHAT_RC_OK weechat.hook_process("url:https://weechat.org/dev/info/stable/", 30 * 1000, "weechat_process_cb", "")= 0: weechat.prnt("", "End of transfer (rc=%s)" % rc) return weechat. weechat.hook_config("python." SCRIPT_NAME ".*", "config_cb", "") # for other languages, change "python" with your language (perl/ruby/lua/tcl/guile/javascript)# string weechat.prnt("", "value of option item_time_format is: %s" % (weechat.config_string(weechat.config_get("item_time_format")))) # boolean weechat.prnt("", "value of option day_change is: %d" % (weechat.config_boolean(weechat.config_get("day_change")))) # integer weechat.prnt("", "value of option scroll_page_percent is: %d" % (weechat.config_integer(weechat.config_get("scroll_page_percent")))) # color weechat.prnt("", "value of option weechat.color.chat_delimiters is: %s" % (weechat.config_color(weechat.config_get("weechat.color.chat_delimiters"))))def join_cb(data, signal, signal_data): # signal is for example: "freenode,irc_in2_join" # signal_data is IRC message, for example: ":nick!While we are proud to sponsor many venues, they are independently owned and operated.Please contact them directly for information about tickets, events, policies or other specific questions and feedback.

]]