Not logged in.  Login/Logout/Register | List snippets | | Create snippet | Upload image | Upload data

31
LINES

< > BotCompany Repo | #1002435 // Addressed Bot - am I addressed?

JavaX source code [tags: use-pretranspiled] - run with: x30.jar

Libraryless. Click here for Pure Java version (954L/7K/22K).

!752

answer {
  S rest = amIAddressed(s);
  if (getUserName() == null /* web */ || rest != null)
    miniChat("attn/" + (rest == null ? s : rest));
  else
    miniChat(""); // indicate we have nothing to say
}

static L<S> prefs = litlist("hi", "hey", "hello", "yo", "uhm", "oh", "dear", "dearest");
static L<S> names = litlist("eleu", "eleutheria", "computer", "bot");

// returns rest of input (without the greeting)
static S amIAddressed(S s) {
  new Matches m;
  for (S p : prefs)
    if (matchStart(p, s, m))
      s = m.rest();
  for (S name : names)
    if (matchStart(name, s, m))
      ret dropPunctuationFromStart(m.rest());
  ret null;
}

static S dropPunctuationFromStart(S s) {
  s = s.trim();
  while (!empty(s) && ",:!-.".indexOf(s.charAt(0)) >= 0)
    s = s.substring(1);
  ret s.trim();
}

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: #1002435
Snippet name: Addressed Bot - am I addressed?
Eternal ID of this version: #1002435/1
Text MD5: 0c5f1a38a2f42c91c33769dd4375aa83
Transpilation MD5: 2bde5e5325e9098e0225e5441ea0036d
Author: stefan
Category: javax
Type: JavaX source code
Public (visible to everyone): Yes
Archived (hidden from active list): No
Created/modified: 2016-01-22 00:37:10
Source code size: 836 bytes / 31 lines
Pitched / IR pitched: No / No
Views / Downloads: 745 / 1283
Referenced in: [show references]