Author Topic: Find my iPhone  (Read 13604 times)

0 Members and 1 Guest are viewing this topic.

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Find my iPhone
« on: August 03, 2014, 04:59:42 AM »
Reading http://voxcommando.com/forum/index.php?topic=1662.0;topicseen about paging android devices ... Made me jump to google and try to find if apple expose an API for find my phone ... I found this project

https://github.com/comfuture/recordmylatitude/blob/master/findmyiphone/__init__.py

Which is basically python program that hooks up to apple API and give the command available programmatically ...

Since I am python toddler (can do just simple arithmetic only) ... I wish a python savvy help us to adapt the script to work with VC ...

It will be great to tell VC make my phone ring ... To find under which pillow it is !!!!

P.S. The python is ported from this PHP project: https://github.com/tylerhall/sosumi/blob/master/class.sosumi.php


UPDATE: the script in this discussion are no longer working due to changes that apple implemented ... I will update if new solution arise
« Last Edit: January 11, 2015, 02:16:10 AM by Haddood »
When Voice command gets tough, use hand gestures

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #1 on: August 03, 2014, 12:48:52 PM »
Since we don't have Apple products to test the code with, we can't really help.

The code may be usable just as it is (though it may be optimistic to expect it to work out of the box). It does more than you are looking for it to do, but that doesn't really matter.

If you've already enabled your iCloud "find my iphone" service, why don't you try it?

The easiest way to test it is for you to install Python for Windows (it's pretty small): https://www.python.org/downloads/

This is to eliminate any possible complications that Iron Python might add to the mix. If you're able to get the code to work natively, then we can worry about the VC end of things.

1. Save the GitHub file as a .py file on your computer.

2. Run the IDE that comes with Python, called IDLE (just search in your start menu for IDLE and it will appear).

Open the .py file you just saved to your computer in IDLE. Then run it. ("Run Module" or F5)

If you get no errors, then try the next step. You'll need your Apple username and password, as well as the UDID for your iPhone.

In IDLE, type:
pageMe=FindMyIPhone('[yourusername]','[yourpassword]')

If *that* works, and you don't getting any authentication errors or anything, then wonder of wonder. You're ready to try paging yourself.

So then, try one of the functions in that module. Again, in IDLE, enter:

pageMe.locate('[yourUDID]')

No errors? (Wow!) OK, try sending yourself a message then.

pageMe.sendMessage('Your Message', True, '[UDID]', 'Important Message')

...I *think* the true should trigger the alarm sound. The 1st stuff in quotes is supposed to be the message that you get. The last string is the subject line.

It's a long shot, but if you have the time, why not?


« Last Edit: August 03, 2014, 01:03:34 PM by nime5ter »
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #2 on: August 03, 2014, 01:01:53 PM »
thank you nime5ter will do that and post the results ....
When Voice command gets tough, use hand gestures

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #3 on: August 03, 2014, 03:04:59 PM »
I have exciting news for you. This code works as is with Iron Python no problem. At least, it works with the 5-year-old iPod I have -- the only thing I had to test it with.

I was wrong about needing your UDID. The code actually finds the UDIDs for all of the Apple devices associated with your iCloud account internally.

So, if you have just one device, then the following will work as is, otherwise, you may have to make slight adjustments which we can discuss when relevant:

2 VC commands are easy. Load the py file. Call the python when you want to page your phone. Enter your iCloud username and pwd in the command where indicated.

Code: [Select]
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.0.0.5-->
<commandGroup open="True" name="iphone pager" enabled="True" prefix="" priority="0" requiredProcess="" description="">
  <command id="299" name="ipager" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>PY.ExecString</cmdType>
      <params>
        <param>pager("[yourusername]","[yourpwd]")</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Where is my eye phone?</phrase>
  </command>
  <command id="304" name="load python" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>PY.ExecFile</cmdType>
      <params>
        <param>PY\iphonePager.py</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <event>VC.Loaded</event>
  </command>
</commandGroup>

Put the attached file in your VoxCommando \PY directory ... or change the file path in the command, as per usual.
« Last Edit: August 03, 2014, 03:31:04 PM by nime5ter »
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #4 on: August 03, 2014, 09:15:50 PM »
 :clap :clap :clap :yay :yay :yay ::bow ::bow ::bow

this is amazing news for all iPhoners, iPaders and iPoders and iMac-ers who use VC

I modified your Pager function to include device ID ... as I have and iPad as well ...

Following your example (pager) I added ... remote lock and will do some testing with locate, maybe passing the coordinate to a mapping site that gives the address ... so one says "where is my phone" VC will respond: it is at work, home ... or 1660 Boulvard St-Laurant ... etc.

as well for the fun one can add: "VC initiate self-destruction on my iPhone", VC: "Enter self-destruction sequence code" ..."1234", "Are you sure?" "yes" "are you really sure" ..... "Damn it, destroy the thing" and that will wipe remotely the phone !!!

Again a million thank you
« Last Edit: August 03, 2014, 10:07:51 PM by Haddood »
When Voice command gets tough, use hand gestures

Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2319
  • Karma: 47
    • View Profile
Re: Find my iPhone
« Reply #5 on: August 04, 2014, 01:24:58 AM »
Hi Haddood, please can you explain step by step how you did get it to work.

Thanks
Kalle
***********  get excited and make things  **********

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #6 on: August 04, 2014, 02:15:05 PM »
Hi Kalle ...
late reply due to time differences

there is not much require explanation ...
just place the Python script in PY folder in voxcommando (I am attaching the modified one) then you can call

PY.ExecString iPager("icloud user name usualy email","icloud password", deviceID)
PY.ExecString iLock("icloud user name usualy email","icloud password", deviceID, PassCode)

Device ID is an integer starting with 0, the sequence is the same  ... if you are not sure which is which start iPager with 0 and increment and see which device rings ...
PassCode in the iLock has no effect ifyou already have a passcode enabled ... otherwise PassCode will be the new setting ...

as for iLocate & iWipe ... I have not enabled these functions yet ... iWipe is pretty easy to set, the only problem I do not have a device that I can afford wiping ... iLocate will require some research for mapping services to display the coordinates

hope that helps
When Voice command gets tough, use hand gestures

Kalle

  • $upporter
  • Hero Member
  • *****
  • Posts: 2319
  • Karma: 47
    • View Profile
Re: Find my iPhone
« Reply #7 on: August 04, 2014, 02:36:12 PM »
Big Thanks  ::bow
***********  get excited and make things  **********

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7715
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Find my iPhone
« Reply #8 on: August 04, 2014, 03:28:54 PM »
Quote
. iLocate will require some research for mapping services to display the coordinates

You can probably us a Google map URL.  They look like this

https://www.google.ca/maps/@{latitude},{longitude},11z

so if the python returns some kind of lat/long variables it should be pretty easy with Launch.URL

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #9 on: August 04, 2014, 04:41:19 PM »
James ...

You can probably us a Google map URL.  They look like this

https://www.google.ca/maps/@{latitude},{longitude},11z

so if the python returns some kind of lat/long variables it should be pretty easy with Launch.URL

just figured that out ... this morning after few tests ....

however I am having trouble returning the location back to VC ... this is the command I added to the script above ...

Code: [Select]
def iLocate(username,password,device_num, max_wait):
    myP=FindMyIPhone(username,password)
    strLocation = myP.locate(device_num, max_wait)

however if I try :
Code: [Select]
return strLocation the python script do not load giving errors

I tried even:
Code: [Select]
vc.triggerEvent("iCloud.Locate", List[str]([strLocation]))

again script do not load giving errors ...

I have no idea what I am doing ... just copying and trial and error with your examples and nime5ter examples ... any help appreciated
When Voice command gets tough, use hand gestures

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7715
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Find my iPhone
« Reply #10 on: August 04, 2014, 05:09:44 PM »
if you look at the locate method, you will see that it does not return a string.  here is what it returns:
Code: [Select]
       return {
            'latitude': device.latitude,
            'longitude': device.longitude,
            'accuracy': device.horizontal_accuracy,
            'timestamp': device.location_timestamp,
       }

so you will need to do something like:
Code: [Select]
def iLocate(username,password,device_num, max_wait):
    myP=FindMyIPhone(username,password)
    locData = myP.locate(device_num, max_wait)
    strUrl = 'https://www.google.ca/maps/@'+locData.latitude +','+ locData.longitude +',11z'
    vc.callAction("Launch.OpenURL",strUrl, None)


nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #11 on: August 04, 2014, 05:16:39 PM »
James posted the above without testing it. The following actually works:

Code: [Select]

def iLocate(username,password,device_num):
    myP=FindMyIPhone(username,password)
    locData = myP.locate(device_num)
    strUrl = 'https://www.google.ca/maps/@'+str(locData['latitude']) +','+ str(locData['longitude']) +',12z'
    vc.callAction("Launch.OpenURL",strUrl, None)
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #12 on: August 04, 2014, 05:47:56 PM »
That is great .... thank you, thank you, thank you,  ;D ;D

one more questions:  can we return the location back to VC and lunch the URL from within command builder ... as  we can do much more than just lunch maps ... e.x. we can use that to ping the phone geo-data every few minutes to know when someone getting close to home, work ...etc.
When Voice command gets tough, use hand gestures

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #13 on: August 04, 2014, 06:00:30 PM »
Yes, sure. One way is:

Code: [Select]
from System.Collections.Generic import *

def iLocate(username,password,device_num):
    myP=FindMyIPhone(username,password)
    locData = myP.locate(device_num)
    #strUrl = 'https://maps.google.ca/maps?q='+str(locData['latitude']) +','+ str(locData['longitude'])
    #vc.callAction("Launch.OpenURL",strUrl, None)
    vc.triggerEvent("locData", List[str]([str(locData['latitude']),str(locData['longitude'])]))

This would trigger an event called locData, passing latitude as {1} and longitude as {2}.

By the way, in my code here I've commented out an alternate Google Maps URL that I like better than the one posted above, because it includes a location marker on the map.
« Last Edit: August 04, 2014, 06:05:47 PM by nime5ter »
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #14 on: August 04, 2014, 06:02:57 PM »
Remember that if you want to trigger an event that takes payloads, you always need the:

Code: [Select]
from System.Collections.Generic import *
http://voxcommando.com/mediawiki/index.php?title=Python#Triggering_an_Event
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #15 on: August 04, 2014, 06:05:24 PM »
 ::bow ::bow

I found using
strUrl = 'https://www.google.com/maps/place/'+str(locData['latitude']) +','+ str(locData['longitude'])

will put a marker and show coordinates on map ...

thank you again nime5ter for all the help ... when all is ready and working neatly will post the whole thing in the XML exchange forum for other users to benefit from it ...
When Voice command gets tough, use hand gestures

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #16 on: August 13, 2014, 08:33:12 AM »
Now I got all set and running thanks to all your feedback ...

I can say: Alfred where is my son? And like magic VC will pop up google map with location of my son so I can know he reached his destination safely without me bugging him, or Alfred I can't find my phone and VC magic will make my phone ring ... The advantage of paging is that even if the phone on silent it will ring

The new issue that pops up is that icloud sometimes take a while to respond ... And I remember reading a post from James about running a macro in a second thread or new thread ... Can this be applied to these macros? So that VC keep running while it locate the iDevice position?

As well I am working on reversing the geodata to address if anyone with experience can help will be great, then VC would be able to respond with "you forgot your phone at work" instead of paging it directly
When Voice command gets tough, use hand gestures

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #17 on: August 13, 2014, 09:43:25 AM »
Probably the easiest would be to use something like Mapquest's reverse geocoding. You can sign up for free to get an API key for personal use, then you can do get requests (scrape) to retrieve the address. For city addresses, it seems pretty precise.

http://developer.mapquest.com/web/products/open

You can use your latitude and longitude payloads within the URL that you'll be scraping (where I have the [LAT] & [LONG] placeholders below).

Here is a simple example:

Code: [Select]
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.0.0.6-->
<command id="278" name="Where is John?" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="Get your free Mapquest API key from: http://developer.mapquest.com/web/products/open&#xD;&#xA;&#xD;&#xA;In the Scrape action: replace [LAT] &amp; [LONG] with your locData payloads">
  <action>
    <cmdType>Scrape</cmdType>
    <params>
      <param>http://mapquestapi.com/geocoding/v1/reverse?key=YOUR_KEY_HERE&amp;callback=renderReverse&amp;location=[LAT],[LONG]</param>
    </params>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <action>
    <cmdType>Results.RegEx</cmdType>
    <params>
      <param>"street":"(.*?)"</param>
    </params>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <action>
    <cmdType>OSD.ShowText</cmdType>
    <params>
      <param>John is at {Match.1}</param>
    </params>
    <cmdRepeat>1</cmdRepeat>
  </action>
  <phrase>Where is John </phrase>
</command>
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #18 on: August 13, 2014, 07:04:04 PM »
Probably the easiest would be to use something like Mapquest's reverse geocoding. You can sign up for free to get an API key for personal use,

thank you  ::bow ::bow ... I was looking into google and it sounded complicated the API key thing ... map quest is done and tested, works like a charm ... now no excuses not to finish the Macro.

One question remains ...

The new issue that pops up is that icloud sometimes take a while to respond ... And I remember reading a post from James about running a macro in a second thread or new thread ... Can this be applied to these macros? So that VC keep running while it locate the iDevice position?
When Voice command gets tough, use hand gestures

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #19 on: August 14, 2014, 08:08:10 AM »
If you want a VC command to run in its own thread, add the characters ++ at the beginning of the command name.

e.g. http://voxcommando.com/forum/index.php?topic=1647.msg14344#msg14344

If you want to add threading to your python script, see the gmail notifier python code.
« Last Edit: August 14, 2014, 08:16:54 AM by nime5ter »
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #20 on: August 14, 2014, 04:34:08 PM »

I found the same thread after some more digging in the forums ...  :clap :clap to me

Your feedback still essential as I was not sure that the ++ is about threading

 ::bow ::bow
When Voice command gets tough, use hand gestures

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7715
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Find my iPhone
« Reply #21 on: August 14, 2014, 06:44:02 PM »
Please note that although running a command in its own thread with ++ does work, and specifically VC.Pause will not freeze VC, all other individual actions running within the macro will have to run within the main GUI thread so if you have an action that takes a long time to complete this will freeze VC.

So I recommend using a thread in python if that is possible, for any processing that takes a while to complete.

Hiryu

  • Contributor
  • ***
  • Posts: 53
  • Karma: 2
    • View Profile
Re: Find my iPhone
« Reply #22 on: December 23, 2014, 05:13:11 AM »
Hey guys,

Is the modified code still working (for iPhone devices)?

Just checking.  Thanks.

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #23 on: December 23, 2014, 09:50:54 AM »
Which modified code are you referring to? (Maybe just link to the post of interest.)
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7715
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Find my iPhone
« Reply #24 on: December 23, 2014, 11:04:19 AM »
Hey guys,

Is the modified code still working (for iPhone devices)?

Just checking.  Thanks.

The last we heard from you, your python plugin was not working at all.

Hiryu

  • Contributor
  • ***
  • Posts: 53
  • Karma: 2
    • View Profile
Re: Find my iPhone
« Reply #25 on: December 23, 2014, 02:28:01 PM »
Sorry, Nime5ter -- I meant the slightly modified iphonepager.py from Hadood.

Jitterjames -- I figured it out!  For some reason, the plugin files in the PY folder were deleted in my backup configuration.  The only thing left was the options.xml.  I have no idea how that happened, since I never go in to tinker with the files in there, but it did.  I knew it had to be user error!  So yeah, that was the problem. 

Anyway, got python working again (at least I know it works with weatherday.xml), but on this one I got "[plugin] System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
   at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
   --- End of inner exception stack trace --- " in the log.


Hi Kalle ...
late reply due to time differences

there is not much require explanation ...
just place the Python script in PY folder in voxcommando (I am attaching the modified one) then you can call

PY.ExecString iPager("icloud user name usualy email","icloud password", deviceID)
PY.ExecString iLock("icloud user name usualy email","icloud password", deviceID, PassCode)

Device ID is an integer starting with 0, the sequence is the same  ... if you are not sure which is which start iPager with 0 and increment and see which device rings ...
PassCode in the iLock has no effect ifyou already have a passcode enabled ... otherwise PassCode will be the new setting ...

as for iLocate & iWipe ... I have not enabled these functions yet ... iWipe is pretty easy to set, the only problem I do not have a device that I can afford wiping ... iLocate will require some research for mapping services to display the coordinates

hope that helps

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #26 on: December 23, 2014, 03:25:32 PM »
Can you explain more about how you tried to implement and execute Haddood's script?

Did you follow his instructions for calling either of the functions in his script from a VC command (i.e. either the iPager() or the iLock() function)?

Are you trying to run the script in the Python editor somehow, or did you create some kind of VC command that calls one of the functions as per his instructions (if the latter, please post your command)?

Are you sure you're entering the right username and password for your Apple account?
« Last Edit: January 01, 2015, 09:15:45 PM by nime5ter »
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7715
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Find my iPhone
« Reply #27 on: January 01, 2015, 09:25:00 PM »
If you don't tell us what you actually did it is quite difficult to know what might have gone wrong.

Soda97

  • Contributor
  • ***
  • Posts: 69
  • Karma: 1
    • View Profile
Re: Find my iPhone
« Reply #28 on: January 10, 2015, 02:29:46 AM »
I followed Haddood's instruction too and got same result as Hiryu...

did apple blocked or something?

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #29 on: January 10, 2015, 08:43:20 AM »
Maybe try the original script that I posted and let us know if that works for you, with one device.
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7715
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Find my iPhone
« Reply #30 on: January 10, 2015, 09:24:14 AM »
If you want to post the actual command xml that you have tried we can try to spot any errors.  Otherwise we are just playing pin the tail on the donkey.  Except it is a lot less fun.

Soda97

  • Contributor
  • ***
  • Posts: 69
  • Karma: 1
    • View Profile
Re: Find my iPhone
« Reply #31 on: January 10, 2015, 10:07:53 AM »
I tried both script, same result.

Code: [Select]
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.1.2.7-->
<commandGroup open="True" name="iphone pager" enabled="True" prefix="" priority="0" requiredProcess="" description="">
  <command id="299" name="ipager" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>PY.ExecString</cmdType>
      <params>
        <param>pager("iCloud email","password")</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <phrase>Where is my eye phone?</phrase>
  </command>
  <command id="304" name="load python" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
    <action>
      <cmdType>PY.ExecFile</cmdType>
      <params>
        <param>PY\iphonePager.py</param>
      </params>
      <cmdRepeat>1</cmdRepeat>
    </action>
    <event>VC.Loaded</event>
  </command>
</commandGroup>
« Last Edit: January 10, 2015, 10:13:51 AM by Soda97 »

Soda97

  • Contributor
  • ***
  • Posts: 69
  • Karma: 1
    • View Profile
Re: Find my iPhone
« Reply #32 on: January 10, 2015, 10:18:11 AM »
from voxLog.txt

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #33 on: January 10, 2015, 10:35:37 AM »
Try replacing the original iPhonePager.py file with the attached.
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Soda97

  • Contributor
  • ***
  • Posts: 69
  • Karma: 1
    • View Profile
Re: Find my iPhone
« Reply #34 on: January 10, 2015, 11:00:53 AM »
same thing  :(

for the device number, do i start from 0 then 1 and 2 and so on until it works?

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #35 on: January 10, 2015, 11:32:36 AM »
I don't know, as that is Haddood's implementation, not mine. But it doesn't matter since the script no longer works.

I suspect it's because Apple has made some changes: http://thenextweb.com/apple/2014/09/01/this-could-be-the-apple-icloud-flaw-that-led-to-celebrity-photos-being-leaked/
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Soda97

  • Contributor
  • ***
  • Posts: 69
  • Karma: 1
    • View Profile
Re: Find my iPhone
« Reply #36 on: January 10, 2015, 11:39:19 AM »
Yea that's what I thought too  :(

At least people would now know this no longer works.

So thanks anyway.

nime5ter

  • Administrator
  • Hero Member
  • *****
  • Posts: 2012
  • Karma: 61
    • View Profile
    • Getting Started with VoxCommando
Re: Find my iPhone
« Reply #37 on: January 10, 2015, 11:50:25 AM »
If it's an important function for Apple people, someone could try posting an issue for the script developers at GitHub (link in the first post) to ask if the script works for them, and if not, if any updates are planned/possible.

EDIT: Based on the fact that even the official Apple Find My IPhone app only works on machines with iOS 8.0 or later, I think people can safely give up on the idea. https://itunes.apple.com/ca/app/find-my-iphone/id376101648?mt=8
« Last Edit: January 10, 2015, 12:07:03 PM by nime5ter »
TIPS: POST VC VERSION #. Explain what you want VC to do. Say what you've tried & what happened, or post a video demo. Attach VC log. Link to instructions followed.  Post your command (xml)

Haddood

  • $upporter
  • Hero Member
  • *****
  • Posts: 688
  • Karma: 22
    • View Profile
Re: Find my iPhone
« Reply #38 on: January 11, 2015, 02:14:37 AM »
I confirm the script stopped working a while ago, I thought it was on my side and never had the time to debug.  may be nime5ter is right and it is linked to leak happened ... so for the time being this is on hold till things get solved

P.S. I did not put a link in the Gems forum, since was not sure if this still works ... I will update the first post to warn users ...
When Voice command gets tough, use hand gestures