Libraryless. Click here for Pure Java version (1792L/11K/37K).
!752 static class LineSaid extends Status { S lineID, text; *() {} *(O line) { lineID = getString(line, "id"); text = getString(line, "text"); } S answer(S s) { status(null); ret askSelf("dn add * to *", s, lineID); } } static class WhatShouldISayTo extends Status { S lineID, text; *() {} *(O line) { lineID = getString(line, "id"); text = getString(line, "text"); } S answer(S s) { status(null); new Matches m; if (matchStart("say", s, m)) { S text = unquote(m.rest().trim()); ret askSelf("dn add * to *", text, lineID); } ret null; } } answer { if "say something" exceptionToUser { L starters = cast call(getDialogEngine(), "findStarters"); if (empty(starters)) ret "Nothing found to say..."; O line = randomOne(starters); ret lineSaid(line); } try answer status_answer(s); if (attn()) exceptionToUser { O line = call(getDialogEngine(), "findStarter", s); if (line != null) { L refs = cast call(getDialogEngine(), "getReferences", line); line = randomOne(refs); if (line != null) ret lineSaid(line); } // make new entry line = call(getDialogEngine(), "add", s); status(new WhatShouldISayTo(line)); // ask what i should say ret "what should i say to that, master?"; } } static O getDialogEngine() { O dialogEngine = getBot("#1002666"); if (dialogEngine == null) ret "No dialog engine (install #1002666!)"; ret dialogEngine; } static S lineSaid(O line) { status(new LineSaid(line)); ret getString(line, "text"); }
download show line numbers debug dex old transpilations
Travelled to 13 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1002669 | 
| Snippet name: | Dialog Network Action Bot (dev.) | 
| Eternal ID of this version: | #1002669/1 | 
| Text MD5: | 27b42ac2e7fcfe24a284a813d978c871 | 
| Transpilation MD5: | 6bbc57b474e972021b0e6bb3dacda5f2 | 
| Author: | stefan | 
| Category: | eleu / javax | 
| Type: | JavaX source code | 
| Public (visible to everyone): | Yes | 
| Archived (hidden from active list): | No | 
| Created/modified: | 2016-02-12 01:20:25 | 
| Source code size: | 1699 bytes / 78 lines | 
| Pitched / IR pitched: | No / No | 
| Views / Downloads: | 1074 / 1157 | 
| Referenced in: | [show references] |