Advertisement
illpastethat

Twitter Script (Timeline & Tweets) v1.0 [[Beta Unfinished Ve

Feb 4th, 2012
512
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 27.79 KB | None | 0 0
  1. ;Twitter Script (Timeline & Tweets) v1.0 [[Beta Unfinished Version]]
  2. ;Made by nick1
  3. ;Last edit April 24 2012
  4. ;2DO everything
  5.  
  6. ;This script stopped working on May 7 2012 due to an update on twitter website, I am going to migrate to http://api.twitter.com/1/statuses/user_timeline.xml?screen_name=USER&count=3
  7.  
  8. ;raw 408:*: msg $2 $remove($strip($13-),$chr(9))
  9.  
  10. alias -l users {
  11.   return AP,cnnbrk,BreakingNews,MarketWatch
  12. }
  13.  
  14. alias nohtml {
  15.   ;this is not my alias
  16.   return $regsubex($$1-,/^[^<]*>|<[^>]*>|<[^>]*$/g,)
  17. }
  18.  
  19. alias -l linkColor {
  20.   ;syntax: $linkcolor(link,# of current color)
  21.   tokenize 44 $remove($1-,$chr(32))
  22.   var %link $1
  23.   var %current $iif($2,$2,)
  24.   return $+(12,,%link,,,%current)
  25. }
  26.  
  27. alias bracketcolor {
  28.   if ($isid) {
  29.     return $+(12,[,04,$1-,12,],10)
  30.   }
  31.   else {
  32.     say $+(12,[,04,$1-,12,],10)
  33.   }
  34. }
  35.  
  36. alias -l checkNews {
  37.   ;Sometimes, because of an internet problem, the script won't get the tweet and be stopped, this should restart it.
  38.   if (!$timer(FetchNews)) {
  39.     set %_twitter.news on
  40.     FetchNews
  41.   }
  42.   elseif ($timer(FetchNews)) {
  43.     .timercheckNews 1 1200 checkNews
  44.   }
  45. }
  46.  
  47. alias news {
  48.   if ($2 == $null) {
  49.     if (%_twitter.news != on) {
  50.       set %_twitnum 0
  51.       $iif(!$window(@TwitterTimeline),window -evn @TwitterTimeline,noop)
  52.       echo -atc info Twitter Timeline Activated - $asctime (Following $users $+ )
  53.       if ($active != @TwitterTimeline) {
  54.         echo -tc info @TwitterTimeline Twitter Timeline Activated - $asctime (Following $users $+ )
  55.       }      
  56.       set %_twitter.news on
  57.       unset %_twitter.last*
  58.       FetchNews
  59.       .timercheckNews 1 1200 checkNews
  60.     }
  61.     else {
  62.       echo -atc info Twitter Timeline Unactivated - $asctime (Unfollowing $users $+ )
  63.       if ($active != @TwitterTimeline) {
  64.         echo -tc info @TwitterTimeline Twitter News Unactivated - $asctime (Unfollowing $users $+ )
  65.       }
  66.       .timerFetchNews off
  67.       .timerCheckNews off
  68.       set %_twitter.news off
  69.     }
  70.   }
  71. }
  72.  
  73. alias -l fetchNews {
  74.   inc %_twitnum
  75.   twitter $gettok($users,%_twitnum,44) 1 news
  76. }
  77.  
  78. on *:disconnect: {
  79.   ;MARKED FOR REVISION -- it shouldn't turn off every time I get off one network
  80.   if (%_twitter.news == on) {
  81.     echo -atc info Twitter Timeline Unactivated - $asctime (Unfollowing $users $+ )
  82.     if ($active != @TwitterTimeline) {
  83.       echo -tc info @TwitterTimeline Twitter Timeline Unactivated - $asctime (Unfollowing $users $+ )
  84.     }
  85.     .timerFetchNews off
  86.     .timerCheckNews off
  87.     set %_twitter.news off
  88.   }
  89. }
  90.  
  91. on $*:text:/.*twitter\.com.*\/status\/.*/Si:*: {
  92.   $iif($istok(%youtubefetch,$chan,44),halt,noop)
  93.   $iif($istok(%nolinks,$nick,44),halt,noop)
  94.   if ($($+(%,botflood.,$nick),2)) {
  95.     if ($($+(%,botflood.,$nick),2) >= 50) {
  96.       ignore -u60 $address($nick,2)
  97.       msg $chan $+($nick,$chr(44)) You have been put on ignore for 60secs for abusing the bot.
  98.       halt
  99.     }
  100.     elseif ($($+(%,botflood.,$nick),2) >= 40) {
  101.       msg $chan $+($nick,$chr(44)) Please do not flood the bot.  
  102.       inc -z $+(%,botflood.,$nick) 20
  103.       halt
  104.     }
  105.     else {
  106.       inc -z $+(%,botflood.,$nick) 10
  107.     }
  108.   }
  109.   else { inc -z $+(%,botflood.,$nick) 10 }
  110.   var %i 1
  111.   var %ticks $ticks
  112.   while (%i <= $numtok($1-,32)) {
  113.     if (*twitter.com* iswm $($+($,%i),2)) {
  114.       set $+(%,twitter.,%ticks,.url) $remove($strip($($+($,%i),2)),http://,https://,twitter.com,mobile.,/#!)
  115.       if (($($+(%,twitter.,%ticks,.url),2) != %_twitter.last) && ($($+(%,twitter.,%ticks,.url),2) != $null)) {
  116.         set $+(%,twitter.,%ticks,.msgtype) msg $iif($chan,$v1,$nick)
  117.         set $+(%,twitter.,%ticks,.search) $null
  118.         set $+(%,twitter.,%ticks,.user),2) $gettok($($+(%,twitter.,%ticks,.url),2),1,47)
  119.         sockopen $+(twitter.,%ticks) mobile.twitter.com 80
  120.       }
  121.       break
  122.     }
  123.     inc %i
  124.   }
  125. }
  126.  
  127. on $*:text:/^[!@.](twitter|tweet|hashtag|trending|tt|trends)/Si:*: {
  128.   tokenize 32 $strip($1-)
  129.   $iif($chan == #rsbot,halt,noop)
  130.   if ($($+(%,botflood.,$nick),2)) {
  131.     if ($($+(%,botflood.,$nick),2) >= 50) {
  132.       ignore -u60 $address($nick,2)
  133.       msg $chan $+($nick,$chr(44)) You have been put on ignore for 60secs for abusing the bot.
  134.       halt
  135.     }
  136.     elseif ($($+(%,botflood.,$nick),2) >= 40) {
  137.       msg $chan $+($nick,$chr(44)) Please do not flood the bot.
  138.       inc -z $+(%,botflood.,$nick) 20
  139.       halt
  140.     }
  141.     else {
  142.       inc -z $+(%,botflood.,$nick) 25
  143.     }
  144.   }
  145.   else {
  146.     inc -z $+(%,botflood.,$nick) 25
  147.   }
  148.   unset %twitter.*
  149.   var %ticks $ticks
  150.   set $+(%,twitter.,%ticks,.msgtype) $iif($left($1,1) == @,msg $chan,notice $nick)
  151.   if ($2) {
  152.     if ($2 == help) {
  153.       ;MARKED FOR REVISION -- add the help file
  154.       .play -nm1 $nick TwitterHelp.txt 1300
  155.     }
  156.     elseif ($2 != help) {
  157.       if (($left($2,1) == $chr(35)) || ($left($2,1) == $chr(64)) || ($3 isalpha)) {
  158.         set $+(%,twitter.,%ticks,.searching) true
  159.         if ($gettok($2-,$numtok($2-,32),32) isnum) {
  160.           set $+(%,twitter.,%ticks,.search) $gettok($2-,$+(1,-,$calc($numtok($2-,32) - 1)),32)
  161.           set $+(%,twitter.,%ticks,.tweetcount) 0
  162.           set $+(%,twitter.,%ticks,.count) $calc($gettok($2-,$numtok($2-,32),32) + 2)
  163.         }
  164.         elseif ($gettok($2-,$numtok($2-,32),32) !isnum) {
  165.           set $+(%,twitter.,%ticks,.search) $2-
  166.           set $+(%,twitter.,%ticks,.tweetcount) 0
  167.           set $+(%,twitter.,%ticks,.count) $calc(3 + 2)
  168.         }
  169.       }
  170.       else {
  171.         set $+(%,twitter.,%ticks,.search) $2
  172.         set $+(%,twitter.,%ticks,.tweetcount) 0
  173.         set $+(%,twitter.,%ticks,.count) $iif($3,$3,3)
  174.         set $+(%,twitter.,%ticks,.fetch) $iif($3 == news,on,off)
  175.       }
  176.       sockopen $+(twitter.,%ticks) mobile.twitter.com 80
  177.     }
  178.   }
  179.   elseif ($2 == $null) {
  180.     set $+(%,twitter.,%ticks,.searching) true
  181.     set $+(%,twitter.,%ticks,.search) $null
  182.     sockopen $+(twitter.,%ticks) mobile.twitter.com 80
  183.   }
  184. }
  185.  
  186. alias twitter {
  187.   tokenize 32 $strip($1-)
  188.   if ($1 == help) {
  189.     .play -e TwitterHelp.txt 1300
  190.     ;MARKED FOR REVISION -- edit this
  191.   }
  192.   elseif ($1 != help) {
  193.     var %ticks $ticks
  194.     unset %twitter.*
  195.     set $+(%,twitter.,%ticks,.msgtype) msg $active
  196.     if (($left($1,1) == $chr(35)) || ($left($1,1) == $chr(64)) || ($2 isalpha)) {
  197.       set $+(%,twitter.,%ticks,.searching) true
  198.       if ($gettok($1-,$numtok($1-,32),32) isnum) {
  199.         set $+(%,twitter.,%ticks,.search) $gettok($1-,$+(1,-,$calc($numtok($1-,32) - 1)),32)
  200.         set $+(%,twitter.,%ticks,.tweetcount) 0
  201.         set $+(%,twitter.,%ticks,.count) $calc($gettok($1-,$numtok($1-,32),32) + 2)
  202.       }
  203.       elseif ($gettok($1-,$numtok($1-,32),32) !isnum) {
  204.         set $+(%,twitter.,%ticks,.search) $1-
  205.         set $+(%,twitter.,%ticks,.tweetcount) 0
  206.         set $+(%,twitter.,%ticks,.count) $calc(3 + 2)
  207.       }
  208.     }
  209.     elseif ($1 == $null) {
  210.       set $+(%,twitter.,%ticks,.searching) true
  211.       set $+(%,twitter.,%ticks,.search) $null
  212.     }
  213.     else {
  214.       set $+(%,twitter.,%ticks,.search) $1
  215.       set $+(%,twitter.,%ticks,.tweetcount) 0
  216.       set $+(%,twitter.,%ticks,.count) $iif($2,$2,3)
  217.       $iif($3 == news,set $+(%,twitter.,%ticks,.fetch) on,set $+(%,twitter.,%ticks,.fetch) off)
  218.     }
  219.     sockopen $+(twitter.,%ticks) mobile.twitter.com 80
  220.   }
  221. }
  222.  
  223. on *:sockopen:twitter*: {
  224.   if ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) == true) {
  225.     sockwrite -nt $sockname GET $+(/searches?q=,$iif($($+(%,twitter.,$remove($sockname,twitter.),.search),2) != $null,$urlencode($($+(%,twitter.,$remove($sockname,twitter.),.search),2)),asdfoi189123m)) HTTP/1.1  
  226.   }
  227.   elseif ($($+(%,twitter.,$remove($sockname,twitter.),.url),2) != $null) {
  228.     sockwrite -nt $sockname GET $($+(%,twitter.,$remove($sockname,twitter.),.url),2) HTTP/1.1
  229.   }
  230.   else {
  231.     sockwrite -nt $sockname GET $+(/,$($+(%,twitter.,$remove($sockname,twitter.),.search),2)) HTTP/1.1
  232.   }
  233.   sockwrite -nt $sockname Accept:text/html
  234.   sockwrite -nt $sockname Connection:keep-alive
  235.   sockwrite -nt $sockname Host: mobile.twitter.com
  236.   sockwrite -nt $sockname User-Agent:Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.46 Safari/535.11
  237.   sockwrite -nt $sockname $crlf
  238. }
  239.  
  240. alias -l getColor {
  241.   ;syntax: $getcolor(# of tweets)
  242.   var %num $1
  243.   while (%num > 3) {
  244.     var %num $calc(%num - 3)
  245.   }
  246.   if (%num == 1) {
  247.     return 10
  248.   }
  249.   elseif (%num == 2) {
  250.     return 03
  251.   }
  252.   elseif (%num == 3) {
  253.     return 06
  254.   }
  255. }
  256.  
  257. on *:SOCKREAD:twitter*: {
  258.   if ($sockerr) {
  259.     echo -a SOCKET ERROR: ( $+ $sockerr $+ : $sock($sockname).wsmsg $+ )
  260.   }
  261.   else {
  262.     var %sockreader
  263.     sockread %sockreader
  264.     inc $+(%,twitter.,$remove($sockname,twitter.),.linecount) 1
  265.     ;DEBUG MODE echo -a $+($($+(%,twitter.,$remove($sockname,twitter.),.linecount),2),.) %sockreader
  266.     ;NOTE - The linecount will differ from browser source by ABOUT 25 lines
  267.     if ($($+(%,twitter.,$remove($sockname,twitter.),.search),2) != $null) {
  268.       if ((*<strong>* iswm %sockreader) && ($($+(%,twitter.,$remove($sockname,twitter.),.user),2) == $null)) {
  269.         if ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) == true) {
  270.           tokenize 32 %sockreader
  271.           if ($1-4 == No tweet results for) {
  272.             $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.search),2)) $replace($nohtml(%sockreader),$($+(%,twitter.,$remove($sockname,twitter.),.search),2),$+(04,$($+(%,twitter.,$remove($sockname,twitter.),.search),2),10)) - Try a different search term.
  273.             unset $+(%,twitter.,$remove($sockname,twitter.),*)
  274.             sockclose $sockname
  275.           }
  276.           else {
  277.             set $+(%,twitter.,$remove($sockname,twitter.),.user) $left($nohtml(%sockreader),-1)
  278.           }
  279.         }
  280.         else {
  281.           set $+(%,twitter.,$remove($sockname,twitter.),.user) $nohtml(%sockreader)
  282.           set $+(%,twitter.,$remove($sockname,twitter.),.test) check
  283.         }
  284.       }
  285.       elseif ($($+(%,twitter.,$remove($sockname,twitter.),.test),2) != $null) {
  286.         var %a $nohtml(%sockreader)
  287.         %a = $remove(%a,$chr(32),$chr(40),$chr(41))
  288.         if ($($+(%,twitter.,$remove($sockname,twitter.),.user),2) != %a) {
  289.           set $+(%,twitter.,$remove($sockname,twitter.),.user) $($+(%,twitter.,$remove($sockname,twitter.),.user),2) $nohtml(%sockreader)
  290.         }
  291.         unset $+(%,twitter.,$remove($sockname,twitter.),.test)
  292.       }
  293.       elseif (*<div class='verified'>* iswm %sockreader) {
  294.         set $+(%,twitter.,$remove($sockname,twitter.),.user) $($+(%,twitter.,$remove($sockname,twitter.),.user),2) $chr(10004)
  295.       }
  296.       elseif (*<span class="status">* iswm %sockreader) {
  297.         if (*</span>* !iswm %sockreader) {
  298.           set $+(%,twitter.,$remove($sockname,twitter.),.unfinished) true
  299.         }
  300.         elseif (*</span>* iswm %sockreader) {
  301.           inc $+(%,twitter.,$remove($sockname,twitter.),.tweetcount)
  302.           set $+(%,twitter.,$remove($sockname,twitter.),.unfinished) false
  303.         }
  304.         if ($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2) <= $($+(%,twitter.,$remove($sockname,twitter.),.count),2)) {
  305.           var %a %sockreader
  306.           var %b $nohtml(%sockreader)
  307.           if ((*class="twitter_external_link">* iswm %a) && (*http*://t.co/* iswm %sockreader)) {
  308.             var %i 0
  309.             while (%i < $wildtok(%a,*class="twitter_external_link">*,0,32)) {
  310.               inc %i
  311.               var %d $remove($wildtok(%a,*class="twitter_external_link">*,%i,32),class="twitter_external_link">,</a>,</span>))
  312.               var %c $linkcolor($+($noqt($remove($wildtok(%a,*http*://t.co/*,%i,32),href=))),$chr(44),$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)))
  313.               var %b $replace(%b,%d,%c)
  314.             }
  315.           }
  316.           elseif ((*class="twitter_external_link">* iswm %a) && (*http*://t.co/* !iswm %sockreader)) {
  317.             var %i 0
  318.             while (%i < $wildtok(%b,*http://twitpic.com/*,0,32)) {
  319.               inc %i
  320.               var %d $wildtok(%b,*http*://twitpic.com/*,%i,32)
  321.               var %c $linkcolor($+($wildtok(%b,*http*://twitpic.com/*,%i,32)),$chr(44),$getcolor($($+(%,twitter.,%ticks,.tweetcount),2)))
  322.               var %b $replace(%b,%d,%c)
  323.             }
  324.           }
  325.           if ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) == true) {
  326.             if ($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2) == 1) {
  327.               set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) Top Tweet -4 %b
  328.             }
  329.             elseif ($($+(%,twitter.,$remove($sockname,twitter.),.top),2) == false) {
  330.               set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) $+(,$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)),%b)
  331.             }
  332.             elseif (($($+(%,twitter.,$remove($sockname,twitter.),.top),2) == true) && ($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2) !isnum 2-3)) {
  333.               set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) $+(,$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)),%b)
  334.             }
  335.           }
  336.           elseif ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) != true) {
  337.             set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) $+(,$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)),%b)
  338.           }
  339.         }
  340.       }
  341.       elseif ($($+(%,twitter.,$remove($sockname,twitter.),.unfinished),2) == true) {
  342.         if (*</span>* iswm %sockreader) {
  343.           inc $+(%,twitter.,$remove($sockname,twitter.),.tweetcount)
  344.           set $+(%,twitter.,$remove($sockname,twitter.),.unfinished) false
  345.         }
  346.         if ($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2) <= $($+(%,twitter.,$remove($sockname,twitter.),.count),2)) {
  347.           var %a %sockreader
  348.           var %b $nohtml(%sockreader)
  349.           if (*class="twitter_external_link">* iswm %a) {
  350.             var %i 0
  351.             while (%i <= $wildtok(%a,*class="twitter_external_link">*,0,32)) {
  352.               inc %i
  353.               var %d $remove($wildtok(%a,*class="twitter_external_link">*,%i,32),class="twitter_external_link">,</a>,</span>))
  354.               var %c $linkcolor($+($noqt($remove($wildtok(%a,*http*://t.co/*,%i,32),href=))),$chr(44),$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)))
  355.               var %b $replace(%b,%d,%c)
  356.             }
  357.           }
  358.           elseif ((*class="twitter_external_link">* iswm %a) && (*http*://t.co/* !iswm %sockreader)) {
  359.             var %i 0
  360.             while (%i < $wildtok(%b,*http*://twitpic.com/*,0,32)) {
  361.               inc %i
  362.               var %d $wildtok(%b,*http*://twitpic.com/*,%i,32)
  363.               var %c $linkcolor($+($wildtok(%b,*http*://twitpic.com/*,%i,32)),$chr(44),$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)))
  364.               var %b $replace(%b,%d,%c)
  365.             }
  366.           }
  367.           if ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) == true) {
  368.             if ($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2) == 1) {
  369.               set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) Top Tweet -4 %b
  370.             }
  371.             elseif ($($+(%,twitter.,$remove($sockname,twitter.),.top),2) == false) {
  372.               set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) $+(,$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)),%b)
  373.             }
  374.             elseif (($($+(%,twitter.,$remove($sockname,twitter.),.top),2) == true) && ($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2) !isnum 2-3)) {
  375.               set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) $+(,$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)),%b)
  376.             }
  377.           }
  378.           elseif ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) != true) {
  379.             set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) $+(,$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)),%b)
  380.           }
  381.         }
  382.       }
  383.       elseif ((*class="status_link">* iswm %sockreader) && (*<span class="text">* !iswm %sockreader) && (*Retweeted by* !iswm %sockreader)) {
  384.         if ((($($+(%,twitter.,$remove($sockname,twitter.),.top),2) == true) && ($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2) !isnum 2-3)) || ($($+(%,twitter.,$remove($sockname,twitter.),.top),2) != true) || ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) != true))  {
  385.           tokenize 32 $remove($nohtml(%sockreader),about,over,almost,less than)
  386.           var %temp $replace($+(,$1-3),a minute,seconds)
  387.           if ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) == true) {
  388.             tokenize 47 %sockreader
  389.             set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) $+(12,@,$2,$chr(32),%temp)
  390.           }
  391.           elseif ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) != true) {
  392.             set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) %temp
  393.           }
  394.           if ($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2) == $($+(%,twitter.,$remove($sockname,twitter.),.count),2)) {
  395.             var %tweet $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2)
  396.             tokenize 15 %tweet
  397.             if ($($+(%,twitter.,$remove($sockname,twitter.),.fetch),2) == on) {
  398.               if ($remove($($+(%,_twitter,.,lastfrom,$($+(%,twitter.,$remove($sockname,twitter.),.search),2)),2),$chr(32)) != $remove($1,$chr(32))) {
  399.                 set $+(%,_twitter,.,lastfrom,$($+(%,twitter.,$remove($sockname,twitter.),.search),2)) $1
  400.                 echo -t @TwitterTimeline $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.user),2)) $1
  401.                 $iif($active != @TwitterTimeline,echo -at $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.user),2)) $1,noop)
  402.               }
  403.               if (%_twitnum < $numtok($users,44)) {
  404.                 FetchNews
  405.                 sockclose $sockname
  406.               }
  407.               elseif (%_twitnum >= $numtok($users,44))  {
  408.                 set %_twitnum 0
  409.                 .timerFetchNews 1 $calc($numtok($users,44) * 45) FetchNews
  410.                 sockclose $sockname
  411.               }
  412.             }
  413.             else {
  414.               $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.user),2)) $finaltweet($+($remove($sockname,twitter.),$chr(44),%tweet))
  415.               unset $+(%,twitter.,$remove($sockname,twitter.),*)
  416.               sockclose $sockname
  417.             }
  418.           }
  419.         }
  420.       }
  421.       elseif ((*<div class='top-tweet'>* iswm %sockreader) && ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) == true)) {
  422.         set $+(%,twitter.,$remove($sockname,twitter.),.top) true
  423.       }
  424.       elseif (($($+(%,twitter.,$remove($sockname,twitter.),.linecount),2) > 95) && (!$($+(%,twitter.,$remove($sockname,twitter.),.top),2)) && ($($+(%,twitter.,$remove($sockname,twitter.),.searching),2) == true)) {
  425.         set $+(%,twitter.,$remove($sockname,twitter.),.top) false
  426.         dec $+(%,twitter.,$remove($sockname,twitter.),.count) 2
  427.       }
  428.       elseif (*<div class='head'* iswm %sockreader) {
  429.         $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.search),2)) This user has no account
  430.         unset $+(%,twitter.,$remove($sockname,twitter.),*)
  431.         sockclose $sockname
  432.       }
  433.       elseif (*<div class="failhead">* iswm %sockreader) {
  434.         $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.search),2)) Something is technically wrong. Thanks for noticing - we're going to fix it up and have things back to normal soon.
  435.         unset $+(%,twitter.,$remove($sockname,twitter.),*)
  436.         sockclose $sockname
  437.       }
  438.       elseif  (*Location: http://mobile.twitter.com/suspended.html* iswm %sockreader) {
  439.         $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.search),2)) This user was suspended
  440.         unset $+(%,twitter.,$remove($sockname,twitter.),*)
  441.         sockclose $sockname
  442.       }
  443.       elseif (<div class='protected'> == %sockreader) {
  444.         $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.search),2)) This user has protected tweets
  445.         unset $+(%,twitter.,$remove($sockname,twitter.),*)
  446.         sockclose $sockname
  447.       }
  448.       elseif (*This person hasn't tweeted yet* iswm %sockreader) {
  449.         $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.search),2)) This user has no tweets
  450.         unset $+(%,twitter.,$remove($sockname,twitter.),*)
  451.         sockclose $sockname
  452.       }
  453.     }
  454.     elseif ($($+(%,twitter.,$remove($sockname,twitter.),.search),2) == $null) {
  455.       if ((*<li><a href="http://mobile.twitter.com/searches?q=* iswm %sockreader) && ($($+(%,twitter.,$remove($sockname,twitter.),.count),2) == 4)) {
  456.         inc $+(%,twitter.,$remove($sockname,twitter.),.count)
  457.         set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) $+($($+(%,twitter.,$remove($sockname,twitter.),.count),2),.,$chr(32),,$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.count),2)),$nohtml(%sockreader),01)
  458.         $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $+($bracketcolor(Top Trends),) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2)
  459.         unset $+(%,twitter.,$remove($sockname,twitter.),*)
  460.         sockclose $sockname
  461.       }
  462.       elseif ((*<li><a href="http://mobile.twitter.com/searches?q=* iswm %sockreader) && ($($+(%,twitter.,$remove($sockname,twitter.),.count),2) != 4)) {
  463.         inc $+(%,twitter.,$remove($sockname,twitter.),.count)
  464.         set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) $+($($+(%,twitter.,$remove($sockname,twitter.),.count),2),.,$chr(32),,$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.count),2)),$nohtml(%sockreader),01)
  465.       }
  466.       elseif ($($+(%,twitter.,$remove($sockname,twitter.),.url),2) != $null) {
  467.         if (*class="list-tweet-img"* iswm %sockreader) {
  468.           var %a $gettok(%sockreader,4,34)
  469.           %a = $remove(%a,$chr(32),$chr(40),$chr(41))
  470.           if ($($+(%,twitter.,$remove($sockname,twitter.),.user),2) != %a) {
  471.             set $+(%,twitter.,$remove($sockname,twitter.),.user) $($+(%,twitter.,$remove($sockname,twitter.),.user),2) $+($chr(40),$gettok(%sockreader,4,34),$chr(41))
  472.           }
  473.           $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.user),2)) $finaltweet($+($remove($sockname,twitter.),$chr(44),$($+(%,twitter.,$remove($sockname,twitter.),.tweet),2))) %temp
  474.           set %_twitter.last $($+(%,twitter.,$remove($sockname,twitter.),.url),2)
  475.           unset $+(%,twitter.,$remove($sockname,twitter.),*)
  476.           sockclose $sockname
  477.         }
  478.         elseif (*<span class="status">* iswm %sockreader) {
  479.           if (*</span>* !iswm %sockreader) {
  480.             set $+(%,twitter.,$remove($sockname,twitter.),.unfinished) true
  481.           }
  482.           elseif (*</span>* iswm %sockreader) {
  483.             set $+(%,twitter.,$remove($sockname,twitter.),.unfinished) false
  484.           }
  485.           var %a %sockreader
  486.           var %b $nohtml(%sockreader)
  487.           if ((*class="twitter_external_link">* iswm %a) && (*http*://t.co/* iswm %sockreader)) {
  488.             var %i 0
  489.             while (%i < $wildtok(%a,*class="twitter_external_link">*,0,32)) {
  490.               inc %i
  491.               var %d $remove($wildtok(%a,*class="twitter_external_link">*,%i,32),class="twitter_external_link">,</a>,</span>))
  492.               var %c $linkcolor($+($noqt($remove($wildtok(%a,*http*://t.co/*,%i,32),href=))),$chr(44),$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)))
  493.               var %b $replace(%b,%d,%c)
  494.             }
  495.           }
  496.           elseif ((*class="twitter_external_link">* iswm %a) && (*http*://t.co/* !iswm %sockreader)) {
  497.             var %i 0
  498.             while (%i < $wildtok(%b,*http://twitpic.com/*,0,32)) {
  499.               inc %i
  500.               var %d $wildtok(%b,*http*://twitpic.com/*,%i,32)
  501.               var %c $linkcolor($+($wildtok(%b,*http*://twitpic.com/*,%i,32)),$chr(44),$getcolor($($+(%,twitter.,%ticks,.tweetcount),2)))
  502.               var %b $replace(%b,%d,%c)
  503.             }
  504.           }
  505.           set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) %b
  506.         }
  507.         elseif ($($+(%,twitter.,$remove($sockname,twitter.),.unfinished),2) == true) {
  508.           if (*</span>* iswm %sockreader) {
  509.             set $+(%,twitter.,$remove($sockname,twitter.),.unfinished) false
  510.           }
  511.           var %a %sockreader
  512.           var %b $nohtml(%sockreader)
  513.           if (*class="twitter_external_link">* iswm %a) {
  514.             var %i 0
  515.             while (%i <= $wildtok(%a,*class="twitter_external_link">*,0,32)) {
  516.               inc %i
  517.               var %d $remove($wildtok(%a,*class="twitter_external_link">*,%i,32),class="twitter_external_link">,</a>,</span>))
  518.               var %c $linkcolor($+($noqt($remove($wildtok(%a,*http*://t.co/*,%i,32),href=))),$chr(44),$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)))
  519.               var %b $replace(%b,%d,%c)
  520.             }
  521.           }
  522.           elseif ((*class="twitter_external_link">* iswm %a) && (*http*://t.co/* !iswm %sockreader)) {
  523.             var %i 0
  524.             while (%i < $wildtok(%b,*http*://twitpic.com/*,0,32)) {
  525.               inc %i
  526.               var %d $wildtok(%b,*http*://twitpic.com/*,%i,32)
  527.               var %c $linkcolor($+($wildtok(%b,*http*://twitpic.com/*,%i,32)),$chr(44),$getcolor($($+(%,twitter.,$remove($sockname,twitter.),.tweetcount),2)))
  528.               var %b $replace(%b,%d,%c)
  529.             }
  530.           }
  531.           set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) %b
  532.         }
  533.         elseif (($($+(%,twitter.,$remove($sockname,twitter.),.unfinished),2) == false) && (*class="status_link">* iswm %sockreader) && (*<span class="text">* !iswm %sockreader)) {
  534.           tokenize 32 $remove($nohtml(%sockreader),about,over,almost,less than)
  535.           var %temp $replace($+(,$1-3),a minute,seconds)
  536.           set $+(%,twitter.,$remove($sockname,twitter.),.tweet) $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2) %temp
  537.         }
  538.       }
  539.     }
  540.   }
  541. }
  542.  
  543. alias -l finalTweet {
  544.   ;syntax is $finaltweet($ticks,the tweet here)
  545.   tokenize 44 $1-
  546.   return $replace($2-,&amp;,&,&gt;,>,&lt;,<,$($+(%,twitter.,$1,.user),2),$+(,$($+(%,twitter.,$1,.user),2),))
  547. }
  548.  
  549. on *:sockclose:twitter*: {
  550.   var %tweet $iif($len(%tweet) > $($+(%,twitter.,$remove($sockname,twitter.),.tweet),2),%tweet,$($+(%,twitter.,$remove($sockname,twitter.),.tweet),2))
  551.   if (%tweet != $null) {
  552.     $($+(%,twitter.,$remove($sockname,twitter.),.msgtype),2) $bracketcolor($($+(%,twitter.,$remove($sockname,twitter.),.user),2)) $finaltweet($+($remove($sockname,twitter.),$chr(44),%tweet))
  553.     set %_twitter.last $($+(%,twitter.,$remove($sockname,twitter.),.url),2)
  554.   }
  555.   unset $+(%,twitter.,$remove($sockname,twitter.),*)
  556.   sockclose $sockname
  557. }
  558.  
  559. dialog Twitter {
  560.   ;MARKED FOR REVISION -- add this dialog
  561. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement