diff -r eb6d89bf1fbf -r fc9060b9b7cc examples/room_priv.lua --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/room_priv.lua Wed Feb 25 22:58:34 2009 +0200 @@ -0,0 +1,35 @@ + +-- ROOM NICK COMPLETION + +room_cid = main.command ( 'priv', + function ( args ) + main.run ( 'room privmsg ' .. args ) + end, {} ) + +commands_help['priv'] = "nick message\n\nSends private message to room participant. Nick completion available! ;)" + +registered_nicks = {} + +function register_nicks () + for k, nick in pairs ( registered_nicks ) do + main.del_completion ( room_cid, nick ) + end + local buddy = main.current_buddy () + if buddy then + local info = main.buddy_info ( buddy ) + if info then + registered_nicks = { } + if info.type == 'room' then + for nick, k in pairs ( info.resources ) do + main.add_completion ( room_cid, nick ) + table.insert ( registered_nicks, nick ) + end + end + end + end +end + +main.run ( 'bind 338 = lua main.run ( "roster down" ); register_nicks ()' ) +main.run ( 'bind 339 = lua main.run ( "roster up" ); register_nicks ()' ) + +-- vim: se ts=4: --