TEXT   153
NotePod
Guest on 7th February 2023 02:22:49 AM


  1. # NotePod is a channel definition script, similar in many respects to
  2. # explain and fluxlearn and others. It has many additional features however,
  3. # including but not limited to:
  4. #  - configurable channel triggers
  5. #  - command specific access flags
  6. #  - fallback to users channel status when user is not on bot
  7. #  - only user who set a definition can replace it (except for master)
  8. #  - will not repeat a def within configurable number of mins.
  9. #  - special commands for masters
  10. #  - command to replace a definition
  11. #  - backup bot automatically takes over when primary leaves channel
  12. #  - botnet commands to sync definitions for two bots
  13. #  - configure once for both bots
  14. #  - dcc commands to get various internal files
  15. #  - dcc commands to show, learn, forget and replace definitions
  16. #  - dcc and channel commands to do wildcard matches of nick and body of
  17. #    definitions
  18. #  - automatically sorts defs
  19. #
  20. #
  21. ## Channel commands:
  22. #  command      trigger
  23. #  
  24. #  help        <configuable>    - user level specific help
  25. #              trigger example "?? ??"
  26. #
  27. #  explain     <configurable>   - show a definition
  28. #              trigger example "?? someword"
  29. #
  30. #  scan        <configurable>   - show definition matchs for a wildcard
  31. #                               - will match to word* in def name or body
  32. #              trigger example "??? someword"
  33. #
  34. #  scannick    <configurable>   - show definition matches set by nick
  35. #              trigger example "?!? somenick"                
  36. #
  37. #  scanbody    <configurable>   - show wildcard match in body of definitions
  38. #                                 will match to *word* in body of def
  39. #              trigger example "??! someword"
  40. #
  41. #  learn       <trigger>learn   - learn a new definition
  42. #                               - learn will strip tcl {}[] characters from
  43. #                               - definitions.
  44. #                               - mIRC attributes and color codes may be used
  45. #                               - in body of def.
  46. #              trigger example "?!learn someword and its definition"
  47. #
  48. #  forget      <trigger>forget  - forget a definition
  49. #              trigger example "!forget someword"
  50. #
  51. #  replace     <trigger>replace - replace a definition
  52. #              trigger example "!replace someword with a new def"
  53. #
  54. #     Only the user who set a definition may replace or forget it.
  55. #     The NP_Remove_any and NP_Replace_any variables define the level of
  56. #     a user who can forget or replace ANY definiton. This is usually set
  57. #     to M (master).
  58. #
  59. #  whoset      <trigger>whoset  - show who set a definition
  60. #              trigger example "!whoset someword"
  61. #
  62. #
  63. #
  64. ## DCC +m commands:
  65. #
  66. #  
  67. #       .np learn , forget, replace, whoset same as for channel commands
  68. #
  69. #       .np show            - dcc equivalent of explain,
  70. #                           - this is raw mode showing whoset also
  71. #       .np wshow           - dcc equivalent of scan
  72. #       .np bshow           - dcc equivalent of scanbody
  73. #       .np nshow           - dcc equivalent of scannick
  74. #
  75. #       .np getlist         - send definition list
  76. #       .np gethist         - send definition change history
  77. #       .np getsync         - send definition sync file
  78. #
  79. #       .np forcesync       - force def list sync on target bot
  80. #       .np killsync        - delete pending def resync list
  81. #
  82. #       .np update          - update def list on target bot
  83. #                           - bot DCC sends list to target bot
  84. #
  85. #       .np move <sync|list> - install new synclist or deflist
  86. #                           - that was DCCed to bot by owner
  87. #       .np sort            - sort the def list
  88. #
  89. #
  90. ## Definition Sorting:
  91. #
  92. # Definition list is sorted on restart, rehash and via dcc command.
  93. # A backup file is made.
  94. #
  95. #
  96. ## Definition Syncing:
  97. #
  98. # When operated on two bots, NotePOD tries to keep the definition files in
  99. # sync on both. It accompishes this via the botnet link, issuing putbot
  100. # commands as required.
  101. #
  102. # Both bots execute learn, replace and forget, but only the primary NotePod bot
  103. # will reply to channel explain and scan commands.
  104. # When the primary goes offline/channel, the secondary takes over
  105. # public/msged replies. Both bots store all changes made in a sync file
  106. # while the other is offline.
  107. # If bots are linked but on split channels, def sync is done via botnet.
  108. # When a bot relinks, the other will update it via the botnet.
  109. # If synclist is greater that 1k, sync is not done and a note will be sent
  110. # to the bot OWNER. IN this case, the owner must use the .np update command
  111. # to update the other bot.
  112. # If synclist is 51 bytes, this indicates bot has a default list and it
  113. # will automatically request, via the botnet, the current def list from the
  114. # other bot. A note will be sent to OWNER.
  115. #
  116. # Both bots MUST have x flag for each other, and you should have an inbound
  117. # directory defined and created on each. They need to be botlinked also :)
  118. #
  119. # IF both go offline/channel, yer screwed, don't bug me.
  120. #   Amadeus`
  121. #
  122. ##################################################################################

Raw Paste

Login or Register to edit or fork this paste. It's free.