X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=src%2Fro%2Fieval%2Ffonbot%2FUtils.java;h=8548404aa2b62ae1af196f02287313dfe459c1d1;hb=008a56e6bcdef70992129b09735aaf8205c76292;hp=e14095ea4695e4301b33215e64731786b77a561c;hpb=2e5049c9c08b1989b4bfbbfbf479d83dbe2b75a9;p=fonbot.git diff --git a/src/ro/ieval/fonbot/Utils.java b/src/ro/ieval/fonbot/Utils.java index e14095e..8548404 100644 --- a/src/ro/ieval/fonbot/Utils.java +++ b/src/ro/ieval/fonbot/Utils.java @@ -86,7 +86,8 @@ public final class Utils { NEXT, PREV, BATT, CALLLOG, SMSLOG, LS, RM, CONTACTS, DISABLE, ENABLE, POLL, HANGUP, ANSWER, LAUNCH, DATA, - GPS, GLOCATION, REBOOT, SHUTDOWN, NOTIFY + GPS, GLOCATION, REBOOT, NOTIFY, SCREENCAP, + TORCH } /** @@ -109,7 +110,9 @@ public final class Utils { /** Fine battery status notifications */ BATTERY_CHANGED, /** Headset plug/unplug notifications */ - HEADSET + HEADSET, + /** Phone booted notifications */ + BOOT, } /** @@ -181,9 +184,7 @@ public final class Utils { /** Location tracking is active. Registered by {@link Command#LOCATION}, unregistered by {@link Command#NOLOCATION} */ LOCATION(location_tracking_is_active), /** The phone is ringing. Registered/unregistered by {@link Command#RING} */ - RING(ringing), - /** The polling alarm is on. Registered/unregistered by {@link Command#POLL} */ - POLL(the_polling_service_is_running); + RING(ringing); /** String resource: the event description */ public final int resource; @@ -317,7 +318,7 @@ public final class Utils { switch(address.protocol){ case HTTP: new HttpCallExecutableRunnable("/send", toNonNull(Arrays.asList( - new Header("X-Destination", toNonNull(address.data)))), context, null, message).execute(); + new Header("X-Destination", toNonNull(address.data)))), context, null, true, message).execute(); break; case SMS: @@ -335,21 +336,6 @@ public final class Utils { } } - /** - * Parses a HTTP response message of the form (part1) part2, returning part2. - * - * @param message the raw HTTP response message - * @return the extracted part - */ - public static String parseHttpMessage(final String message){ - final int indexOfParen=message.indexOf(')'); - if(indexOfParen==-1) - return message; - if(indexOfParen == message.length()-1) - return toNonNull(message.substring(1, indexOfParen)); - return toNonNull(message.substring(indexOfParen+2)); - } - /** * Splits a string into words. * @@ -419,21 +405,12 @@ public final class Utils { * @throws MalformedURLException if the user preferences create an invalid URL */ public static URL getServerURL(final Context context, final String path) throws MalformedURLException{ - final String hostname=PreferenceManager.getDefaultSharedPreferences(context).getString("hostname", "ieval.ro"); - final int port=Integer.parseInt(PreferenceManager.getDefaultSharedPreferences(context).getString("port", "7777")); + final String hostname=PreferenceManager.getDefaultSharedPreferences(context).getString("hostname", "fonbot.ieval.ro"); + final int port=Integer.parseInt(PreferenceManager.getDefaultSharedPreferences(context).getString("port", "443")); final URL url=new URL("http", hostname, port, path); return url; } - /** - * Poll the server for pending commands. - * - * @param context Context instance - */ - public static void pollServer(final Context context){ - new HttpCallExecutableRunnable("/get", null, context, new PollResultCallback(context)).execute(); - } - /** * Executes a given command * @@ -444,7 +421,7 @@ public final class Utils { */ private static void processCommand(final Context context, final Command cmd,final String[] args,final Address replyTo){ if(Heavy.isCommandDisabled(context, cmd)){ - sendMessage(context, replyTo, command_disabled); + sendMessage(context, replyTo, command_disabled, cmd.toString()); return; } @@ -909,25 +886,7 @@ public final class Utils { break; case POLL: - if(args.length>1){ - Heavy.help(context, replyTo, toNonNull(Command.POLL)); - break; - } - - if(args.length==0){ - Heavy.poll(context, replyTo); - break; - } - - final long interval; - try{ - interval=Long.parseLong(args[0]); - } catch(NumberFormatException e){ - sendMessage(context, replyTo, cannot_parse_interval); - break; - } - - Heavy.poll(context, replyTo, interval); + Heavy.poll(context, replyTo); break; case HANGUP: @@ -1008,13 +967,10 @@ public final class Utils { Heavy.reboot(context, replyTo, args.length==0?null:args[0]); break; - case SHUTDOWN: - //TODO: implement command - break; - case NOTIFY: if(args.length!=1 && args.length!=3){ Heavy.help(context, replyTo, toNonNull(Command.NOTIFY)); + return; } final int id; @@ -1030,6 +986,19 @@ public final class Utils { else Heavy.notify(context, replyTo, id, toNonNull(args[1]), toNonNull(args[2])); break; + + case SCREENCAP: + if(args.length != 1){ + Heavy.help(context, replyTo, toNonNull(Command.SCREENCAP)); + return; + } + + Heavy.screencap(context, replyTo, args[0]); + break; + + case TORCH: + Heavy.torch(context, replyTo); + break; } }